aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx25
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-mx25')
-rw-r--r--arch/arm/mach-mx25/devices.c20
-rw-r--r--arch/arm/mach-mx25/devices.h1
-rw-r--r--arch/arm/mach-mx25/mx25pdk.c7
3 files changed, 28 insertions, 0 deletions
diff --git a/arch/arm/mach-mx25/devices.c b/arch/arm/mach-mx25/devices.c
index 9fdeea1c083b..dd4069725ef5 100644
--- a/arch/arm/mach-mx25/devices.c
+++ b/arch/arm/mach-mx25/devices.c
@@ -438,3 +438,23 @@ struct platform_device mx25_fec_device = {
438 .num_resources = ARRAY_SIZE(mx25_fec_resources), 438 .num_resources = ARRAY_SIZE(mx25_fec_resources),
439 .resource = mx25_fec_resources, 439 .resource = mx25_fec_resources,
440}; 440};
441
442static struct resource mxc_nand_resources[] = {
443 {
444 .start = MX25_NFC_BASE_ADDR,
445 .end = MX25_NFC_BASE_ADDR + 0x1fff,
446 .flags = IORESOURCE_MEM,
447 },
448 {
449 .start = MX25_INT_NANDFC,
450 .end = MX25_INT_NANDFC,
451 .flags = IORESOURCE_IRQ,
452 },
453};
454
455struct platform_device mxc_nand_device = {
456 .name = "mxc_nand",
457 .id = 0,
458 .num_resources = ARRAY_SIZE(mxc_nand_resources),
459 .resource = mxc_nand_resources,
460};
diff --git a/arch/arm/mach-mx25/devices.h b/arch/arm/mach-mx25/devices.h
index fe5420fcd11f..8f5530062b43 100644
--- a/arch/arm/mach-mx25/devices.h
+++ b/arch/arm/mach-mx25/devices.h
@@ -18,3 +18,4 @@ extern struct platform_device mxc_i2c_device0;
18extern struct platform_device mxc_i2c_device1; 18extern struct platform_device mxc_i2c_device1;
19extern struct platform_device mxc_i2c_device2; 19extern struct platform_device mxc_i2c_device2;
20extern struct platform_device mx25_fec_device; 20extern struct platform_device mx25_fec_device;
21extern struct platform_device mxc_nand_device;
diff --git a/arch/arm/mach-mx25/mx25pdk.c b/arch/arm/mach-mx25/mx25pdk.c
index 6f06089246eb..232f9caa7dd9 100644
--- a/arch/arm/mach-mx25/mx25pdk.c
+++ b/arch/arm/mach-mx25/mx25pdk.c
@@ -77,6 +77,12 @@ static void __init mx25pdk_fec_reset(void)
77 gpio_set_value(FEC_RESET_B_GPIO, 1); 77 gpio_set_value(FEC_RESET_B_GPIO, 1);
78} 78}
79 79
80static struct mxc_nand_platform_data mx25pdk_nand_board_info = {
81 .width = 1,
82 .hw_ecc = 1,
83 .flash_bbt = 1,
84};
85
80static void __init mx25pdk_init(void) 86static void __init mx25pdk_init(void)
81{ 87{
82 mxc_iomux_v3_setup_multiple_pads(mx25pdk_pads, 88 mxc_iomux_v3_setup_multiple_pads(mx25pdk_pads,
@@ -84,6 +90,7 @@ static void __init mx25pdk_init(void)
84 90
85 mxc_register_device(&mxc_uart_device0, &uart_pdata); 91 mxc_register_device(&mxc_uart_device0, &uart_pdata);
86 mxc_register_device(&mxc_usbh2, NULL); 92 mxc_register_device(&mxc_usbh2, NULL);
93 mxc_register_device(&mxc_nand_device, &mx25pdk_nand_board_info);
87 94
88 mx25pdk_fec_reset(); 95 mx25pdk_fec_reset();
89 mxc_register_device(&mx25_fec_device, &mx25_fec_pdata); 96 mxc_register_device(&mx25_fec_device, &mx25_fec_pdata);