summaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpio-iop.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* gpio: iop: fix devm_ioremap_resource() return value checkingBartlomiej Zolnierkiewicz2014-03-261-0/+2
| | | | | | | | | | | | | | devm_ioremap_resource() returns a pointer to the remapped memory or an ERR_PTR() encoded error code on failure. Fix the check inside iop3xx_gpio_probe() accordingly. Cc: Lennert Buytenhek <kernel@wantstofly.org> Cc: Mikael Pettersson <mikpe@it.uu.se> Cc: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Acked-by: Alexandre Courbot <acourbot@nvidia.com> Acked-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* ARM: plat-iop: pass physical base for GPIOLinus Walleij2013-09-201-1/+1
| | | | | | | | | | | | This alters the IOP platforms to pass a physical base for their GPIO blocks and alters the driver to remap it when probing instead of relying on the virtual addresses to be used. Cc: Lennert Buytenhek <kernel@wantstofly.org> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Mikael Pettersson <mikpe@it.uu.se> Tested-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* gpio: iop: use readl/writel accessorsLinus Walleij2013-09-201-8/+16
| | | | | | | | | | | Use the standard 32bit I/O accessors instead of just assigning addresses. Cc: Lennert Buytenhek <kernel@wantstofly.org> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Mikael Pettersson <mikpe@it.uu.se> Tested-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* ARM: plat-iop: instantiate GPIO from platform deviceLinus Walleij2013-09-201-2/+34
| | | | | | | | | | | | | | | | | | | This converts the IOP32x and IOP33x platforms to pass their base address offset by a resource attached to a platform device instead of using static offset macros implicitly passed through <linux/gpio.h> including <mach/gpio.h>. Delete the local <mach/gpio.h> and <asm/hardware/iop3xx-gpio.h> headers and remove the selection of NEED_MACH_GPIO_H. Pass the virtual address as a resource in the platform device at this point for bisectability, next patch will pass the physical address as is custom. Cc: Lennert Buytenhek <kernel@wantstofly.org> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Mikael Pettersson <mikpe@it.uu.se> Tested-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* ARM: plat-iop: remove custom complex GPIO implementationLinus Walleij2013-09-201-6/+3
| | | | | | | | | | | The kernel will now only use gpiolib to access GPIOs, so remove the complex GPIO flag and the custom implementation. Cc: Lennert Buytenhek <kernel@wantstofly.org> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Mikael Pettersson <mikpe@it.uu.se> Tested-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* gpio: decouple the IOP GPIO driver from platformLinus Walleij2013-09-201-2/+2
| | | | | | | | | | | | | | This removes the only dependence between the IOP GPIO driver and the GENERIC_GPIO header in <mach/gpio.h> and its common implementation in the <asm/*> namespace by copying the one constant it is using into the driver file. Cc: Lennert Buytenhek <kernel@wantstofly.org> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Mikael Pettersson <mikpe@it.uu.se> Tested-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* ARM: plat-iop: move the GPIO driver to drivers/gpioLinus Walleij2013-09-201-0/+93
Move the IOP GPIO driver to live with its siblings in the GPIO subsystem. Cc: Lennert Buytenhek <kernel@wantstofly.org> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Mikael Pettersson <mikpe@it.uu.se> Tested-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>