1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-12-18 07:10:18 +02:00

drop GPIODEV platform code

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33825 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
blogic 2012-10-17 21:53:37 +00:00
parent 1be2e5ea11
commit b4260e22f3
19 changed files with 6 additions and 124 deletions

View File

@ -311,26 +311,6 @@ void __init adm5120_add_device_gpio_leds(unsigned num_leds,
platform_device_register(&adm5120_gpio_leds_device); platform_device_register(&adm5120_gpio_leds_device);
} }
/*
* GPIO device
*/
static struct resource adm5120_gpio_resource[] __initdata = {
{
.start = 0x3fffff,
},
};
void __init adm5120_add_device_gpio(u32 disable_mask)
{
if (adm5120_package_pqfp())
disable_mask |= 0xf0;
adm5120_gpio_resource[0].start &= ~disable_mask;
platform_device_register_simple("GPIODEV", -1,
adm5120_gpio_resource,
ARRAY_SIZE(adm5120_gpio_resource));
}
/* /*
* NAND flash * NAND flash
*/ */

View File

@ -13,8 +13,6 @@
#include <asm/mach-adm5120/prom/myloader.h> #include <asm/mach-adm5120/prom/myloader.h>
#define COMPEX_GPIO_DEV_MASK (1 << ADM5120_GPIO_PIN5)
static void switch_bank_gpio5(unsigned bank) static void switch_bank_gpio5(unsigned bank)
{ {
switch (bank) { switch (bank) {
@ -58,7 +56,5 @@ void __init compex_generic_setup(void)
adm5120_add_device_uart(0); adm5120_add_device_uart(0);
adm5120_add_device_uart(1); adm5120_add_device_uart(1);
adm5120_add_device_gpio(COMPEX_GPIO_DEV_MASK);
compex_mac_setup(); compex_mac_setup();
} }

View File

@ -13,8 +13,6 @@
#include <prom/admboot.h> #include <prom/admboot.h>
#define BR61XX_GPIO_DEV_MASK 0
#define BR61XX_CONFIG_OFFSET 0x8000 #define BR61XX_CONFIG_OFFSET 0x8000
#define BR61XX_CONFIG_SIZE 0x1000 #define BR61XX_CONFIG_SIZE 0x1000
@ -73,8 +71,6 @@ void __init br61xx_generic_setup(void)
adm5120_flash0_data.parts = br61xx_partitions; adm5120_flash0_data.parts = br61xx_partitions;
adm5120_add_device_flash(0); adm5120_add_device_flash(0);
adm5120_add_device_gpio(BR61XX_GPIO_DEV_MASK);
adm5120_add_device_uart(0); adm5120_add_device_uart(0);
adm5120_add_device_uart(1); adm5120_add_device_uart(1);

View File

@ -25,7 +25,6 @@
#include <asm/mach-adm5120/adm5120_defs.h> #include <asm/mach-adm5120/adm5120_defs.h>
#define EB214A_GPIO_DEV_MASK 0
#define EB214A_CONFIG_OFFSET 0x4000 #define EB214A_CONFIG_OFFSET 0x4000
#define EB214A_KEYS_POLL_INTERVAL 20 #define EB214A_KEYS_POLL_INTERVAL 20
@ -99,8 +98,6 @@ static void __init eb214a_setup(void)
adm5120_flash0_data.parts = eb214a_partitions; adm5120_flash0_data.parts = eb214a_partitions;
adm5120_add_device_flash(0); adm5120_add_device_flash(0);
adm5120_add_device_gpio(EB214A_GPIO_DEV_MASK);
adm5120_add_device_uart(0); adm5120_add_device_uart(0);
/* adm5120_add_device_uart(1); */ /* adm5120_add_device_uart(1); */

View File

@ -27,7 +27,6 @@ static void __init rb11x_setup(void)
rb1xx_add_device_nand(); rb1xx_add_device_nand();
adm5120_add_device_switch(1, rb11x_vlans); adm5120_add_device_switch(1, rb11x_vlans);
adm5120_add_device_gpio(0);
adm5120_add_device_gpio_leds(ARRAY_SIZE(rb11x_gpio_leds), adm5120_add_device_gpio_leds(ARRAY_SIZE(rb11x_gpio_leds),
rb11x_gpio_leds); rb11x_gpio_leds);
} }

View File

@ -32,7 +32,6 @@ static void __init rb133_setup(void)
rb1xx_add_device_nand(); rb1xx_add_device_nand();
adm5120_add_device_switch(3, rb133_vlans); adm5120_add_device_switch(3, rb133_vlans);
adm5120_add_device_gpio(0);
adm5120_add_device_gpio_leds(ARRAY_SIZE(rb133_gpio_leds), adm5120_add_device_gpio_leds(ARRAY_SIZE(rb133_gpio_leds),
rb133_gpio_leds); rb133_gpio_leds);
} }

View File

@ -28,7 +28,6 @@ static void __init rb133c_setup(void)
rb1xx_add_device_nand(); rb1xx_add_device_nand();
adm5120_add_device_switch(1, rb133c_vlans); adm5120_add_device_switch(1, rb133c_vlans);
adm5120_add_device_gpio(0);
adm5120_add_device_gpio_leds(ARRAY_SIZE(rb133c_gpio_leds), adm5120_add_device_gpio_leds(ARRAY_SIZE(rb133c_gpio_leds),
rb133c_gpio_leds); rb133c_gpio_leds);
} }

View File

@ -20,11 +20,6 @@
#define RB150_GPIO_NAND_ALE ADM5120_GPIO_P3L2 #define RB150_GPIO_NAND_ALE ADM5120_GPIO_P3L2
#define RB150_GPIO_RESET_BUTTON ADM5120_GPIO_PIN1 /* FIXME */ #define RB150_GPIO_RESET_BUTTON ADM5120_GPIO_PIN1 /* FIXME */
#define RB150_GPIO_DEV_MASK (1 << RB150_GPIO_NAND_READY \
| 1 << RB150_GPIO_NAND_NCE \
| 1 << RB150_GPIO_NAND_CLE \
| 1 << RB150_GPIO_NAND_ALE)
#define RB150_NAND_DELAY 100 #define RB150_NAND_DELAY 100
#define RB150_NAND_WRITE(v) \ #define RB150_NAND_WRITE(v) \
@ -127,7 +122,6 @@ static void __init rb150_setup(void)
rb1xx_generic_setup(); rb1xx_generic_setup();
rb150_add_device_nand(); rb150_add_device_nand();
adm5120_add_device_gpio(RB150_GPIO_DEV_MASK);
adm5120_add_device_gpio_leds(ARRAY_SIZE(rb150_gpio_leds), adm5120_add_device_gpio_leds(ARRAY_SIZE(rb150_gpio_leds),
rb150_gpio_leds); rb150_gpio_leds);
adm5120_add_device_switch(5, rb150_vlans); adm5120_add_device_switch(5, rb150_vlans);

View File

@ -11,10 +11,6 @@
#include "rb-1xx.h" #include "rb-1xx.h"
#define RB153_GPIO_DEV_MASK (1 << ADM5120_GPIO_PIN0 \
| 1 << ADM5120_GPIO_PIN3 \
| 1 << ADM5120_GPIO_PIN4)
static struct resource rb153_cf_resources[] __initdata = { static struct resource rb153_cf_resources[] __initdata = {
{ {
.name = "cf_membase", .name = "cf_membase",
@ -65,7 +61,6 @@ static void __init rb153_setup(void)
rb1xx_add_device_nand(); rb1xx_add_device_nand();
rb153_add_device_cf(); rb153_add_device_cf();
adm5120_add_device_gpio(RB153_GPIO_DEV_MASK);
adm5120_add_device_gpio_leds(ARRAY_SIZE(rb153_gpio_leds), adm5120_add_device_gpio_leds(ARRAY_SIZE(rb153_gpio_leds),
rb153_gpio_leds); rb153_gpio_leds);
adm5120_add_device_switch(5, rb153_vlans); adm5120_add_device_switch(5, rb153_vlans);

View File

@ -20,7 +20,6 @@ static void __init rb192_setup(void)
rb1xx_generic_setup(); rb1xx_generic_setup();
rb1xx_add_device_nand(); rb1xx_add_device_nand();
adm5120_add_device_gpio(0);
adm5120_add_device_switch(6, rb192_vlans); adm5120_add_device_switch(6, rb192_vlans);
} }

View File

@ -14,8 +14,6 @@
#include <prom/zynos.h> #include <prom/zynos.h>
#define P33X_GPIO_FLASH_A20 ADM5120_GPIO_PIN5 #define P33X_GPIO_FLASH_A20 ADM5120_GPIO_PIN5
#define P33X_GPIO_DEV_MASK (1 << P33X_GPIO_FLASH_A20)
static struct mtd_partition p33x_partitions[] = { static struct mtd_partition p33x_partitions[] = {
{ {
.name = "bootbase", .name = "bootbase",
@ -80,8 +78,6 @@ void __init p33x_generic_setup(void)
adm5120_add_device_uart(0); adm5120_add_device_uart(0);
adm5120_add_device_uart(1); adm5120_add_device_uart(1);
adm5120_add_device_gpio(P33X_GPIO_DEV_MASK);
adm5120_setup_eth_macs(bootbase_info.mac); adm5120_setup_eth_macs(bootbase_info.mac);
adm5120_add_device_switch(6, p33x_vlans); adm5120_add_device_switch(6, p33x_vlans);

View File

@ -66,7 +66,6 @@ extern void adm5120_add_device_usb(void) __init;
extern void adm5120_add_device_uart(unsigned id) __init; extern void adm5120_add_device_uart(unsigned id) __init;
extern void adm5120_add_device_nand(struct platform_nand_data *pdata) __init; extern void adm5120_add_device_nand(struct platform_nand_data *pdata) __init;
extern void adm5120_add_device_switch(unsigned num_ports, u8 *vlan_map) __init; extern void adm5120_add_device_switch(unsigned num_ports, u8 *vlan_map) __init;
extern void adm5120_add_device_gpio(u32 disable_mask) __init;
extern void adm5120_register_gpio_buttons(int id, extern void adm5120_register_gpio_buttons(int id,
unsigned poll_interval, unsigned poll_interval,
unsigned nbuttons, unsigned nbuttons,

View File

@ -2989,7 +2989,7 @@
+#endif +#endif
--- /dev/null --- /dev/null
+++ b/arch/mips/ar231x/devices.c +++ b/arch/mips/ar231x/devices.c
@@ -0,0 +1,173 @@ @@ -0,0 +1,168 @@
+#include <linux/kernel.h> +#include <linux/kernel.h>
+#include <linux/init.h> +#include <linux/init.h>
+#include <linux/serial.h> +#include <linux/serial.h>
@ -3151,11 +3151,6 @@
+ +
+static int __init ar231x_register_devices(void) +static int __init ar231x_register_devices(void)
+{ +{
+ static struct resource res = {
+ .start = 0xFFFFFFFF,
+ };
+
+ platform_device_register_simple("GPIODEV", 0, &res, 1);
+ ar5312_init_devices(); + ar5312_init_devices();
+ ar2315_init_devices(); + ar2315_init_devices();
+ +

View File

@ -31,26 +31,3 @@
+ return NULL; + return NULL;
+} +}
+EXPORT_SYMBOL(nvram_get); +EXPORT_SYMBOL(nvram_get);
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
@@ -381,3 +381,20 @@ static int __init bcm47xx_register_flash
return -1;
}
fs_initcall(bcm47xx_register_flash);
+
+static int __init bcm47xx_register_gpiodev(void)
+{
+ static struct resource res = {
+ .start = 0xFFFFFFFF,
+ };
+ struct platform_device *pdev;
+
+ pdev = platform_device_register_simple("GPIODEV", 0, &res, 1);
+ if (!pdev) {
+ printk(KERN_ERR "bcm47xx: GPIODEV init failed\n");
+ return -ENODEV;
+ }
+
+ return 0;
+}
+device_initcall(bcm47xx_register_gpiodev);

View File

@ -1,6 +1,6 @@
--- /dev/null --- /dev/null
+++ b/arch/arm/mach-cns3xxx/laguna.c +++ b/arch/arm/mach-cns3xxx/laguna.c
@@ -0,0 +1,936 @@ @@ -0,0 +1,931 @@
+/* +/*
+ * Gateworks Corporation Laguna Platform + * Gateworks Corporation Laguna Platform
+ * + *
@ -585,10 +585,6 @@
+/* +/*
+ * GPIO + * GPIO
+ */ + */
+static struct platform_device laguna_gpio_dev = {
+ .name = "GPIODEV",
+ .id = -1,
+};
+ +
+static struct gpio laguna_gpio_gw2391[] = { +static struct gpio laguna_gpio_gw2391[] = {
+ { 0, GPIOF_IN , "*GPS_PPS" }, + { 0, GPIOF_IN , "*GPS_PPS" },
@ -919,7 +915,6 @@
+ laguna_gpio_leds_data.num_leds = 2; + laguna_gpio_leds_data.num_leds = 2;
+ } + }
+ platform_device_register(&laguna_gpio_leds_device); + platform_device_register(&laguna_gpio_leds_device);
+ platform_device_register(&laguna_gpio_dev);
+ } else { + } else {
+ // Do some defaults here, not sure what yet + // Do some defaults here, not sure what yet
+ } + }

View File

@ -82,7 +82,7 @@
+subsys_initcall(cambria_pci_init); +subsys_initcall(cambria_pci_init);
--- /dev/null --- /dev/null
+++ b/arch/arm/mach-ixp4xx/cambria-setup.c +++ b/arch/arm/mach-ixp4xx/cambria-setup.c
@@ -0,0 +1,1006 @@ @@ -0,0 +1,992 @@
+/* +/*
+ * arch/arm/mach-ixp4xx/cambria-setup.c + * arch/arm/mach-ixp4xx/cambria-setup.c
+ * + *
@ -517,13 +517,6 @@
+ {131, GPIOF_IN, "DIO4" }, + {131, GPIOF_IN, "DIO4" },
+}; +};
+ +
+static struct platform_device cambria_gpio = {
+ .name = "GPIODEV",
+ .id = -1,
+ .num_resources = ARRAY_SIZE(cambria_gpio_resources),
+ .resource = cambria_gpio_resources,
+};
+
+static struct latch_led cambria_latch_leds[] = { +static struct latch_led cambria_latch_leds[] = {
+ { + {
+ .name = "ledA", /* green led */ + .name = "ledA", /* green led */
@ -683,7 +676,6 @@
+ (1 << 5) | (1 << 8) | (1 << 9) | (1 << 12); + (1 << 5) | (1 << 8) | (1 << 9) | (1 << 12);
+ cambria_gpio_resources[0].end = cambria_gpio_resources[0].start; + cambria_gpio_resources[0].end = cambria_gpio_resources[0].start;
+ +
+ platform_device_register(&cambria_gpio);
+ platform_device_register(&cambria_npec_device); + platform_device_register(&cambria_npec_device);
+ platform_device_register(&cambria_npea_device); + platform_device_register(&cambria_npea_device);
+} +}
@ -706,7 +698,6 @@
+ (1 << 5) | (1 << 8) | (1 << 9) | (1 << 12); + (1 << 5) | (1 << 8) | (1 << 9) | (1 << 12);
+ cambria_gpio_resources[0].end = cambria_gpio_resources[0].start; + cambria_gpio_resources[0].end = cambria_gpio_resources[0].start;
+ +
+ platform_device_register(&cambria_gpio);
+ platform_device_register(&cambria_optional_uart); + platform_device_register(&cambria_optional_uart);
+ platform_device_register(&cambria_npec_device); + platform_device_register(&cambria_npec_device);
+ platform_device_register(&cambria_npea_device); + platform_device_register(&cambria_npea_device);
@ -737,7 +728,6 @@
+ (1 << 19) | (1 << 20) | (1 << 24) | (1 << 25); + (1 << 19) | (1 << 20) | (1 << 24) | (1 << 25);
+ cambria_gpio_resources[0].end = cambria_gpio_resources[0].start; + cambria_gpio_resources[0].end = cambria_gpio_resources[0].start;
+ +
+ platform_device_register(&cambria_gpio);
+ platform_device_register(&cambria_optional_uart); + platform_device_register(&cambria_optional_uart);
+ +
+ platform_device_register(&cambria_npec_device); + platform_device_register(&cambria_npec_device);
@ -761,8 +751,6 @@
+ +
+static void __init cambria_gw2359_setup(void) +static void __init cambria_gw2359_setup(void)
+{ +{
+ platform_device_register(&cambria_gpio);
+
+#if defined(CONFIG_MVSWITCH_PHY) || defined(CONFIG_MVSWITCH_PHY_MODULE) +#if defined(CONFIG_MVSWITCH_PHY) || defined(CONFIG_MVSWITCH_PHY_MODULE)
+ /* The mvswitch driver has some hard-coded values which could + /* The mvswitch driver has some hard-coded values which could
+ * easily be turned into a platform resource if needed. For now they + * easily be turned into a platform resource if needed. For now they
@ -865,8 +853,6 @@
+ cambria_optional_uart.num_resources = 7, + cambria_optional_uart.num_resources = 7,
+ platform_device_register(&cambria_optional_uart); + platform_device_register(&cambria_optional_uart);
+ +
+ platform_device_register(&cambria_gpio);
+
+#if defined(CONFIG_MVSWITCH_PHY) || defined(CONFIG_MVSWITCH_PHY_MODULE) +#if defined(CONFIG_MVSWITCH_PHY) || defined(CONFIG_MVSWITCH_PHY_MODULE)
+ /* The mvswitch driver has some hard-coded values which could + /* The mvswitch driver has some hard-coded values which could
+ * easily be turned into a platform resource if needed. For now they + * easily be turned into a platform resource if needed. For now they

View File

@ -117,7 +117,7 @@
.name = "intrq", .name = "intrq",
.start = IRQ_IXP4XX_GPIO12, .start = IRQ_IXP4XX_GPIO12,
.end = IRQ_IXP4XX_GPIO12, .end = IRQ_IXP4XX_GPIO12,
@@ -133,21 +210,280 @@ static struct platform_device avila_pata @@ -133,21 +210,275 @@ static struct platform_device avila_pata
.resource = avila_pata_resources, .resource = avila_pata_resources,
}; };
@ -240,11 +240,6 @@
}; };
-static void __init avila_init(void) -static void __init avila_init(void)
+static struct platform_device avila_gpio_dev = {
+ .name = "GPIODEV",
+ .id = -1,
+};
+
+/* +/*
+ * Audio Devices + * Audio Devices
+ */ + */
@ -405,7 +400,7 @@
avila_pata_resources[0].start = IXP4XX_EXP_BUS_BASE(1); avila_pata_resources[0].start = IXP4XX_EXP_BUS_BASE(1);
avila_pata_resources[0].end = IXP4XX_EXP_BUS_END(1); avila_pata_resources[0].end = IXP4XX_EXP_BUS_END(1);
@@ -159,8 +495,274 @@ static void __init avila_init(void) @@ -159,8 +495,272 @@ static void __init avila_init(void)
avila_pata_data.cs1_cfg = IXP4XX_EXP_CS2; avila_pata_data.cs1_cfg = IXP4XX_EXP_CS2;
platform_device_register(&avila_pata); platform_device_register(&avila_pata);
@ -650,8 +645,6 @@
+ +
+ i2c_register_board_info(0, avila_i2c_board_info, + i2c_register_board_info(0, avila_i2c_board_info,
+ ARRAY_SIZE(avila_i2c_board_info)); + ARRAY_SIZE(avila_i2c_board_info));
+
+ platform_device_register(&avila_gpio_dev);
+} +}
+ +
+static int __init avila_model_setup(void) +static int __init avila_model_setup(void)

View File

@ -118,7 +118,7 @@
+subsys_initcall(tw2662_pci_init); +subsys_initcall(tw2662_pci_init);
--- /dev/null --- /dev/null
+++ b/arch/arm/mach-ixp4xx/tw2662-setup.c +++ b/arch/arm/mach-ixp4xx/tw2662-setup.c
@@ -0,0 +1,213 @@ @@ -0,0 +1,205 @@
+/* +/*
+ * arch/arm/mach-ixp4xx/tw2662-setup.c + * arch/arm/mach-ixp4xx/tw2662-setup.c
+ * + *
@ -185,13 +185,6 @@
+ }, + },
+}; +};
+ +
+static struct platform_device tw2662_gpio = {
+ .name = "GPIODEV",
+ .id = -1,
+ .num_resources = ARRAY_SIZE(tw2662_gpio_resources),
+ .resource = tw2662_gpio_resources,
+};
+
+static struct resource tw2662_uart_resources[] = { +static struct resource tw2662_uart_resources[] = {
+ { + {
+ .start = IXP4XX_UART1_BASE_PHYS, + .start = IXP4XX_UART1_BASE_PHYS,
@ -264,7 +257,6 @@
+static struct platform_device *tw2662_devices[] __initdata = { +static struct platform_device *tw2662_devices[] __initdata = {
+ &tw2662_flash, + &tw2662_flash,
+ &tw2662_uart, + &tw2662_uart,
+ &tw2662_gpio,
+ &tw2662_eth[0], + &tw2662_eth[0],
+ &tw2662_eth[1], + &tw2662_eth[1],
+}; +};

View File

@ -173,14 +173,9 @@ static struct platform_device ltq_gpio = {
.name = "ifxmips_gpio", .name = "ifxmips_gpio",
}; };
static struct platform_device ltq_gpiodev = {
.name = "GPIODEV",
};
void __init svip_register_gpio(void) void __init svip_register_gpio(void)
{ {
platform_device_register(&ltq_gpio); platform_device_register(&ltq_gpio);
platform_device_register(&ltq_gpiodev);
} }
/* MUX */ /* MUX */