not able to flash u-boot onto SD Card
#1
Exclamation 
greetings,
I have manged to build u-boot as per http://opensource.rock-chips.com/wiki_U-Boot . However, after burning the images to SD card, booting stops before starting my built version of u-boot, i.e., no u-boot prompt!
Serial console output below, also, further down build details.

Can anyone please shed light whats wrong in the process ?
thanks 
consoleadam

serial output
========
 DDR version 1.06 20170424
In
LPDDR3
786MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=32 Size=1024MB
ddrconfig:1
OUT
Boot1 Release Time: 2017-05-18, version: 2.43
ChipType = 0x11, emmc reinit
emmc reinit
SdmmcInit=2 20
SdmmcInit=0 0
BootCapSize=0
UserCapSize=7587MB
FwPartOffset=2000 , 0
StorageInit ok = 48039
Raw SecureMode = 0
SecureInit read PBA: 0x4
SecureInit read PBA: 0x404
SecureInit read PBA: 0x804
SecureInit read PBA: 0xc04
SecureInit read PBA: 0x1004
SecureInit ret = 0, SecureMode = 0
LoadTrustBL
No find bl30.bin
No find bl32.bin
Load uboot, ReadLba = 2000
Load OK, addr=0x200000, size=0x7b5f4
RunBL31 0x10000
NOTICE:  BL31: v1.3(debug):f947c7e
NOTICE:  BL31: Built : 09:28:45, May 31 2017
NOTICE:  BL31:Rockchip release version: v1.3
INFO:    ARM GICv2 driver initiapteed sec cpu_context!
INFO:    boot cpu mask: 1
INFO:    platng runtime services
WARNING: No OPTEE provided by BL2 boot loadTEE will return SMC_UNK
ERROR:   Error initializing runtime sernormal world
INFO:    Entry point address = 0x200000
INFO:
-------------------

Build and Flashing in details:
==================

consoleadam@barbarian:~/rock64$ git clone https://github.com/rockchip-linux/u-boot.git

consoleadam@barbarian:~/rock64/u-boot$ make ARCH=arm -j4 CROSS_COMPILE=aarch64-linux-gnu- distclean

consoleadam@barbarian:~/rock64/u-boot$ make ARCH=arm -j4 CROSS_COMPILE=aarch64-linux-gnu- evb-rk3328_defconfig all

BL2 ddr.bin & idbloader.img
-----------------------------
consoleadam@barbarian:~/rock64/u-boot$ dd if=../rkbin/rk33/rk3328_ddr_786MHz_v1.06.bin of=ddr.bin bs=4 skip=1

consoleadam@barbarian:~/rock64/u-boot$ tools/mkimage -n rk3328 -T rksd -d ddr.bin idbloader.img

consoleadam@barbarian:~/rock64/u-boot$ cat ../rkbin/rk33/rk3328_miniloader_v2.43.bin >> idbloader.img

BL3 trust.img & u-boot.img
----------------------------
consoleadam@barbarian:~/rock64/u-boot$ ../rkbin/tools/loaderimage --pack --uboot ./u-boot-dtb.bin uboot.img 0x200000



consoleadam@barbarian:~/rock64/u-boot$ cp ../rkbin/rk33/rk3328_loader_ddr786_v1.06.243.bin ./

consoleadam@barbarian:~/rock64/u-boot$ cat >trust.ini <<EOF
[VERSION]
MAJOR=1
MINOR=2
[BL30_OPTION]
SEC=0
[BL31_OPTION]
SEC=1
PATH=../rkbin/rk33/rk3328_bl31_v1.34.bin
ADDR=0x10000
[BL32_OPTION]
SEC=0
[BL33_OPTION]
SEC=0
[OUTPUT]
PATH=trust.img
EOF

consoleadam@barbarian:~/rock64/u-boot$ ../rkbin/tools/trust_merger trust.ini

flashing
---------
consoleadam@barbarian:~/rock64/u-boot$ sudo dd if=idbloader.img of=/dev/sdb seek=64 bs=512
consoleadam@barbarian:~/rock64/u-boot$ sudo dd if=uboot.img of=/dev/sdb seek=16384 bs=512
consoleadam@barbarian:~/rock64/u-boot$ sudo dd if=trust.img of=/dev/sdb seek=24576 bs=512
#2
FIXED
the trick was to re-create the paritions after dd'ing, as following:

making dummy system.img (of size 2000 MB)
--------------------------------------------
consoleadam@barbarian:~/rock64$ dd status=progress if=/dev/zero of=system.img bs=1M count=0 seek=2000 status=none

adding my custom built images to the dummy image
-----------------------------------------------------------------
consoleadam@barbarian:~/rock64$ umount /media/consoleadam/*
consoleadam@barbarian:~/rock64$ dd status=progress if=idbloader.img of=system.img seek=64 conv=fsync status=none
consoleadam@barbarian:~/rock64$ dd status=progress if=uboot.img of=system.img seek=16384 conv=fsync status=none
consoleadam@barbarian:~/rock64$ dd status=progress if=rk3328evb-trust.img of=system.img seek=24576 conv=fsync status=none

you can add kernel/rootfs images to dummy system.img from another built image as following:
-------------------------------------------------------------------------------------------------------------
consoleadam@barbarian:~/rock64$ dd status=progress if=jessie-openmediavault-rock64-0.5.10-118-arm64.img of=system.img seek=32768 skip=32768 count=229376 conv=fsync status=none
consoleadam@barbarian:~/rock64$ dd status=progress if=jessie-openmediavault-rock64-0.5.10-118-arm64.img of=system.img seek=262144 skip=262144 count=4194304 conv=fsync status=none
consoleadam@barbarian:~/rock64$ sync

re-partitioning the dummy image
--------------------------------------
consoleadam@barbarian:~/rock64$ parted -s system.img mklabel gpt
consoleadam@barbarian:~/rock64$ parted -s system.img unit s mkpart loader1 64 8063
consoleadam@barbarian:~/rock64$ parted -s system.img unit s mkpart reserved1 8064 8191
consoleadam@barbarian:~/rock64$ parted -s system.img unit s mkpart reserved2 8192 16383
consoleadam@barbarian:~/rock64$ parted -s system.img unit s mkpart loader2 16384 24575
consoleadam@barbarian:~/rock64$ parted -s system.img unit s mkpart atf 24576 32767
consoleadam@barbarian:~/rock64$ parted -s system.img unit s mkpart reserved3 32768 262143
consoleadam@barbarian:~/rock64$ parted -s system.img unit s mkpart root 262144 100%
consoleadam@barbarian:~/rock64$ parted -s system.img set 7 boot on

below in one go:
-----------------

consoleadam@barbarian:~/rock64$ parted -s system.img mklabel gpt; \
> sync; \
> parted -s system.img unit s mkpart loader1 64 8063; \
> sync; \
> parted -s system.img unit s mkpart reserved1 8064 8191; \
> sync; \
> parted -s system.img unit s mkpart reserved2 8192 16383; \
> sync; \
> parted -s system.img unit s mkpart loader2 16384 24575; \
> sync; \
> parted -s system.img unit s mkpart atf 24576 32767; \
> sync; \
> parted -s system.img unit s mkpart reserved3 32768 262143; \
> parted -s system.img unit s mkpart root 262144 100%; \
> sync;\
> parted -s system.img set 7 boot on


burning the dummy image to SDcard
-------------------------------------------
consoleadam@barbarian:~/rock64$ sudo dd status=progress if=system.img of=/dev/sdb conv=fsync

Note that you can only dd specific parts [dd status=progress if=idbloader.img of=system.img seek=64 conv=fsync status=none] directly to SDcard instead of to dummy image (system.img) but also make sure to repartition the SDcard after dd'ing!
#3
See "below in one go" above, can this all be done on the rock64, ending up on an sdcard plugged into a reader on a usb hub? I have most of the work files except "linux build-master.zip already installed on a 1T spinning rust drive on the usb3 port. Along with a prebuilt realtime kernel v4.14.15-rc13 waiting to be tested. I have installed quite a bit of stuff to a minimal stretch ayufan published, and I'd like to have all that available on the new sdcard when I swap it from the reader to the boot socket.

Following the instructions in that linux-build-master.zip, I have it up to finishing the qemu-stuff install, but binfmt-misc gives errors. I there a better name for that?
====
rock64@rock64:/media/slash/home/rock64/v4.14.15-rt13$ sudo apt install binfmt-misc
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package binfmt-misc
====
stretch has a package whose description reads like I would expect for a -misc, so I installed that. No idea if its works yet. binfmt-support/stable,now 2.1.6-2 arm64 [installed]

And, although docker and docker-compose are installed on the rock64, the only response I can get looks like a long helpmsg from docker-compose. Docker is not to be found in the xfce menu's, nor from a terminal, nor does it show up in the app box at bottom center of the screen.
This is my first experience with docker, so I'll need some tutoring.

synaptic claims its a gtk/kde app, and its actually running xfce, at a screen resolution thats displayable on a 1366x768 monitor, running at 1280x760 but the fonts are just fuzzed up enough its difficult to read. Is there any help for that? The display configurator id's the monitor as a 19" AOC, which is correct, but only offers 800x600 and 1280x760. Fugly fonts.

Lots of questions I'm afraid.

Many Thanks, gene83


Possibly Related Threads…
Thread Author Replies Views Last Post
  Rock64 won't boot luminosity7 10 6,023 03-16-2024, 08:33 AM
Last Post: dmitrymyadzelets
  Rock64 doesn't boot dstallmo 1 742 03-16-2024, 08:29 AM
Last Post: dmitrymyadzelets
  Boot from SPI first mjnck 1 1,934 02-29-2024, 02:12 PM
Last Post: reukiodo
  ROCK64 v3 can it boot from USB? Tsagualsa 4 2,970 11-29-2022, 11:31 AM
Last Post: Macgyver
  Rock64 u-boot for eMMC Build Error mexicanflyer 0 1,396 09-18-2022, 02:29 PM
Last Post: mexicanflyer
  boot hdd usb3 philipe 1 3,054 01-27-2021, 02:12 PM
Last Post: tllim
  Libreelec Rock64 - 4GB no boot spiker15 3 5,282 11-02-2020, 12:36 AM
Last Post: wilsonYan
  Rock64 - boot helpmerock 2 4,012 10-08-2020, 01:29 PM
Last Post: helpmerock
  No boot up after power on Whoopsadaisy 4 6,388 09-26-2020, 05:14 PM
Last Post: simonsouth
Bug u-boot (forks) status mcerveny 14 17,457 08-27-2020, 01:44 PM
Last Post: globaltree

Forum Jump:


Users browsing this thread: 1 Guest(s)