ubldr, was Re: dtb printout

Daniel Braniss danny at cs.huji.ac.il
Tue Dec 6 09:17:29 UTC 2016


> On 5 Dec 2016, at 17:01, Ian Lepore <ian at freebsd.org> wrote:
> 
> On Mon, 2016-12-05 at 15:48 +0200, Daniel Braniss wrote:
>> Hi,
>> the short version:
>> 	is there a way to obtain the dtb from the kernel?
>> 
>> the longer version:
>> I am developing on several different arm boards, rpi, rpi2, orangepi-
>> one, orange-pc, to mention 
>> a few, and each one has a different u-boot, ubldr, dtb, and I keep
>> loosing track :-(
>> I find myself too often wondering which ddb file got loaded.
>> 
>> cheers,
>> 	danny
> 
> First:  each one does NOT have a different ubldr.  All ubldr.bin files
> are the same, they're not board-specific anymore.  (The elf versions,
> ubldr without the .bin, may have a different load address in the elf
> header, but other than that, they're identical too and can actually be
> loaded at any address.)
> 
> To see the contents of the dtb, use ofwdump.  The output is not
> especially pretty.  There is a manpage for it.
> 
> To just get a quick reminder of which file was loaded, create a
> /boot/loader.rc.local (<-- .rc not .conf) that contains
>   
>   ubenv import fdtfile fdt_file
> 
> Then in the running system you can use kenv and you'll see
> 
>   uboot.fdtfile="bcm2835-rpi-b-rev2.dtb"
> 
> Unfortunately, some u-boots use fdtfile, some use fdt_file.  Grrr.
> 
> You can, of course, use that ubenv import thing to pull any variable
> from the uboot environment into the kernel environment.  If you just
> say ubenv import without naming a variable, you get all the vars
> (including vars that contain scripts, which is kind of messy).
> 
> — Ian
> 

as usual, I get more than I bargained for :-)
on rpi adding ubenv import worked, but on orange/allwinner I got a ‘syntax error’,
I tried to upgrade the ubldr, but so far i get:

U-Boot SPL 2016.09 (Dec 05 2016 - 15:02:38)
DRAM: 1024 MiB
Trying to boot from MMC1


U-Boot 2016.09 (Dec 05 2016 - 15:02:38 +0200) Allwinner Technology

CPU:   Allwinner H3 (SUN8I 1680)
Model: Xunlong Orange Pi PC
I2C:   ready
DRAM:  1 GiB
WARNING: Caches not enabled
MMC:   SUNXI SD/MMC: 0
reading u-boot.env

** Unable to read "u-boot.env" from mmc0:1 **
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   phy interface0
eth0: ethernet at 1c30000
starting USB...
USB0:   USB EHCI 1.00
USB1:   USB OHCI 1.0
USB2:   USB EHCI 1.00
USB3:   USB OHCI 1.0
USB4:   USB EHCI 1.00
USB5:   USB OHCI 1.0
scanning bus 0 for devices... 1 USB Device(s) found
scanning bus 2 for devices... 1 USB Device(s) found
scanning bus 4 for devices... 1 USB Device(s) found
Hit any key to stop autoboot:  0 
Booting from: mmc 0 ubldr.bin
reading ubldr.bin
223912 bytes read in 53 ms (4 MiB/s)
## No elf image at address 0x42000000
## Starting application at 0x42000000 ...



More information about the freebsd-arm mailing list