From: Felipe Balbi <[EMAIL PROTECTED]>

Later patch will come to use it in davinci_nand.c and get
rid of a define there. In DM355, the base is different, so
better to apply this patch before adding support for DM355
nand chip.

Signed-off-by: Felipe Balbi <[EMAIL PROTECTED]>
---
 arch/arm/mach-davinci/board-dm644x-evm.c |   19 +++++++++++++------
 arch/arm/mach-davinci/board-sffsdr.c     |   19 +++++++++++++------
 2 files changed, 26 insertions(+), 12 deletions(-)

diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c 
b/arch/arm/mach-davinci/board-dm644x-evm.c
index be0e856..db6a28b 100644
--- a/arch/arm/mach-davinci/board-dm644x-evm.c
+++ b/arch/arm/mach-davinci/board-dm644x-evm.c
@@ -43,6 +43,7 @@
 
 #define DAVINCI_CFC_ATA_BASE             0x01C66000
 
+#define DAVINCI_ASYNC_EMIF_CONTROL_BASE   0x01e00000
 #define DAVINCI_ASYNC_EMIF_DATA_CE0_BASE  0x02000000
 #define DAVINCI_ASYNC_EMIF_DATA_CE1_BASE  0x04000000
 #define DAVINCI_ASYNC_EMIF_DATA_CE2_BASE  0x06000000
@@ -118,10 +119,16 @@ static struct flash_platform_data 
davinci_evm_nandflash_data = {
        .nr_parts       = ARRAY_SIZE(davinci_evm_nandflash_partition),
 };
 
-static struct resource davinci_evm_nandflash_resource = {
-       .start          = DAVINCI_ASYNC_EMIF_DATA_CE0_BASE,
-       .end            = DAVINCI_ASYNC_EMIF_DATA_CE0_BASE + SZ_16M - 1,
-       .flags          = IORESOURCE_MEM,
+static struct resource davinci_evm_nandflash_resource[] = {
+       {
+               .start          = DAVINCI_ASYNC_EMIF_DATA_CE0_BASE,
+               .end            = DAVINCI_ASYNC_EMIF_DATA_CE0_BASE + SZ_16M - 1,
+               .flags          = IORESOURCE_MEM,
+       }, {
+               .start          = DAVINCI_ASYNC_EMIF_CONTROL_BASE,
+               .end            = DAVINCI_ASYNC_EMIF_CONTROL_BASE + SZ_4K - 1,
+               .flags          = IORESOURCE_MEM,
+       },
 };
 
 static struct platform_device davinci_evm_nandflash_device = {
@@ -130,8 +137,8 @@ static struct platform_device davinci_evm_nandflash_device 
= {
        .dev            = {
                .platform_data  = &davinci_evm_nandflash_data,
        },
-       .num_resources  = 1,
-       .resource       = &davinci_evm_nandflash_resource,
+       .num_resources  = ARRAY_SIZE(davinci_evm_nandflash_resource),
+       .resource       = davinci_evm_nandflash_resource,
 };
 
 static u64 davinci_fb_dma_mask = DMA_32BIT_MASK;
diff --git a/arch/arm/mach-davinci/board-sffsdr.c 
b/arch/arm/mach-davinci/board-sffsdr.c
index a9f1627..9dab21d 100644
--- a/arch/arm/mach-davinci/board-sffsdr.c
+++ b/arch/arm/mach-davinci/board-sffsdr.c
@@ -54,6 +54,7 @@
 #include <mach/serial.h>
 #include <mach/psc.h>
 
+#define DAVINCI_ASYNC_EMIF_CONTROL_BASE   0x01e00000
 #define DAVINCI_ASYNC_EMIF_DATA_CE0_BASE  0x02000000
 
 struct mtd_partition davinci_sffsdr_nandflash_partition[] = {
@@ -82,10 +83,16 @@ static struct flash_platform_data 
davinci_sffsdr_nandflash_data = {
        .nr_parts       = ARRAY_SIZE(davinci_sffsdr_nandflash_partition),
 };
 
-static struct resource davinci_sffsdr_nandflash_resource = {
-       .start          = DAVINCI_ASYNC_EMIF_DATA_CE0_BASE,
-       .end            = DAVINCI_ASYNC_EMIF_DATA_CE0_BASE + SZ_16M - 1,
-       .flags          = IORESOURCE_MEM,
+static struct resource davinci_sffsdr_nandflash_resource[] = {
+       {
+               .start          = DAVINCI_ASYNC_EMIF_DATA_CE0_BASE,
+               .end            = DAVINCI_ASYNC_EMIF_DATA_CE0_BASE + SZ_16M - 1,
+               .flags          = IORESOURCE_MEM,
+       }, {
+               .start          = DAVINCI_ASYNC_EMIF_CONTROL_BASE,
+               .end            = DAVINCI_ASYNC_EMIF_CONTROL_BASE + SZ_4K - 1,
+               .flags          = IORESOURCE_MEM,
+       },
 };
 
 static struct platform_device davinci_sffsdr_nandflash_device = {
@@ -94,8 +101,8 @@ static struct platform_device 
davinci_sffsdr_nandflash_device = {
        .dev            = {
                .platform_data  = &davinci_sffsdr_nandflash_data,
        },
-       .num_resources  = 1,
-       .resource       = &davinci_sffsdr_nandflash_resource,
+       .num_resources  = ARRAY_SIZE(davinci_sffsdr_nandflash_resource),
+       .resource       = davinci_sffsdr_nandflash_resource,
 };
 
 /* Get Ethernet address from kernel boot params */
-- 
1.6.0.4.617.g2baf1


_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to