Hello.
I'm trying to understand how to build u-boot for my board. I have Nanopi Neo Core + Mini Shield and want to buid u-boot loader for it. I have some problems, maybe someone can help me)
I decide to try extlinux.conf file create boot menu.
First of all i got current version of u-boot (https://github.com/u-boot/u-boot) and configure it with Nanopi Neo default config:
make nanopi_neo_defconfig
i have next output in console:
U-Boot SPL 2022.07-rc3-00073-g4fe629d2e8-dirty (May 29 2022 - 23:11:36 +0300)
DRAM: 512 MiB
Trying to boot from MMC1
U-Boot 2022.07-rc3-00073-g4fe629d2e8-dirty (May 29 2022 - 23:11:36 +0300) Allwinner Technology
CPU: Allwinner H3 (SUN8I 1680)
Model: FriendlyARM NanoPi NEO
DRAM: 512 MiB
Core: 63 devices, 17 uclasses, devicetree: separate
WDT: Not starting watchdog@1c20ca0
MMC: mmc@1c0f000: 0, mmc@1c11000: 1
Loading Environment from FAT... *** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Net: phy interface1
eth0: ethernet@1c30000
starting USB...
Bus usb@1c1a000: USB EHCI 1.00
Bus usb@1c1a400: USB OHCI 1.0
Bus usb@1c1d000: USB EHCI 1.00
Bus usb@1c1d400: USB OHCI 1.0
scanning bus usb@1c1a000 for devices... 1 USB Device(s) found
scanning bus usb@1c1a400 for devices... 1 USB Device(s) found
scanning bus usb@1c1d000 for devices... EHCI timed out on TD - token=0xd8d80
pause about 20-30 sec
Device NOT ready
Request Sense returned 00 00 00
data abort
pc : [<5ffaaffe>] lr : [<5ffa1daf>]
reloc pc : [<4a020ffe>] lr : [<4a017daf>]
sp : 58a9bee8 ip : 0000001c fp : 5ffdf00e
r10: 006f656e r9 : 5bf69ec0 r8 : 58a9bf40
r7 : 00000000 r6 : 5ffe4758 r5 : e59ff014 r4 : 00000000
r3 : 00000000 r2 : 00000001 r1 : 00000000 r0 : 00000000
Flags: nZcv IRQs off FIQs off Mode SVC_32 (T)
Code: 4604 f8d3 a03c 460f (f8da) 3000
Resetting CPU ...
resetting ...
then i try to buid sunxi version of bootloader (https://github.com/linux-sunxi/u-boot-sunxi) i have next output:
U-Boot SPL 2019.01-rc3-g829407b58f (May 29 2022 - 23:34:45 +0300)
DRAM: 512 MiB
Trying to boot from MMC1
U-Boot 2019.01-rc3-g829407b58f (May 29 2022 - 23:34:45 +0300) Allwinner Technology
CPU: Allwinner H3 (SUN8I 1680)
Model: FriendlyElec NanoPi H3 Core
DRAM: 512 MiB
MMC: MMC0: 01c20060 = 0x4540, 01c20088 = 0x8151000b, 01c202c0 = 0x4540
MMC2: 01c20060 = 0x4540, 01c20090 = 0x80500000, 01c202c0 = 0x4540
mmc@1c0f000: 0, mmc@1c11000: 1
Loading Environment from FAT... *** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Net: eth-1: ethernet@1c30000
starting USB...
USB0: USB EHCI 1.00
scanning bus 0 for devices... EHCI timed out on TD - token=0xd8d80
pause for 20-30 sec
Device NOT ready
Request Sense returned 04 44 81
2 USB Device(s) found
scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found /extlinux/extlinux.conf
Retrieving file: /extlinux/extlinux.conf
290 bytes read in 3 ms (93.8 KiB/s)
Boot menu
1: Default
2: Local boot script (boot.scr)
Enter choice:
here it works, but i still have big pause.
Maybe someone can explain why i have this pause and how properly crteate bootloader for my board? i want to understand this process and build it by myself.