diff options
Diffstat (limited to 'arch/arm/mach-pxa/colibri-pxa3xx.c')
-rw-r--r-- | arch/arm/mach-pxa/colibri-pxa3xx.c | 52 |
1 files changed, 48 insertions, 4 deletions
diff --git a/arch/arm/mach-pxa/colibri-pxa3xx.c b/arch/arm/mach-pxa/colibri-pxa3xx.c index ea34e34f8cd8..efebaf4d734d 100644 --- a/arch/arm/mach-pxa/colibri-pxa3xx.c +++ b/arch/arm/mach-pxa/colibri-pxa3xx.c | |||
@@ -25,6 +25,7 @@ | |||
25 | #include <mach/colibri.h> | 25 | #include <mach/colibri.h> |
26 | #include <mach/mmc.h> | 26 | #include <mach/mmc.h> |
27 | #include <mach/pxafb.h> | 27 | #include <mach/pxafb.h> |
28 | #include <mach/pxa3xx_nand.h> | ||
28 | 29 | ||
29 | #include "generic.h" | 30 | #include "generic.h" |
30 | #include "devices.h" | 31 | #include "devices.h" |
@@ -95,10 +96,13 @@ static void colibri_pxa3xx_mci_exit(struct device *dev, void *data) | |||
95 | } | 96 | } |
96 | 97 | ||
97 | static struct pxamci_platform_data colibri_pxa3xx_mci_platform_data = { | 98 | static struct pxamci_platform_data colibri_pxa3xx_mci_platform_data = { |
98 | .detect_delay = 20, | 99 | .detect_delay = 20, |
99 | .ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34, | 100 | .ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34, |
100 | .init = colibri_pxa3xx_mci_init, | 101 | .init = colibri_pxa3xx_mci_init, |
101 | .exit = colibri_pxa3xx_mci_exit, | 102 | .exit = colibri_pxa3xx_mci_exit, |
103 | .gpio_card_detect = -1, | ||
104 | .gpio_card_ro = -1, | ||
105 | .gpio_power = -1, | ||
102 | }; | 106 | }; |
103 | 107 | ||
104 | void __init colibri_pxa3xx_init_mmc(mfp_cfg_t *pins, int len, int detect_pin) | 108 | void __init colibri_pxa3xx_init_mmc(mfp_cfg_t *pins, int len, int detect_pin) |
@@ -154,3 +158,43 @@ void __init colibri_pxa3xx_init_lcd(int bl_pin) | |||
154 | } | 158 | } |
155 | #endif | 159 | #endif |
156 | 160 | ||
161 | #if defined(CONFIG_MTD_NAND_PXA3xx) || defined(CONFIG_MTD_NAND_PXA3xx_MODULE) | ||
162 | static struct mtd_partition colibri_nand_partitions[] = { | ||
163 | { | ||
164 | .name = "bootloader", | ||
165 | .offset = 0, | ||
166 | .size = SZ_512K, | ||
167 | .mask_flags = MTD_WRITEABLE, /* force read-only */ | ||
168 | }, | ||
169 | { | ||
170 | .name = "kernel", | ||
171 | .offset = MTDPART_OFS_APPEND, | ||
172 | .size = SZ_4M, | ||
173 | .mask_flags = MTD_WRITEABLE, /* force read-only */ | ||
174 | }, | ||
175 | { | ||
176 | .name = "reserved", | ||
177 | .offset = MTDPART_OFS_APPEND, | ||
178 | .size = SZ_1M, | ||
179 | .mask_flags = MTD_WRITEABLE, /* force read-only */ | ||
180 | }, | ||
181 | { | ||
182 | .name = "fs", | ||
183 | .offset = MTDPART_OFS_APPEND, | ||
184 | .size = MTDPART_SIZ_FULL, | ||
185 | }, | ||
186 | }; | ||
187 | |||
188 | static struct pxa3xx_nand_platform_data colibri_nand_info = { | ||
189 | .enable_arbiter = 1, | ||
190 | .keep_config = 1, | ||
191 | .parts = colibri_nand_partitions, | ||
192 | .nr_parts = ARRAY_SIZE(colibri_nand_partitions), | ||
193 | }; | ||
194 | |||
195 | void __init colibri_pxa3xx_init_nand(void) | ||
196 | { | ||
197 | pxa3xx_set_nand_info(&colibri_nand_info); | ||
198 | } | ||
199 | #endif | ||
200 | |||