Skip to contentSkip to conversation

u-boot preventing access to NAND chip on imx28evk board

U-Boot Bill 2 participants 6 messages Aug 13, 2012 – Aug 21, 2012

lore
Share & tools
lore

Bill

author
#0 lore raw

All,

I'm needing to access the NAND chip on the imx28evk board with the
Linux (Freescale Kernel - FSL). I've compiled a recent version of the mainstream u-boot with the NAND switches and U-boot works fine. The U-boot also allows me access to the NAND chip and also boots the FSL kernel just fine. However, once the kernel is running, it can not "see" the /dev/mtdX devices.

However, if I boot the *same* kernel directly (no U-boot - and
attach boot-stream to kernel) the FSL kernel works fine and can gets the /dev/mtdX etc devices. I tracked this down to a couple of differences that are output during the kernel booting process. I also can replicate this problem with no NAND chip in the socket. I can do this by using the script that comes with the imx28evk that is used for formatting the SDCard for booting. The mk_mx28_sd script writes the uboot, kernel, and rootfs to an SDcard depending on the parameters. So if I write the uboot to the card and boot the imx28 from uboot and network boot uImage I get the error. If I write the kernel to the card and boot the imx28 with it I get no error (Using the same kernel). Here are the steps

1. Setup card for kernel boot
- run mk_mx28_sd -b /dev/sdb (only writes kernel with bootstream on card)
- place card in imx28 and boot it
- the kernel (while booting) outputs these lines:
...
...
i.MX GPMI NFC
NFC: Version 1, 8-chip GPMI and BCH
Boot ROM: Version 1, Single-chip boot area, block mark swapping supported Scanning for NAND Flash chips...
No NAND device found.
gpmi-nfc gpmi-nfc.0: Chip scan failed
...
...

2. Setup card for uboot
-setup your host ubuntu so uboot can tftp your kernel -use *same* kernel from #1 (but use uImage) -run mk_mx28_sd -u -b /dev/sdb (only writes uboot with bootstream on card) -place card in imx28 and boot it -you may have to edit uboot parms to get your uImage from your host -Allow kernel to boot, it will output these lines:

...
i.MX GPMI NFC
NFC: Version 1, 8-chip GPMI and BCH
gpmi-nfc: probe of gpmi-nfc.0 failed with error 1 ...
...

So maybe U-boot does some things that prevents kernel from working or the kernel with the boot stream added on does the right things ?

Thanks,
Bill

#1 lore raw
Quoted 8 lines · Bill

All,

I'm needing to access the NAND chip on the imx28evk board with the Linux
(Freescale Kernel - FSL). I've compiled a recent version of the mainstream u-boot with the NAND switches and U-boot works fine. The U-boot also allows me access to the NAND chip and also boots the FSL kernel just fine. However, once the kernel is running, it can not "see" the /dev/mtdX devices.

Quoted 11 lines

However, if I boot the *same* kernel directly (no U-boot - and attach
boot-stream to kernel) the FSL kernel works fine and can gets the /dev/mtdX etc devices. I tracked this down to a couple of differences that are output during the kernel booting process. I also can replicate this problem with no NAND chip in the socket. I can do this by using the script that comes with the imx28evk that is used for formatting the SDCard for booting. The mk_mx28_sd script writes the uboot, kernel, and rootfs to an SDcard depending on the parameters. So if I write the uboot to the card and boot the imx28 from uboot and network boot uImage I get the error. If I write the kernel to the card and boot the imx28 with it I get no error (Using the same kernel). Here are the steps

Last week I tried accessing NAND using U-boot mainline + kernel mainline and it worked fine.

Can you try it?

Haven't tested with FSL 2.6.35 kernel though.

Regards,

Fabio Estevam

author
#2 lore raw

[U-Boot] Configure U-boot to output to LCD on imx28evk board

In reply to Bill

All,

Is it possible to configure u-boot output (console) to the LCD on
the imx28evk board? I see in the u-boot configuration options switches for LCD support: CONFIG_LCD. However, I don't see an LCD display that matches the one on the imx28evk?

Thanks,
Bill

#3 lore raw

[U-Boot] Configure U-boot to output to LCD on imx28evk board

Hi Bill,

Quoted 6 lines · Bill

All,

Is it possible to configure u-boot output (console) to the LCD on the
imx28evk board? I see in the u-boot configuration options switches for LCD
support: CONFIG_LCD. However, I don't see an LCD display that matches the one on the imx28evk?

Yes, this is possible, but currently there is no mxs framebuffer support in U-boot.

Regards,

Fabio Estevam

author
#4 lore raw

[U-Boot] Configure U-boot to output to LCD on imx28evk board

Thanks. I'm a bit fuzzy on Linux graphics. So you mention that this is possible - but what criteria?
Does this mean all I need to do is configure U-boot? Or you mention that there is no mxs framebuffer support. Is there a way around this in u-boot? Or can I add a patch for mxs framebuffer support in U-boot?

Quoted 15 lines · Fabio Estevam

Hi Bill,

Quoted 6 lines · Bill

All,

Is it possible to configure u-boot output (console) to the LCD on the
imx28evk board? I see in the u-boot configuration options switches for LCD
support: CONFIG_LCD. However, I don't see an LCD display that matches the one on the imx28evk?

Yes, this is possible, but currently there is no mxs framebuffer support in U-boot.

Regards,

Fabio Estevam

Signature · 8 lines
William (Bill) L. Sousan, Ph.D.
(w) 402.331.4977 ext. 4002
bsousan at techsi.com
Technical Support Inc.
11253 John Galt Blvd
Omaha, NE 68137
www.techsi.com
8(a) SDB Certified, ISO 9001:2008
#5 lore raw

[U-Boot] Configure U-boot to output to LCD on imx28evk board

Quoted 5 lines · Bill

Thanks. I'm a bit fuzzy on Linux graphics. So you mention that this is possible - but what criteria?
Does this mean all I need to do is configure U-boot? Or you mention that there is no mxs framebuffer support. Is there a way around this in u-boot? Or can I add a patch for mxs framebuffer support in U-boot?

Yes, you need to create a patch to add mxs framebuffer support in U-boot. You can look at the linux kernel as a reference (drivers/video/mxsfb.c) and port it into U-boot.

There are other i.mx processors (mx31, mx51, mx53) that do support framebuffer in U-boot. You can look at drivers/video/mxc_ipuv3_fb.c in U-boot for a reference for mx51/mx53 implementation.

The LCD controller on mxs is different so that is why you will need to create a new driver for it.

Regards,

Fabio Estevam