U-boot for Banana Pi

Ganbold Tsagaankhuu ganbold at gmail.com
Fri Aug 15 14:38:20 UTC 2014


On Fri, Aug 15, 2014 at 9:48 PM, TooMeeK Admin <maps at toomeek.waw.pl> wrote:

> Boot partition is created by following:
>
>
> gpart add -b 1m -s 64m -t fat16 md0
> gpart set -a active -i 1 md0
> newfs_msdos -F 16 /dev/md0s1
>
> -b is needed because:
>
> dd if=/usr/src/u-boot-sunxi/u-boot-sunxi-with-spl.bin conv=notrunc
> of=banana.img bs=1024 seek=8
>
> and will corrupt partition table, resulting not even boot.scr loaded.
>
> How do You install u-boot-sunxi on Your board?
> Or maybe I should use sunxi-spl.bin and u-boot.bin instead of
> u-boot-sunxi-with-spl.bin?
> But u-boot-sunxi compiles only:
> /usr/src/u-boot-sunxi/u-boot-sunxi-with-spl.bin
> /usr/src/u-boot-sunxi/u-boot.bin
>
> W dniu 2014-08-15 13:17, Mattia Rossi pisze:
>
>
>>
>>>  I'm on a different board, but I use -t fat32 (no -b either) and
>> newfs_msdos without any options.
>>
> No change on FAT32, "error reading cluster".
>
>  kernel.bin needs to be loaded witout the 100 offset I think. see below.
>>
>>>
>>>  and
>
>  I believe it should be
>> fatload mmc 0 0x40200000 kernel.bin
>> go 0x40200000
>>
>>  Didn't work either..
>
> But then again I take a look:
> https://wiki.freebsd.org/FreeBSD/arm/Cubieboard
> and:
>
> dd if=/usr/src/u-boot-sunxi/u-boot-sunxi-with-spl.bin conv=notrunc
> of=banana.img bs=1024 seek=8
> dd if=sunxi-spl.bin conv=notrunc of=banana.img bs=1024 seek=8
> dd if=u-boot.bin conv=notrunc of=banana.img bs=1024 seek=32
>
> And the kernel was finally loaded...
>
> U-Boot 2013.07-07794-gc0f3b94 (Aug 15 2013 - 18:01:45) Allwinner Technology
>
> CPU:   Allwinner A20 (SUN7I)
> Board: Cubieboard2
>
> I2C:   ready
> DRAM:  1 GiB
> MMC:   SUNXI SD/MMC: 0
> *** Warning - bad CRC, using default environment
>
> In:    serial
> Out:   serial
> Err:   serial
> Net:   emac
> Hit any key to stop autoboot:  3     2     1     0
>
> reading uEnv.txt
> ** Unable to read file uEnv.txt **
> Failed to mount ext2 filesystem...
> ** Unrecognized filesystem type **
> Failed to mount ext2 filesystem...
> ** Unrecognized filesystem type **
> reading boot.scr
> 119 bytes read in 3 ms (38.1 KiB/s)
>
> Jumping to boot.scr
> ## Executing script at 44000000
> reading kernel
> 4835460 bytes read in 423 ms (10.9 MiB/s)
>
> ## Starting application at 0x40200100 ...
> KDB: debugger backends: ddb
> KDB: current backend: ddb
> Copyright (c) 1992-2014 The FreeBSD Project.
> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
>     The Regents of the University of California. All rights reserved.
> FreeBSD is a registered trademark of The FreeBSD Foundation.
> FreeBSD 10.0-RELEASE #5: Fri Aug 15 15:55:57 CEST 2014
>     root at freebsd:/usr/obj/arm.armv6/usr/src/sys/BANANAPI arm
> FreeBSD clang version 3.3 (tags/RELEASE_33/final 183502) 20130610
> WARNING: WITNESS option enabled, expect reduced performance.
> CPU: Cortex A7 rev 4 (Cortex-A core)
>  Supported features: ARM_ISA THUMB2 JAZELLE THUMBEE ARMv4 Security_Ext
>  WB disabled EABT branch prediction enabled
> LoUU:2 LoC:2 LoUIS:2
> Cache level 1:
>  32KB/64B 4-way data cache WB Read-Alloc Write-Alloc
>  32KB/32B 2-way instruction cache Read-Alloc
> Cache level 2:
>  256KB/64B 8-way unified cache WB Read-Alloc Write-Alloc
> real memory  = 536870912 (512 MB)
> avail memory = 517558272 (493 MB)
> random device not loaded; using insecure entropy
> random: <Software, Yarrow> initialized
> simplebus0: <Flattened device tree simple bus> on fdtbus0
> gic0: <ARM Generic Interrupt Controller> mem 0x1c81000-0x1c81fff,0x1c82000-0x1c820ff
> on simplebus0
> gic0: pn 0x10, arch 0x2, rev 0x1, implementer 0x43b nirqs 160
> a20_cpu_cfg0: <A20 CPU Configuration Module> mem 0x1c25c00-0x1c25fff on
> simplebus0
> a10_ccm0: <Allwinner Clock Control Module> mem 0x1c20000-0x1c203ff on
> simplebus0
> a10_timer0: <Allwinner A10/A20 timer> mem 0x1c20c00-0x1c20c8f irq 54 on
> simplebus0
> Event timer "a10_timer Eventtimer" frequency 24000000 Hz quality 1000
> Timecounter "a10_timer timer0" frequency 24000000 Hz quality 1000
> a10wd0: <Allwinner A10 Watchdog> mem 0x1c20c90-0x1c20c9f on simplebus0
> gpio0: <Allwinner GPIO controller> mem 0x1c20800-0x1c20bff irq 60 on
> simplebus0
> gpioc0: <GPIO controller> on gpio0
> gpiobus0: <GPIO bus> on gpio0
> ehci0: <Allwinner Integrated USB 2.0 controller> mem 0x1c14000-0x1c14fff
> irq 71 on simplebus0
> usbus0: EHCI version 1.0
> usbus0 on ehci0
> ehci1: <Allwinner Integrated USB 2.0 controller> mem 0x1c1c000-0x1c1cfff
> irq 72 on simplebus0
> usbus1: EHCI version 1.0
> usbus1 on ehci1
> uart0: <16750 or compatible> mem 0x1c28000-0x1c283ff irq 33 on simplebus0
> uart0: console (115200,n,8,1)
> Timecounters tick every 10.000 msec
> usbus0: 480Mbps High Speed USB v2.0
> usbus1: 480Mbps High Speed USB v2.0
> ugen0.1: <Allwinner> at usbus0
> uhub0: <Allwinner EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on
> usbus0
> ugen1.1: <Allwinner> at usbus1
> uhub1: <Allwinner EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on
> usbus1
> random: unblocking device.
> WARNING: WITNESS option enabled, expect reduced performance.
> uhub0: 1 port with 1 removable, self powered
> uhub1: 1 port with 1 removable, self powered
> Root mount waiting for: usbus1 usbus0
> ugen0.2: <Ralink> at usbus0
> Trying to mount root from ufs:/dev/da0s2 []...
> mountroot: waiting for device /dev/da0s2 ...
> Mounting from ufs:/dev/da0s2 failed with error 19.
>
> Loader variables:
>
> Manual root filesystem specification:
>   <fstype>:<device> [options]
>       Mount <device> using filesystem <fstype>
>       and with the specified (optional) option list.
>
>     eg. ufs:/dev/da0s1a
>         zfs:tank
>         cd9660:/dev/acd0 ro
>           (which is equivalent to: mount -t cd9660 -o ro /dev/acd0 /)
>
>   ?               List valid disk boot devices
>   .               Yield 1 second (for background tasks)
>   <empty line>    Abort manual input
>
> File sizes:
> 24064 sunxi-spl.bin
> 241544 u-boot.bin
> 265608 in summary
>
> 274844 u-boot-sunxi-with-spl.bin  that comes from Bananapi compiled
> u-boot, but anyway it was overwritten??
>
> So thank You for help, all I missed something there.. still not mounting
> second slice, but I will try to find out why..
>


You are now very close, check usb flash, if you followed Cubieboard
instruction (https://wiki.freebsd.org/FreeBSD/arm/Cubieboard) you have to
change da0s2 to da0 in kernel config.
I already asked Banana PI people to send me one board, but I guess it is
maybe not really necessary.

Ganbold



> ps. 512MB of RAM? I didn't tell You it should be 1024MB in
> /usr/src/sys/boot/fdt/dts/bananapi.dts ?? :)
>
> Cheers,
> TooMeeK
>
> _______________________________________________
> freebsd-arm at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-arm
> To unsubscribe, send any mail to "freebsd-arm-unsubscribe at freebsd.org"
>


More information about the freebsd-arm mailing list