Hello here.
I'm trying to run Arch on Rock64 board from SD card. I'm following official guide at https://archlinuxarm.org/platforms/armv ... hip/rock64.
Setup is quite unstable, alarm is able to boot once in 5-10 attempts. Usually I have kernel panic at different boot stages.
Board and SD card a-ok as I can run other distros w/o problems.
Reading different threads in this form and on pine64 I suspect that the problem is with high DDR clock set by Arch uboot (800Mhz). Other distro which is rather stable set it to 786Mhz. Thus I'm looking for a way how to use another u-boot build.
I found different threads (rather old) where folks is patching Arch u-boot images with binaries from rockchip. But nothing is working for me.
I'm trying to build custom u-boot following this guide https://github.com/u-boot/u-boot/blob/m ... ckchip.rst
Build is ok, I flash new u-boot to SD.
Boot process fails with following:
$this->bbcode_second_pass_code('', 'U-Boot TPL 2023.07-rc1-00158-gab75996ba4 (May 06 2023 - 11:20:23)
LPDDR3, 800MHz
BW=32 Col=11 Bk=8 CS0 Row=15 CS1 Row=15 CS=2 Die BW=16 Size=4096MB
Trying to boot from BOOTROM
Returning to boot ROM...
U-Boot SPL 2023.07-rc1-00158-gab75996ba4 (May 06 2023 - 11:20:23 +0300)
Trying to boot from MMC1
NOTICE: BL31: v2.8(release):c194aa0
NOTICE: BL31: Built : 09:21:05, May 6 2023
NOTICE: BL31:Rockchip release version: v1.2
U-Boot 2023.07-rc1-00158-gab75996ba4 (May 06 2023 - 11:20:23 +0300) Arch Linux ARM
Model: Pine64 Rock64
DRAM: 4 GiB
PMIC: RK8050 (on=0x40, off=0x00)
Core: 230 devices, 24 uclasses, devicetree: separate
MMC: mmc@ff500000: 1, mmc@ff520000: 0
Loading Environment from MMC... *** Warning - bad CRC, using default environment
In: serial@ff130000
Out: serial@ff130000
Err: serial@ff130000
Model: Pine64 Rock64
Net: eth0: ethernet@ff540000
Hit any key to stop autoboot: 2 <0x08><0x08><0x08> 1 <0x08><0x08><0x08> 0
Card did not respond to voltage select! : -110
Bus usb@ff5c0000: ehci_generic usb@ff5c0000: Failed to get clocks (ret=-19)
Port not available.
Bus usb@ff5d0000: USB OHCI 1.0
Bus usb@ff580000: USB DWC2
scanning bus usb@ff5d0000 for devices... 1 USB Device(s) found
scanning bus usb@ff580000 for devices... 1 USB Device(s) found
ethernet@ff540000 Waiting for PHY auto negotiation to complete......... TIMEOUT !
Could not initialize PHY ethernet@ff540000
ethernet@ff540000 Waiting for PHY auto negotiation to complete......... TIMEOUT !
Could not initialize PHY ethernet@ff540000')
Comparing it to original Arch u-boot log the problem begins here $this->bbcode_second_pass_code('', 'Card did not respond to voltage select! : -110')
for some reason u-boot doesn't try to boot from SD card. Instead it tries to connect eth and boot from tftp (when I connect ethernet).
What could be the problem? Why u-boot refuses to continue boot from SD? Maybe it unable to find root partition which starts at 32768 in Arch?
I'm trying to find .config file which is used by Arch to build their u-boot but no luck. Does anyone know where to find it? I'd like to compare it with mine. Maybe there is some specific setting there?
Thanks.