Skip to contentSkip to conversation

MXS NAND: DMA read error

U-Boot Lauri Hintsala 2 participants 8 messages Apr 17, 2012

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

Hello,

I'm trying to compile latest U-Boot to mx28evk (rev D) with NAND support. U-Boot boots up but NAND chip is not detected and DMA read error is popped up.

Here is console output:

U-Boot 2012.04-rc2-dirty (Apr 17 2012 - 10:58:50)

Freescale i.MX28 family at 454 MHz

DRAM:  128 MiB
NAND:  MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: Error sending command
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: Error sending command
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)

No NAND device found!!!
0 MiB

I did following changes to mainline code. Did I forget something?

drivers/mtd/nand/mxs_nand.c +0 -0
index 9c95811..93e54da 100644
@@ -465,7 +465,7 @@ static void mxs_nand_read_buf(struct mtd_info *mtd, 

uint8_t *buf, int length)
/* Execute the DMA chain. */
ret = mxs_dma_go(channel);
if (ret) {
- printf("MXS NAND: DMA read error\n");
+ printf("MXS NAND: DMA read error (%d)\n", ret);
goto rtn;
}

include/configs/mx28evk.h +9 -0
index 02f3366..a0bd2db 100644
@@ -148,6 +148,15 @@
  #endif
 
  /*
+ * NAND
+ */
+#define CONFIG_CMD_NAND
+#define CONFIG_NAND_MXS
+#define CONFIG_SYS_MAX_NAND_DEVICE	1
+#define CONFIG_SYS_NAND_BASE		0x60000000
+#define CONFIG_SYS_NAND_5_ADDR_CYCLE
+
+/*
   * Ethernet on SOC (FEC)
   */
  #ifdef	CONFIG_CMD_NET

BR,
Lauri Hintsala

#1 lore raw

Dear Lauri Hintsala,

Quoted 5 lines

Hello,

I'm trying to compile latest U-Boot to mx28evk (rev D) with NAND support. U-Boot boots up but NAND chip is not detected and DMA read error is popped up.

MX28 EVK has no NAND, right?

Otherwise, check if you have APBH DMA enabled in your include/configs/mx28evk.h

btw Fabio, can you please ping me on jabber?

Quoted 62 lines

Here is console output:

U-Boot 2012.04-rc2-dirty (Apr 17 2012 - 10:58:50)

Freescale i.MX28 family at 454 MHz

DRAM:  128 MiB
NAND:  MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: Error sending command
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: Error sending command
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)
MXS NAND: DMA read error (-110)

No NAND device found!!!
0 MiB

I did following changes to mainline code. Did I forget something?

drivers/mtd/nand/mxs_nand.c +1 -1
index 9c95811..93e54da 100644
@@ -465,7 +465,7 @@ static void mxs_nand_read_buf(struct mtd_info *mtd,
 uint8_t *buf, int length)
  	/* Execute the DMA chain. */
  	ret = mxs_dma_go(channel);
  	if (ret) {
-		printf("MXS NAND: DMA read error\n");
+		printf("MXS NAND: DMA read error (%d)\n", ret);
  		goto rtn;
  	}
include/configs/mx28evk.h +9 -0
index 02f3366..a0bd2db 100644
@@ -148,6 +148,15 @@
  #endif
 
  /*
+ * NAND
+ */
+#define CONFIG_CMD_NAND
+#define CONFIG_NAND_MXS
+#define CONFIG_SYS_MAX_NAND_DEVICE	1
+#define CONFIG_SYS_NAND_BASE		0x60000000
+#define CONFIG_SYS_NAND_5_ADDR_CYCLE
+
+/*
   * Ethernet on SOC (FEC)
   */
  #ifdef	CONFIG_CMD_NET
Quoted 2 lines

BR,
Lauri Hintsala

Best regards,
Marek Vasut

#2 lore raw

Hi Marek,

Quoted 5 lines · Marek Vasut
Quoted 3 lines

I'm trying to compile latest U-Boot to mx28evk (rev D) with NAND support. U-Boot boots up but NAND chip is not detected and DMA read error is popped up.

MX28 EVK has no NAND, right?

MX28 EVK has NAND slot and I have installed NAND chip on it. I'm using same chip with older pached U-Boot and Linux and chip is working fine with them.

Quoted 1 line

Otherwise, check if you have APBH DMA enabled in your include/configs/mx28evk.h

Config file include/configs/mx28evk.h has following line.

#define CONFIG_APBH_DMA

BR,
Lauri

#3 lore raw

Dear Lauri Hintsala,

Quoted 13 lines

Hi Marek,

Quoted 5 lines · Marek Vasut
Quoted 3 lines

I'm trying to compile latest U-Boot to mx28evk (rev D) with NAND support. U-Boot boots up but NAND chip is not detected and DMA read error is popped up.

MX28 EVK has no NAND, right?

MX28 EVK has NAND slot and I have installed NAND chip on it. I'm using same chip with older pached U-Boot and Linux and chip is working fine with them.

Quoted 7 lines
Quoted 2 lines

Otherwise, check if you have APBH DMA enabled in your include/configs/mx28evk.h

Config file include/configs/mx28evk.h has following line.

#define CONFIG_APBH_DMA

And you have dcache and icache disabled ?

Quoted 3 lines

BR,
Lauri

Best regards,
Marek Vasut

#4 lore raw
Quoted 14 lines · Marek Vasut
Quoted 14 lines · Marek Vasut
Quoted 5 lines
Quoted 3 lines

I'm trying to compile latest U-Boot to mx28evk (rev D) with NAND support. U-Boot boots up but NAND chip is not detected and DMA read error is popped up.

MX28 EVK has no NAND, right?

MX28 EVK has NAND slot and I have installed NAND chip on it. I'm using same chip with older pached U-Boot and Linux and chip is working fine with them.

Quoted 2 lines

Otherwise, check if you have APBH DMA enabled in your include/configs/mx28evk.h

Quoted 6 lines
Quoted 4 lines

Config file include/configs/mx28evk.h has following line.

#define CONFIG_APBH_DMA

And you have dcache and icache disabled ?

Yes, they seem to be disabled:

#define CONFIG_SYS_ICACHE_OFF
#define CONFIG_SYS_DCACHE_OFF

I'm using latest U-Boot and default mx28evk.h config:
http://git.denx.de/?p=u-boot.git;a=blob;f=include/configs/mx28evk.h;h=02f3366ed263ff66fe3b9b2089ec95ef461a92c0;hb=HEAD

I have added only NAND related lines I sent in first message.

BR,
Lauri

#5 lore raw

Dear Lauri Hintsala,

Quoted 23 lines · Marek Vasut
Quoted 11 lines
Quoted 11 lines · Marek Vasut
Quoted 5 lines
Quoted 3 lines

I'm trying to compile latest U-Boot to mx28evk (rev D) with NAND support. U-Boot boots up but NAND chip is not detected and DMA read error is popped up.

MX28 EVK has no NAND, right?

MX28 EVK has NAND slot and I have installed NAND chip on it. I'm using same chip with older pached U-Boot and Linux and chip is working fine with them.

Quoted 8 lines
Quoted 6 lines
Quoted 2 lines

Otherwise, check if you have APBH DMA enabled in your include/configs/mx28evk.h

Config file include/configs/mx28evk.h has following line.

#define CONFIG_APBH_DMA

And you have dcache and icache disabled ?

Yes, they seem to be disabled:

Quoted 8 lines

#define CONFIG_SYS_ICACHE_OFF
#define CONFIG_SYS_DCACHE_OFF

I'm using latest U-Boot and default mx28evk.h config:
http://git.denx.de/?p=u-boot.git;a=blob;f=include/configs/mx28evk.h;h=02f33
66ed263ff66fe3b9b2089ec95ef461a92c0;hb=HEAD

I have added only NAND related lines I sent in first message.

Lauri, as much as I'd love to help you, MX28EVK is Fabio's board. So let's see what he has to say ;-)

Quoted 3 lines

BR,
Lauri

Best regards,
Marek Vasut

#6 lore raw

Hi Marek,

Quoted 2 lines · Marek Vasut

Lauri, as much as I'd love to help you, MX28EVK is Fabio's board. So let's see what he has to say ;-)

I found the solution myself. The issue was caused by the missing iomuxing. I'll do the patch...

Thank you for your friendly and fast responses.

BR,
Lauri

#7 lore raw

Dear Lauri Hintsala,

Quoted 8 lines

Hi Marek,

Quoted 2 lines · Marek Vasut

Lauri, as much as I'd love to help you, MX28EVK is Fabio's board. So let's see what he has to say ;-)

I found the solution myself. The issue was caused by the missing iomuxing. I'll do the patch...

Can you please submit a patch?

Quoted 1 line

Thank you for your friendly and fast responses.

You're welcome ;-)

Quoted 2 lines

BR,
Lauri

Best regards,
Marek Vasut