X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/4d6e8198995599f4e82c09561bffc08c97cf092c..977f78fc3c9b74a4ce659c83ca4c98974480f056:/target/linux/rdc/patches-2.6.32/002-rdc321x_gpio.patch?ds=inline diff --git a/target/linux/rdc/patches-2.6.32/002-rdc321x_gpio.patch b/target/linux/rdc/patches-2.6.32/002-rdc321x_gpio.patch index e83d27ef8..42ad6aa64 100644 --- a/target/linux/rdc/patches-2.6.32/002-rdc321x_gpio.patch +++ b/target/linux/rdc/patches-2.6.32/002-rdc321x_gpio.patch @@ -8,11 +8,9 @@ Changes from v2: - use the pci_dev pointer passed as platform data - replaced rdc321x_pci_{read,write} -Index: linux-2.6.32.10/drivers/gpio/Kconfig -=================================================================== ---- linux-2.6.32.10.orig/drivers/gpio/Kconfig 2010-03-15 16:52:04.000000000 +0100 -+++ linux-2.6.32.10/drivers/gpio/Kconfig 2010-04-28 11:39:02.000000000 +0200 -@@ -196,6 +196,14 @@ +--- a/drivers/gpio/Kconfig ++++ b/drivers/gpio/Kconfig +@@ -196,6 +196,14 @@ config GPIO_LANGWELL help Say Y here to support Intel Moorestown platform GPIO. @@ -27,19 +25,15 @@ Index: linux-2.6.32.10/drivers/gpio/Kconfig comment "SPI GPIO expanders:" config GPIO_MAX7301 -Index: linux-2.6.32.10/drivers/gpio/Makefile -=================================================================== ---- linux-2.6.32.10.orig/drivers/gpio/Makefile 2010-03-15 16:52:04.000000000 +0100 -+++ linux-2.6.32.10/drivers/gpio/Makefile 2010-04-28 11:39:17.000000000 +0200 -@@ -19,3 +19,4 @@ +--- a/drivers/gpio/Makefile ++++ b/drivers/gpio/Makefile +@@ -19,3 +19,4 @@ obj-$(CONFIG_GPIO_XILINX) += xilinx_gpio obj-$(CONFIG_GPIO_BT8XX) += bt8xxgpio.o obj-$(CONFIG_GPIO_VR41XX) += vr41xx_giu.o obj-$(CONFIG_GPIO_WM831X) += wm831x-gpio.o +obj-$(CONFIG_GPIO_RDC321X) += rdc321x-gpio.o -Index: linux-2.6.32.10/drivers/gpio/rdc321x-gpio.c -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.32.10/drivers/gpio/rdc321x-gpio.c 2010-04-28 11:39:02.000000000 +0200 +--- /dev/null ++++ b/drivers/gpio/rdc321x-gpio.c @@ -0,0 +1,245 @@ +/* + * RDC321x GPIO driver @@ -115,7 +109,7 @@ Index: linux-2.6.32.10/drivers/gpio/rdc321x-gpio.c + gpch->data_reg[reg] &= ~(1 << (gpio & 0x1f)); + + pci_write_config_dword(gpch->sb_pdev, -+ reg ? gpch->reg1_data_base : gpch->reg2_data_base, ++ reg ? gpch->reg2_data_base : gpch->reg1_data_base, + gpch->data_reg[reg]); +} + @@ -177,7 +171,7 @@ Index: linux-2.6.32.10/drivers/gpio/rdc321x-gpio.c + struct rdc321x_gpio *rdc321x_gpio_dev; + struct rdc321x_gpio_pdata *pdata; + -+ pdata = pdev->dev.platform_data; ++ pdata = platform_get_drvdata(pdev); + if (!pdata) { + dev_err(&pdev->dev, "no platform data supplied\n"); + return -ENODEV; @@ -189,7 +183,7 @@ Index: linux-2.6.32.10/drivers/gpio/rdc321x-gpio.c + return -ENOMEM; + } + -+ r = platform_get_resource_byname(pdev, IORESOURCE_MEM, "gpio-reg1"); ++ r = platform_get_resource_byname(pdev, IORESOURCE_IO, "gpio-reg1"); + if (!r) { + dev_err(&pdev->dev, "failed to get gpio-reg1 resource\n"); + err = -ENODEV; @@ -201,7 +195,7 @@ Index: linux-2.6.32.10/drivers/gpio/rdc321x-gpio.c + rdc321x_gpio_dev->reg1_ctrl_base = r->start; + rdc321x_gpio_dev->reg1_data_base = r->start + 0x4; + -+ r = platform_get_resource_byname(pdev, IORESOURCE_MEM, "gpio-reg2"); ++ r = platform_get_resource_byname(pdev, IORESOURCE_IO, "gpio-reg2"); + if (!r) { + dev_err(&pdev->dev, "failed to get gpio-reg2 resource\n"); + err = -ENODEV;