aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx2/devices.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-mx2/devices.c')
-rw-r--r--arch/arm/mach-mx2/devices.c46
1 files changed, 40 insertions, 6 deletions
diff --git a/arch/arm/mach-mx2/devices.c b/arch/arm/mach-mx2/devices.c
index bd0559d5933..af121f5ab71 100644
--- a/arch/arm/mach-mx2/devices.c
+++ b/arch/arm/mach-mx2/devices.c
@@ -190,38 +190,72 @@ struct platform_device mxc_wdt = {
190 .resource = mxc_wdt_resources, 190 .resource = mxc_wdt_resources,
191}; 191};
192 192
193static struct resource mxc_w1_master_resources[] = {
194 {
195 .start = OWIRE_BASE_ADDR,
196 .end = OWIRE_BASE_ADDR + SZ_4K - 1,
197 .flags = IORESOURCE_MEM,
198 },
199};
200
201struct platform_device mxc_w1_master_device = {
202 .name = "mxc_w1",
203 .id = 0,
204 .num_resources = ARRAY_SIZE(mxc_w1_master_resources),
205 .resource = mxc_w1_master_resources,
206};
207
208static struct resource mxc_nand_resources[] = {
209 {
210 .start = NFC_BASE_ADDR,
211 .end = NFC_BASE_ADDR + 0xfff,
212 .flags = IORESOURCE_MEM
213 }, {
214 .start = MXC_INT_NANDFC,
215 .end = MXC_INT_NANDFC,
216 .flags = IORESOURCE_IRQ
217 },
218};
219
220struct platform_device mxc_nand_device = {
221 .name = "mxc_nand",
222 .id = 0,
223 .num_resources = ARRAY_SIZE(mxc_nand_resources),
224 .resource = mxc_nand_resources,
225};
226
193/* GPIO port description */ 227/* GPIO port description */
194static struct mxc_gpio_port imx_gpio_ports[] = { 228static struct mxc_gpio_port imx_gpio_ports[] = {
195 [0] = { 229 [0] = {
196 .chip.label = "gpio-0", 230 .chip.label = "gpio-0",
197 .irq = MXC_INT_GPIO, 231 .irq = MXC_INT_GPIO,
198 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 0), 232 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 0),
199 .virtual_irq_start = MXC_MAX_INT_LINES, 233 .virtual_irq_start = MXC_GPIO_IRQ_START,
200 }, 234 },
201 [1] = { 235 [1] = {
202 .chip.label = "gpio-1", 236 .chip.label = "gpio-1",
203 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 1), 237 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 1),
204 .virtual_irq_start = MXC_MAX_INT_LINES + 32, 238 .virtual_irq_start = MXC_GPIO_IRQ_START + 32,
205 }, 239 },
206 [2] = { 240 [2] = {
207 .chip.label = "gpio-2", 241 .chip.label = "gpio-2",
208 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 2), 242 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 2),
209 .virtual_irq_start = MXC_MAX_INT_LINES + 64, 243 .virtual_irq_start = MXC_GPIO_IRQ_START + 64,
210 }, 244 },
211 [3] = { 245 [3] = {
212 .chip.label = "gpio-3", 246 .chip.label = "gpio-3",
213 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 3), 247 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 3),
214 .virtual_irq_start = MXC_MAX_INT_LINES + 96, 248 .virtual_irq_start = MXC_GPIO_IRQ_START + 96,
215 }, 249 },
216 [4] = { 250 [4] = {
217 .chip.label = "gpio-4", 251 .chip.label = "gpio-4",
218 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 4), 252 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 4),
219 .virtual_irq_start = MXC_MAX_INT_LINES + 128, 253 .virtual_irq_start = MXC_GPIO_IRQ_START + 128,
220 }, 254 },
221 [5] = { 255 [5] = {
222 .chip.label = "gpio-5", 256 .chip.label = "gpio-5",
223 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 5), 257 .base = (void*)(AIPI_BASE_ADDR_VIRT + 0x15000 + 0x100 * 5),
224 .virtual_irq_start = MXC_MAX_INT_LINES + 160, 258 .virtual_irq_start = MXC_GPIO_IRQ_START + 160,
225 } 259 }
226}; 260};
227 261