I am getting a syntax error when I try to load multiple dtbo files.
It works properly when I load only BB-UART4-00A0.dtbo by adding the
following lines:
setenv fdt_buffer 0x60000; \
load mmc 0:1 ${rdaddr} /lib/firmware/BB-UART4-00A0.dtbo; \
When I add multiple dtbo files as you have shown in the example I get a
syntax error.
uEnv.txt:-
rdaddr=0x88080000
initrd_high=0xffffffff
fdt_high=0xffffffff
loadxrd=echo debug: [/boot/initrd.img-${uname_r}] ... ; load mmc 0:1
${rdaddr} /boot/initrd.img-${uname_r}; setenv rdsize ${filesize}
loaduEnvtxt=load mmc 0:1 ${loadaddr} /boot/uEnv.txt ; env import -t
${loadaddr} ${filesize};
check_dtb=if test -n ${dtb}; then setenv fdtfile ${dtb};fi;
check_uboot_overlays=if test -n ${enable_uboot_overlays}; then setenv
enable_uboot_overlays ;fi;
loadall=run loaduEnvtxt; run check_dtb; run check_uboot_overlays; run
loadxrd;
rootpart=0:2
flagpart=0:4
bootdir=/boot
bootfile=vmlinuz-4.14.71-ti-r80
console=ttyO0,115200n8
fdtaddr=0x88000000
fdtfile=am335x-bonegreen-wireless.dtb
loadaddr=0x82000000
mmcroot=/dev/mmcblk0p2 ro
mmcrootfstype=ext4 rootwait
mmcargs=setenv bootargs console=${console} ${optargs} ${cape_disable}
${cape_enable} root=${mmcroot} rootfstype=${mmcrootfstype} ${cmdline}
loadfdt=echo debug: [/boot/dtbs/${uname_r}/${fdtfile}] ... ;load mmc 0:1
${fdtaddr} /boot/dtbs/${uname_r}/${fdtfile}
loadimage=echo debug: [/boot/vmlinuz-${uname_r}] ... ; load mmc 0:1
${loadaddr} /boot/vmlinuz-${uname_r}
boot_three=setenv rootpart 0:3; setenv mmcroot /dev/mmcblk0p3 ro
findroot=\
if test -e mmc $flagpart three; then \
if test -e mmc $flagpart three_ok; then \
run boot_three; \
elif test ! -e mmc $flagpart three_tried; then \
fatwrite mmc $flagpart $loadaddr three_tried 4; \
run boot_three; \
fi; \
elif test -e mmc $flagpart two; then \
if test ! -e mmc $flagpart two_ok; then \
if test -e mmc $flagpart two_tried; then \
run boot_three; \
else \
fatwrite mmc $flagpart $loadaddr two_tried 4; \
fi; \
fi; \
fi;
uenvcmd=\
run loadall; \
run findroot; \
echo Using root partition ${rootpart}; \
if run loadfdt; then \
echo Inside loadfdt; \
setenv fdt_buffer 0x60000; \
load mmc 0:1 ${rdaddr} /lib/firmware/BB-UART4-00A0.dtbo; \
echo I have loaded BB-UART4-00A0.dtbo; \
fdt addr ${fdtaddr}; \
fdt resize ${fdt_buffer}; \
fdt apply ${rdaddr}; \
fdt resize ${fdt_buffer}; \
load mmc 0:1 ${rdaddr} /lib/firmware/BB-UART1-00A0.dtbo; \
fdt addr ${fdtaddr}; \
fdt resize ${fdt_buffer}; \
fdt apply ${rdaddr}; \
fdt resize ${fdt_buffer}; \
echo I have loaded BB-UART1-00A0.dtbo; \
if run loadimage; then \
run mmcargs; \
bootz ${loadaddr} - ${fdtaddr}; \
fi; \
fi;
I have highlighted the error in the log.
U-boot log:
U-Boot SPL 2018.09-00002-g0b54a51eee (Sep 10 2018 - 19:41:39 -0500)
Trying to boot from MMC2
Loading Environment from EXT4...
** Unable to use mmc 0:1 for loading the env **
U-Boot 2018.09-00002-g0b54a51eee (Sep 10 2018 - 19:41:39 -0500), Build:
jenkin
s-github_Bootloader-Builder-65
CPU : AM335X-GP rev 2.1
I2C: ready
DRAM: 512 MiB
No match for driver 'omap_hsmmc'
No match for driver 'omap_hsmmc'
Some drivers were not found
Reset Source: Power-on reset has occurred.
RTC 32KCLK Source: External.
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
Loading Environment from EXT4...
** Unable to use mmc 0:1 for loading the env **
Board: BeagleBone Black
<ethaddr> not set. Validating first E-fuse MAC
BeagleBone Black:
Model: SeeedStudio BeagleBone Green Wireless:
BeagleBone: cape eeprom: i2c_probe: 0x54:
BeagleBone: cape eeprom: i2c_probe: 0x55:
BeagleBone: cape eeprom: i2c_probe: 0x56:
BeagleBone: cape eeprom: i2c_probe: 0x57:
Net: eth0: MII MODE
Could not get PHY for cpsw: addr 0
cpsw, usb_ether
Press SPACE to abort autoboot in 2 seconds
board_name=[A335BNLT] ...
board_rev=[GW1A] ...
switch to partitions #0, OK
mmc0 is current device
SD/MMC found on device 0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
60067 bytes read in 6 ms (9.5 MiB/s)
gpio: pin 56 (gpio 56) value is 0
gpio: pin 55 (gpio 55) value is 0
gpio: pin 54 (gpio 54) value is 0
gpio: pin 53 (gpio 53) value is 1
switch to partitions #0, OK
mmc0 is current device
gpio: pin 54 (gpio 54) value is 1
Checking for: /uEnv.txt ...
2404 bytes read in 2 ms (1.1 MiB/s)
gpio: pin 55 (gpio 55) value is 1
Loaded environment from /uEnv.txt
Importing environment from mmc ...
Checking if uenvcmd is set ...
gpio: pin 56 (gpio 56) value is 1
Running uenvcmd ...
*syntax error*
Checking if client_ip is set ...
Checking for: /boot.scr ...
Checking for: /boot/boot.scr ...
Checking for: /boot/uEnv.txt ...
gpio: pin 55 (gpio 55) value is 1
2176 bytes read in 3 ms (708 KiB/s)
Loaded environment from /boot/uEnv.txt
Checking if uname_r is set in /boot/uEnv.txt...
gpio: pin 56 (gpio 56) value is 1
Running uname_boot ...
loading /boot/vmlinuz-4.14.71-ti-r80 ...
debug: [/boot/vmlinuz-4.14.71-ti-r80] ...
10416640 bytes read in 652 ms (15.2 MiB/s)
debug: [enable_uboot_overlays=1] ...
debug: [enable_uboot_cape_universal=1] ...
debug: [uboot_base_dtb_univ=am335x-bonegreen-wireless-uboot-univ.dtb] ...
uboot_overlays: [uboot_base_dtb=am335x-bonegreen-wireless-uboot-univ.dtb]
...
uboot_overlays: Switching too: dtb=am335x-bonegreen-wireless-uboot-univ.dtb
...
debug: [/boot/dtbs/4.14.71-ti-r80/am335x-bonegreen-wireless-uboot-univ.dtb]
...
156290 bytes read in 14 ms (10.6 MiB/s)
uboot_overlays: [fdt_buffer=0x60000] ...
uboot_overlays: loading /lib/firmware/BB-UART4-00A0.dtbo ...
1075 bytes read in 3 ms (349.6 KiB/s)
uboot_overlays: loading /lib/firmware/BB-UART1-00A0.dtbo ...
1075 bytes read in 3 ms (349.6 KiB/s)
uboot_overlays: loading /lib/firmware/BB-I2C2-00A0.dtbo ...
1152 bytes read in 3 ms (375 KiB/s)
uboot_overlays: loading /lib/firmware/BB-BONE-eMMC1-01-00A0.dtbo ...
1440 bytes read in 3 ms (468.8 KiB/s)
uboot_overlays: loading /lib/firmware/BB-BBGW-WL1835-00A0.dtbo ...
4839 bytes read in 3 ms (1.5 MiB/s)
uboot_overlays: loading /lib/firmware/BB-ADC-00A0.dtbo ...
711 bytes read in 3 ms (231.4 KiB/s)
uboot_overlays: loading /lib/firmware/AM335X-PRU-RPROC-4-4-TI-00A0.dtbo ...
2402 bytes read in 4 ms (585.9 KiB/s)
loading /boot/initrd.img-4.14.71-ti-r80 ...
4799493 bytes read in 303 ms (15.1 MiB/s)
debug: [console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1
root=/dev/mmcblk0p1 ro rootfstype=ext4 rootwait coherent_pool=1M
net.ifnames=0 quiet] ...
debug: [bootz 0x82000000 0x88080000:493c05 88000000] ...
## Flattened Device Tree blob at 88000000
Booting using the fdt blob at 0x88000000
reserving fdt memory region: addr=88000000 size=88000
Using Device Tree in place at 88000000, end 8808afff
Starting kernel ...
[ 0.002060] timer_probe: no matching timers found
[ 1.135601] wkup_m3_ipc 44e11324.wkup_m3_ipc: could not get rproc handle
[ 1.486309] omap_voltage_late_init: Voltage driver support not added
[ 1.493286] PM: Cannot get wkup_m3_ipc handle
mount: mounting /dev/mmcblk0p1 on /root failed: Invalid argument
mount: mounting /dev on /root/dev failed: No such file or directory
mount: mounting /dev on /root/dev failed: No such file or directory
mount: mounting /run on /root/run failed: No such file or directory
run-init: current directory on the same filesystem as the root: error 0
Target filesystem doesn't have requested /sbin/init.
run-init: current directory on the same filesystem as the root: error 0
run-init: current directory on the same filesystem as the root: error 0
run-init: current directory on the same filesystem as the root: error 0
run-init: current directory on the same filesystem as the root: error 0
run-init: current directory on the same filesystem as the root: error 0
No init found. Try passing init= bootarg.
BusyBox v1.22.1 (Debian 1:1.22.0-19+b3) built-in shell (ash)
Enter 'help' for a list of built-in commands.
(initramfs)
On Saturday, May 4, 2019 at 8:05:12 PM UTC+5:30, RobertCNelson wrote:
>
> > uenvcmd=\
> > run loadall; \
> > run findroot; \
> > echo Using root partition ${rootpart}; \
> > setenv fdt_buffer 0x60000; \
> > load ${devtype} ${bootpart} ${rdaddr} ${uboot_overlay}; \
> > fdt addr ${fdtaddr}; \
> > fdt resize ${fdt_buffer}; \
> > fdt apply ${rdaddr}; \
> > fdt resize ${fdt_buffer}; \
> > echo Done with the edit; \
> > if run loadfdt; then \
> > echo Loaded ${fdtfile}; \
>
> Wrong order, you placed my "reference example" before the you loaded
> the main dtb. ( i also didn't expect you'd just copy it as is.. so
> let's expand it more..)
>
> ```
> if run loadfdt; then \
> echo Loaded ${fdtfile}; \
> setenv fdt_buffer 0x60000; \
> load mmc 0:1 ${rdaddr} /lib/firmware/BB-UART4-00A0.dtbo; \
> fdt addr ${fdtaddr}; \
> fdt resize ${fdt_buffer}; \
> fdt apply ${rdaddr}; \
> fdt resize ${fdt_buffer}; \
> load mmc 0:1 ${rdaddr} /lib/firmware/BB-UART1-00A0.dtbo; \
> fdt addr ${fdtaddr}; \
> fdt resize ${fdt_buffer}; \
> fdt apply ${rdaddr}; \
> fdt resize ${fdt_buffer}; \
> <and so on>
> <and so on>
> if run loadimage; then \
> run mmcargs; \
> bootz ${loadaddr} - ${fdtaddr}; \
> fi; \
> fi;
> ```
>
> Does that now make sense?
>
> Regards,
>
> --
> Robert Nelson
> https://rcn-ee.com/
>
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/84d73859-3e55-494c-a594-a40548dea8a9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.