-
Notifications
You must be signed in to change notification settings - Fork 3
Home
u-boot for Allwinner A10
sunxi Default branch. Most up to date. Supports booting from MMC only.
lichee/* Unmodified mirrors of original Allwinner sources
wip/* Work in progress temporary feature branches
You need a suitable gcc ARM Linux GNUEABI toolchain installed and added to your PATH.
Then compile u-boot by running
make sun4i CROSS_COMPILE=arm-none-linux-gnueabi-
or alternatively depending on how your toolchain is configured
make sun4i CROSS_COMPILE=arm-linux-gnueabi-
A10 boots the SPL loader from block 8. This then loads actual u-boot from block 32 onwards, counted in 1KB blocks.
dd if=spl/sun4i-spl.bin of=/dev/sdc bs=1024 seek=8
dd if=u-boot.bin of=/dev/sdc bs=1024 seek=32
You also need to partition the card to store system.bin, uImage, boot.scr (optoinal) and rootfs partition there. First partition should start at sector 2048 to leave sufficient space for uboot & environment.
This version of u-boot supports boot.scr, and will look for it in the first partition FAT /boot.scr or extX /boot.scr or extX /boot/boot.scr. boot.scr contains your needed uboot commands for loading script.bin, kernel. initrd (optional), setting kernel parameters and bootig.
If no boot.scr is found then it will fall back to load script.bin & kernel uImage from the first partition in FAT format
fatload mmc 0 0x43000000 script.bin; fatload mmc 0 0x48000000 ${kernel}; bootm 0x48000000
console=ttyS0,115200
root=/dev/mmcblk0p2
panicarg=10
extraargs=
loglevel=8
setargs=setenv bootargs console=${console} root=${root} loglevel=${loglevel} ${panicarg} ${extraargs}
kernel=uImage
boot.scr=if fatload mmc 0 0x44000000 boot.scr || ext2load mmc 0 0x44000000 boot.scr || ext2load mmc 0 0x44000000 boot/boot.scr; then source 0x44000000; fi; true
boot_mmc=fatload mmc 0 0x43000000 script.bin; fatload mmc 0 0x48000000 ${kernel}; bootm 0x48000000
bootcmd=run boot.scr setargs boot_mmc