[U-Boot] Proposal to add NAND-boot support for Sunxi SPL
kaplan2539 at gmail.com
kaplan2539 at gmail.com
Fri May 22 04:23:26 CEST 2015
Hi Roy,
I could definitely use such a howto. I have applied the patches to the
current mainline u-boot head and try to boot my A13-OlinXino Wifi board in
FEL mode.
I can compile and boot into u-boot via FEL. However, I get these errors
when I have CONFIG_SPL_NAND_SUPPORT defined:
U-Boot SPL 2015.07-rc1-00276-g77792f9-dirty (May 21 2015 - 19:15:54)
DRAM: 512 MiB
Failed to set core voltage! Can't set CPU frequency
sunxi board_nand_init()
Nand initialised
Error: 1 ECC failures detected
Error: 512 ECC failures detected
This is my configs/A13-OLinuXino_defconfig looks like this:
CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2,AXP209_POWER,USB_EHCI,SYS_MAX_NAND_DEVICE=1,SYS_NAND_BASE=0x00"
CONFIG_NAND=y
CONFIG_SUNXI_NAND=y
CONFIG_SUNXI_DMA=y
CONFIG_CMD_NAND=y
CONFIG_SPL_NAND_SUPPORT=y
CONFIG_SPL=y
CONFIG_FDTFILE="sun5i-a13-olinuxino.dtb"
CONFIG_USB1_VBUS_PIN="PG11"
CONFIG_VIDEO_HDMI=n
CONFIG_VIDEO_VGA_VIA_LCD=y
CONFIG_VIDEO_VGA_VIA_LCD_FORCE_SYNC_ACTIVE_HIGH=y
# For use with the Olimex 7" LCD module, adjust timings for other
displays
# Set video-mode=sunxi:800x600-24 at 60,monitor=lcd in the env. to
enable
CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:16,ri:209,up:22,lo:22,hs:30,vs:1,sync:3,vmode:0"
CONFIG_VIDEO_LCD_POWER="AXP0-0"
CONFIG_VIDEO_LCD_BL_PWM="PB2"
CONFIG_ARM=y
CONFIG_ARCH_SUNXI=y
CONFIG_MACH_SUN5I=y
CONFIG_DRAM_CLK=408
CONFIG_DRAM_ZQ=123
CONFIG_DRAM_EMR1=0
CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-olinuxino"
I just found out in the sun5i-a13-olinuxino.dts file are no nand settings.
I guess I can find the information in the linux-sunxi 3.4 kernels fex file
for the olinuxio and need to convert to dts, correct?
I am happy about any hints / comments.
Thanks
Alex
On Thursday, May 21, 2015 at 11:08:24 AM UTC-7, Hans de Goede wrote:
>
> Hi Roy,
>
> On 21-05-15 15:59, Roy Spliet wrote:
> > The following patches take the work by Daniel Kochmánski, and make some
> > heavy modifications for readability and functionality, based on Boris
> > Brezillon's Linux driver. Tested on an Olimex Lime w/ A20.
> > Patches are sent as RFC. Open questions:
> > - Config options added are partially NAND-chip specific. Some options
> can
> > be autodetected based on the NAND ID, others require either
> brute-forcing
> > or config options like these. Do they belong in sunxi-common? Should
> > we make a Kconfig option for this? If bikeshedding is desired, are
> defines
> > in sunxi-common.h good enough for now?
> > - Style is mostly kernel-like. Satisfied?
> > - Daniel: do you think we can work from here?
> >
> > Please comment away!
>
> Cool stuff. Overall this looks good I'll reply with more detailed feedback
> to your individual patches, 2 questions:
>
> 1) Can you provide a quick howto (at developer level) on how to actually
> get the spl and u-boot into the nand, what I'm looking for is unstructions
> like this:
>
> a) Take this git repo + branch, build a kernel from it
> b) Look at this dts file for a nand settings example, adjust it for your
> board
> c) Once booted into the kernel using an updated dts you should have these
> block devices, dd spl to this one, and u-boot to this one.
>
> No more to go more detailed then that :)
>
> 2) What is the plan to add support for loading files from nand in u-boot
> proper,
> so that we can get (e.g.) extlinux.conf + kernel +dtb from a /boot on nand
> ?
>
> Regards,
>
> Hans
>
More information about the U-Boot
mailing list