diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-08 18:15:31 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-08 18:15:31 -0500 |
commit | 9f04012c58a32756bbbd0239c4144e835048aa4d (patch) | |
tree | e5423a1941338b9dd17a82b370cc6c252e0ae1f1 /arch/arm/mach-pxa/poodle.c | |
parent | 329f7dba5f7dc3bc9a30ad00cf373d2e83115aa1 (diff) | |
parent | 72274c9e24d58d09489d37e732545e52395da270 (diff) |
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Diffstat (limited to 'arch/arm/mach-pxa/poodle.c')
-rw-r--r-- | arch/arm/mach-pxa/poodle.c | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/arch/arm/mach-pxa/poodle.c b/arch/arm/mach-pxa/poodle.c index ad6a13f95a62..eef3de26ad37 100644 --- a/arch/arm/mach-pxa/poodle.c +++ b/arch/arm/mach-pxa/poodle.c | |||
@@ -65,6 +65,27 @@ struct platform_device poodle_scoop_device = { | |||
65 | .resource = poodle_scoop_resources, | 65 | .resource = poodle_scoop_resources, |
66 | }; | 66 | }; |
67 | 67 | ||
68 | static void poodle_pcmcia_init(void) | ||
69 | { | ||
70 | /* Setup default state of GPIO outputs | ||
71 | before we enable them as outputs. */ | ||
72 | GPSR(GPIO48_nPOE) = GPIO_bit(GPIO48_nPOE) | | ||
73 | GPIO_bit(GPIO49_nPWE) | GPIO_bit(GPIO50_nPIOR) | | ||
74 | GPIO_bit(GPIO51_nPIOW) | GPIO_bit(GPIO52_nPCE_1) | | ||
75 | GPIO_bit(GPIO53_nPCE_2); | ||
76 | |||
77 | pxa_gpio_mode(GPIO48_nPOE_MD); | ||
78 | pxa_gpio_mode(GPIO49_nPWE_MD); | ||
79 | pxa_gpio_mode(GPIO50_nPIOR_MD); | ||
80 | pxa_gpio_mode(GPIO51_nPIOW_MD); | ||
81 | pxa_gpio_mode(GPIO55_nPREG_MD); | ||
82 | pxa_gpio_mode(GPIO56_nPWAIT_MD); | ||
83 | pxa_gpio_mode(GPIO57_nIOIS16_MD); | ||
84 | pxa_gpio_mode(GPIO52_nPCE_1_MD); | ||
85 | pxa_gpio_mode(GPIO53_nPCE_2_MD); | ||
86 | pxa_gpio_mode(GPIO54_pSKTSEL_MD); | ||
87 | } | ||
88 | |||
68 | static struct scoop_pcmcia_dev poodle_pcmcia_scoop[] = { | 89 | static struct scoop_pcmcia_dev poodle_pcmcia_scoop[] = { |
69 | { | 90 | { |
70 | .dev = &poodle_scoop_device.dev, | 91 | .dev = &poodle_scoop_device.dev, |
@@ -74,6 +95,14 @@ static struct scoop_pcmcia_dev poodle_pcmcia_scoop[] = { | |||
74 | }, | 95 | }, |
75 | }; | 96 | }; |
76 | 97 | ||
98 | static struct scoop_pcmcia_config poodle_pcmcia_config = { | ||
99 | .devs = &poodle_pcmcia_scoop[0], | ||
100 | .num_devs = 1, | ||
101 | .pcmcia_init = poodle_pcmcia_init, | ||
102 | }; | ||
103 | |||
104 | EXPORT_SYMBOL(poodle_scoop_device); | ||
105 | |||
77 | 106 | ||
78 | /* LoCoMo device */ | 107 | /* LoCoMo device */ |
79 | static struct resource locomo_resources[] = { | 108 | static struct resource locomo_resources[] = { |
@@ -268,8 +297,7 @@ static void __init poodle_init(void) | |||
268 | pxa_set_mci_info(&poodle_mci_platform_data); | 297 | pxa_set_mci_info(&poodle_mci_platform_data); |
269 | pxa_set_ficp_info(&poodle_ficp_platform_data); | 298 | pxa_set_ficp_info(&poodle_ficp_platform_data); |
270 | 299 | ||
271 | scoop_num = 1; | 300 | platform_scoop_config = &poodle_pcmcia_config; |
272 | scoop_devs = &poodle_pcmcia_scoop[0]; | ||
273 | 301 | ||
274 | ret = platform_add_devices(devices, ARRAY_SIZE(devices)); | 302 | ret = platform_add_devices(devices, ARRAY_SIZE(devices)); |
275 | if (ret) { | 303 | if (ret) { |