driver: replace dev_request_mem_region with dev_request_mem_resource
dev_request_mem_region doesn't work properly one some SoCs on which PTR_ERR() values clash with valid return values from dev_request_mem_region. Replace them with dev_request_mem_resource where possible. This patch has been generated with the following semantic patch: // <smpl> @@ expression d; expression n; expression io; identifier func; @@ func(...) { +struct resource *iores; <+... -io = dev_request_mem_region(d, n); -if (IS_ERR(io)) { +iores = dev_request_mem_resource(d, n); +if (IS_ERR(iores)) { ... - return PTR_ERR(io); -} + return PTR_ERR(iores); +} +io = IOMEM(iores->start); ...+> } @@ expression d; expression n; expression io; identifier func; @@ func(...) { +struct resource *iores; <+... -io = dev_request_mem_region(d, n); -if (IS_ERR(io)) { +iores = dev_request_mem_resource(d, n); +if (IS_ERR(iores)) - return PTR_ERR(io); -} + return PTR_ERR(iores); +io = IOMEM(iores->start); ...+> } @@ expression d; expression n; expression io; identifier func; @@ func(...) { +struct resource *iores; <+... -io = dev_request_mem_region(d, n); -if (IS_ERR(io)) { - ret = PTR_ERR(io); +iores = dev_request_mem_resource(d, n); +if (IS_ERR(iores)) { + ret = PTR_ERR(iores); ... } +io = IOMEM(iores->start); ...+> } @@ expression d; expression n; expression io; identifier func; @@ func(...) { +struct resource *iores; <+... -io = dev_request_mem_region(d, n); +iores = dev_request_mem_resource(d, n); +if (IS_ERR(iores)) + return PTR_ERR(iores); +io = IOMEM(iores->start); ...+> } @@ identifier func; @@ func(...) { <+... struct resource *iores; -struct resource *iores; ...+> } // </smpl> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
WIP_next-LS
master
next
stable/v2017.05
stable/v2017.06
stable/v2017.07
stable/v2017.11
stable/v2018.07
stable/v2018.09
stable/v2018.12
v2020.07.0
v2020.06.0
v2020.05.0
v2020.04.0
v2020.03.0
v2020.02.0
v2020.01.0
v2019.12.0
v2019.11.0
v2019.10.0
v2019.09.0
v2019.08.1
v2019.08.0
v2019.07.0
v2019.06.1
v2019.06.0
v2019.05.0
v2019.04.0
v2019.03.0
v2019.02.0
v2019.01.0
v2018.12.0
v2018.11.0
v2018.10.0
v2018.09.1
v2018.09.0
v2018.08.1
v2018.08.0
v2018.07.2
v2018.07.1
v2018.07.0
v2018.06.0
v2018.05.0
v2018.04.0
v2018.03.0
v2018.02.0
v2018.01.0
v2017.12.0
v2017.11.0
v2017.10.0
v2017.09.0
v2017.08.0
v2017.07.1
v2017.07.0
v2017.06.2
v2017.06.1
v2017.06.0
v2017.05.4
v2017.05.3
v2017.05.2
v2017.05.1
v2017.05.0
v2017.04.0
v2017.03.0
v2017.02.0
v2017.01.0
v2016.11.0
v2016.10.0
v2016.09.0
v2016.08.0
v2016.07.0
v2016.06.0
v2016.05.0
v2016.04.0
|
---|
|
arch/arm/mach-at91/sam9_smc.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/clk-imx1.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/clk-imx21.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/clk-imx25.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/clk-imx27.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/clk-imx31.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/clk-imx35.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/clk-imx5.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/clk-imx6.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/clk-imx6sx.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/clocksource.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/esdctl.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/iim.c |
---|
Too large (Show diff)
|
arch/arm/mach-imx/ocotp.c |
---|
Too large (Show diff)
|
arch/arm/mach-mxs/ocotp.c |
---|
Too large (Show diff)
|
arch/arm/mach-tegra/tegra20-pmc.c |
---|
Too large (Show diff)
|
arch/arm/mach-tegra/tegra20-timer.c |
---|
Too large (Show diff)
|
arch/arm/mach-zynq/clk-zynq7000.c |
---|
Too large (Show diff)
|
arch/mips/mach-ar231x/ar231x_reset.c |
---|
Too large (Show diff)
|
drivers/ata/ahci.c |
---|
Too large (Show diff)
|
drivers/ata/intf_platform_ide.c |
---|
Too large (Show diff)
|
drivers/ata/pata-imx.c |
---|
Too large (Show diff)
|
drivers/ata/sata-imx.c |
---|
Too large (Show diff)
|
drivers/bus/imx-weim.c |
---|
Too large (Show diff)
|
drivers/clk/clk-ar933x.c |
---|
Too large (Show diff)
|
drivers/clk/mvebu/common.c |
---|
Too large (Show diff)
|
drivers/clk/mvebu/corediv.c |
---|
Too large (Show diff)
|
drivers/clk/mxs/clk-imx23.c |
---|
Too large (Show diff)
|
drivers/clk/mxs/clk-imx28.c |
---|
Too large (Show diff)
|
drivers/clk/socfpga.c |
---|
Too large (Show diff)
|
drivers/clk/tegra/clk-tegra124.c |
---|
Too large (Show diff)
|
drivers/clk/tegra/clk-tegra20.c |
---|
Too large (Show diff)
|
drivers/clk/tegra/clk-tegra30.c |
---|
Too large (Show diff)
|
drivers/clocksource/arm_smp_twd.c |
---|
Too large (Show diff)
|
drivers/clocksource/bcm2835.c |
---|
Too large (Show diff)
|
drivers/clocksource/clps711x.c |
---|
Too large (Show diff)
|
drivers/clocksource/digic.c |
---|
Too large (Show diff)
|
drivers/clocksource/mvebu.c |
---|
Too large (Show diff)
|
drivers/clocksource/nomadik.c |
---|
Too large (Show diff)
|
drivers/clocksource/orion.c |
---|
Too large (Show diff)
|
drivers/clocksource/uemd.c |
---|
Too large (Show diff)
|
drivers/dma/apbh_dma.c |
---|
Too large (Show diff)
|
drivers/firmware/socfpga.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-ath79.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-bcm2835.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-clps711x.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-davinci.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-digic.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-dw.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-imx.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-jz4740.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-malta-fpga-i2c.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-omap.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-orion.c |
---|
Too large (Show diff)
|
drivers/gpio/gpio-tegra.c |
---|
Too large (Show diff)
|
drivers/i2c/busses/i2c-at91.c |
---|
Too large (Show diff)
|
drivers/i2c/busses/i2c-designware.c |
---|
Too large (Show diff)
|
drivers/i2c/busses/i2c-imx.c |
---|
Too large (Show diff)
|
drivers/i2c/busses/i2c-mv64xxx.c |
---|
Too large (Show diff)
|
drivers/i2c/busses/i2c-omap.c |
---|
Too large (Show diff)
|
drivers/i2c/busses/i2c-tegra.c |
---|
Too large (Show diff)
|
drivers/i2c/busses/i2c-versatile.c |
---|
Too large (Show diff)
|
drivers/input/imx_keypad.c |
---|
Too large (Show diff)
|
drivers/mci/atmel_mci.c |
---|
Too large (Show diff)
|
drivers/mci/dw_mmc.c |
---|
Too large (Show diff)
|
drivers/mci/imx-esdhc.c |
---|
Too large (Show diff)
|
drivers/mci/imx.c |
---|
Too large (Show diff)
|
drivers/mci/mci-bcm2835.c |
---|
Too large (Show diff)
|
drivers/mci/mxs.c |
---|
Too large (Show diff)
|
drivers/mci/omap_hsmmc.c |
---|
Too large (Show diff)
|
drivers/mci/pxamci.c |
---|
Too large (Show diff)
|
drivers/mci/s3c.c |
---|
Too large (Show diff)
|
drivers/mci/tegra-sdmmc.c |
---|
Too large (Show diff)
|
drivers/misc/sram.c |
---|
Too large (Show diff)
|
drivers/mtd/devices/docg3.c |
---|
Too large (Show diff)
|
drivers/mtd/devices/mtdram.c |
---|
Too large (Show diff)
|
drivers/mtd/nand/atmel_nand.c |
---|
Too large (Show diff)
|
drivers/mtd/nand/nand_denali_dt.c |
---|
Too large (Show diff)
|
drivers/mtd/nand/nand_imx.c |
---|
Too large (Show diff)
|
drivers/mtd/nand/nand_mrvl_nfc.c |
---|
Too large (Show diff)
|
drivers/mtd/nand/nand_mxs.c |
---|
Too large (Show diff)
|
drivers/mtd/nand/nand_omap_gpmc.c |
---|
Too large (Show diff)
|
drivers/mtd/nand/nand_orion.c |
---|
Too large (Show diff)
|
drivers/mtd/nand/nand_s3c24xx.c |
---|
Too large (Show diff)
|
drivers/mtd/nor/cfi_flash.c |
---|
Too large (Show diff)
|
drivers/mtd/spi-nor/cadence-quadspi.c |
---|
Too large (Show diff)
|
drivers/net/altera_tse.c |
---|
Too large (Show diff)
|
drivers/net/ar231x.c |
---|
Too large (Show diff)
|
drivers/net/arc_emac.c |
---|
Too large (Show diff)
|
drivers/net/cpsw.c |
---|
Too large (Show diff)
|
drivers/net/cs8900.c |
---|
Too large (Show diff)
|
drivers/net/davinci_emac.c |
---|
Too large (Show diff)
|
drivers/net/designware.c |
---|
Too large (Show diff)
|
drivers/net/dm9k.c |
---|
Too large (Show diff)
|
drivers/net/ethoc.c |
---|
Too large (Show diff)
|
drivers/net/fec_imx.c |
---|
Too large (Show diff)
|
drivers/net/fec_mpc5200.c |
---|
Too large (Show diff)
|
drivers/net/ks8851_mll.c |
---|
Too large (Show diff)
|
drivers/net/macb.c |
---|
Too large (Show diff)
|
drivers/net/smc91111.c |
---|
Too large (Show diff)
|
drivers/net/smc911x.c |
---|
Too large (Show diff)
|
drivers/net/xgmac.c |
---|
Too large (Show diff)
|
drivers/pci/pci-imx6.c |
---|
Too large (Show diff)
|
drivers/pinctrl/imx-iomux-v2.c |
---|
Too large (Show diff)
|
drivers/pinctrl/imx-iomux-v3.c |
---|
Too large (Show diff)
|
drivers/pinctrl/mvebu/armada-370.c |
---|
Too large (Show diff)
|
drivers/pinctrl/mvebu/armada-xp.c |
---|
Too large (Show diff)
|
drivers/pinctrl/mvebu/dove.c |
---|
Too large (Show diff)
|
drivers/pinctrl/mvebu/kirkwood.c |
---|
Too large (Show diff)
|
drivers/pinctrl/pinctrl-single.c |
---|
Too large (Show diff)
|
drivers/pinctrl/pinctrl-tegra-xusb.c |
---|
Too large (Show diff)
|
drivers/pinctrl/pinctrl-tegra20.c |
---|
Too large (Show diff)
|
drivers/pinctrl/pinctrl-tegra30.c |
---|
Too large (Show diff)
|
drivers/pwm/pwm-imx.c |
---|
Too large (Show diff)
|
drivers/pwm/pwm-mxs.c |
---|
Too large (Show diff)
|
drivers/pwm/pxa_pwm.c |
---|
Too large (Show diff)
|
drivers/rtc/rtc-jz4740.c |
---|
Too large (Show diff)
|
drivers/serial/serial_altera.c |
---|
Too large (Show diff)
|
drivers/serial/serial_altera_jtag.c |
---|
Too large (Show diff)
|
drivers/serial/serial_ar933x.c |
---|
Too large (Show diff)
|
drivers/serial/serial_auart.c |
---|
Too large (Show diff)
|
drivers/serial/serial_cadence.c |
---|
Too large (Show diff)
|
drivers/serial/serial_digic.c |
---|
Too large (Show diff)
|
drivers/serial/serial_imx.c |
---|
Too large (Show diff)
|
drivers/serial/serial_mpc5xxx.c |
---|
Too large (Show diff)
|
drivers/serial/serial_netx.c |
---|
Too large (Show diff)
|
drivers/serial/serial_ns16550.c |
---|
Too large (Show diff)
|
drivers/serial/serial_pl010.c |
---|
Too large (Show diff)
|
drivers/serial/serial_pxa.c |
---|
Too large (Show diff)
|
drivers/serial/serial_s3c.c |
---|
Too large (Show diff)
|
drivers/serial/stm-serial.c |
---|
Too large (Show diff)
|
drivers/spi/altera_spi.c |
---|
Too large (Show diff)
|
drivers/spi/ath79_spi.c |
---|
Too large (Show diff)
|
drivers/spi/atmel_spi.c |
---|
Too large (Show diff)
|
drivers/spi/imx_spi.c |
---|
Too large (Show diff)
|
drivers/spi/mvebu_spi.c |
---|
Too large (Show diff)
|
drivers/spi/mxs_spi.c |
---|
Too large (Show diff)
|
drivers/spi/omap3_spi.c |
---|
Too large (Show diff)
|
drivers/usb/gadget/at91_udc.c |
---|
Too large (Show diff)
|
drivers/usb/gadget/pxa27x_udc.c |
---|
Too large (Show diff)
|
drivers/usb/host/ehci-atmel.c |
---|
Too large (Show diff)
|
drivers/usb/host/ehci-hcd.c |
---|
Too large (Show diff)
|
drivers/usb/host/ohci-hcd.c |
---|
Too large (Show diff)
|
drivers/usb/host/xhci-hcd.c |
---|
Too large (Show diff)
|
drivers/usb/imx/chipidea-imx.c |
---|
Too large (Show diff)
|
drivers/usb/imx/imx-usb-misc.c |
---|
Too large (Show diff)
|
drivers/usb/imx/imx-usb-phy.c |
---|
Too large (Show diff)
|
drivers/usb/musb/musb_dsps.c |
---|
Too large (Show diff)
|
drivers/usb/musb/phy-am335x-control.c |
---|
Too large (Show diff)
|
drivers/usb/musb/phy-am335x.c |
---|
Too large (Show diff)
|
drivers/video/atmel_lcdfb_core.c |
---|
Too large (Show diff)
|
drivers/video/imx-ipu-fb.c |
---|
Too large (Show diff)
|
drivers/video/imx-ipu-v3/imx-hdmi.c |
---|
Too large (Show diff)
|
drivers/video/imx-ipu-v3/ipu-common.c |
---|
Too large (Show diff)
|
drivers/video/imx.c |
---|
Too large (Show diff)
|
drivers/video/pxa.c |
---|
Too large (Show diff)
|
drivers/video/s3c24xx.c |
---|
Too large (Show diff)
|
drivers/video/stm.c |
---|
Too large (Show diff)
|
drivers/watchdog/davinci_wdt.c |
---|
Too large (Show diff)
|
drivers/watchdog/im28wd.c |
---|
Too large (Show diff)
|
drivers/watchdog/imxwd.c |
---|
Too large (Show diff)
|
drivers/watchdog/jz4740.c |
---|
Too large (Show diff)
|
drivers/watchdog/omap_wdt.c |
---|
Too large (Show diff)
|