ubldr.bin on sheevaplug (11-STABLE)
Ian Lepore
ian at freebsd.org
Sun Mar 12 14:54:29 UTC 2017
On Sun, 2017-03-12 at 09:52 +0100, Ronald Klop wrote:
> Hello,
>
> I just build a new 11-STABLE for my Sheevaplug. (BTW, it feels a lot
> more
> stable the last two or three months. I can still create UFS
> corruption on
> my usb-stick, but it does not crash that often anymore.)
>
> Back to the subject. I just tried ubldr.bin again. Previous attempts
> gave
> no output and just hang. But now I get an error.
>
> This is what I did:
> ----------------------------------------------------------- START
> # 09:40:06 root at sheeva2 [/boot]
> nandtool erase dev=/dev/gnand0s.fbsd-boot
>
> # 09:40:15 root at sheeva2 [/boot]
> dd if=ubldr.bin of=/dev/gnand0s.fbsd-boot bs=2k conv=sync
> 120+1 records in
> 121+0 records out
> 247808 bytes transferred in 0.251712 secs (984489 bytes/sec)
>
> # 09:40:43 root at sheeva2 [/boot]
> shutdown -r now
> <... snip ...>
> Rebooting...
> þ
> __ __ _ _
> | \/ | __ _ _ ____ _____| | |
> | |\/| |/ _` | '__\ \ / / _ \ | |
> | | | | (_| | | \ V / __/ | |
> |_| |_|\__,_|_| \_/ \___|_|_|
> _ _ ____ _
> >
> > >
> > > >
> > > > >
> > > > > | __ ) ___ ___ | |_
> > > > > ___| _ \ / _ \ / _ \| __|
> > > _| |___| |_) | (_) | (_) | |_
> \___/ |____/ \___/ \___/ \__|
> ** MARVELL BOARD: SHEEVA PLUG LE
>
> U-Boot 1.1.4 (Jul 19 2009 - 16:03:28) Marvell version: 3.4.19
>
> U-Boot code: 00600000 -> 0067FFF0 BSS: -> 006CFB00
>
> Soc: 88F6281 A0 (DDR2)
> CPU running @ 1200Mhz L2 running @ 400Mhz
> SysClock = 400Mhz , TClock = 200Mhz
>
> DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6
> DRAM CS[0] base 0x00000000 size 256MB
> DRAM CS[1] base 0x10000000 size 256MB
> DRAM Total size 512MB 16bit width
> Addresses 8M - 0M are saved for the U-Boot usage.
> Mem malloc Initialization (8M - 7M): Done
> NAND:512 MB
> Flash: 0 kB
>
> CPU : Marvell Feroceon (Rev 1)
>
> Streaming disabled
> Write allocate disabled
>
>
> USB 0: host mode
> PEX 0: interface detected no Link.
> Net: egiga0 [PRIME], egiga1
> Hit any key to stop autoboot: 0
>
> NAND read: device 0 offset 0x200000, size 0x600000
> 6291456 bytes read: OK
> ## Starting application at 0x00900000 ...
> data abort
> pc : [<0092a0c0>] lr : [<00919fe4>]
> sp : 005fe43c ip : 0093a950 fp : 005fe454
> r10: 00000000 r9 : 0093de48 r8 : 00938ce8
> r7 : 01badab1 r6 : 00938ceb r5 : 00938ce8 r4 : 00000000
The clue to why this doesn't work is in the above line: 01badab1...
read that as "01 bad abi", ubldr failed on the first check of whether
u-boot provided the interface needed to do console and disk IO.
The only way to fix this is to use a custom-built u-boot that has the
CONFIG_API option set. I've never tried that on an armv4/5 system, but
it should work.
-- Ian
> r3 : 00000000 r2 : 00938ce8 r1 : 00000001 r0 : 0093bfb8
> Flags: Nzcv IRQs off FIQs off Mode SVC_32
> Resetting CPU ...
>
> ----------------------------------------------------------- END
>
> The commands are the same as when I install kernel.bin. I only
> substituted
> the if= value of dd with ubldr.bin.
>
> Any ideas?
> Can I provide more information?
>
> Regards,
> Ronald.
More information about the freebsd-arm
mailing list