Arch Linux Arm --> Kernel 5.8 breaks installation
#1
Hi all,

just did a system update on a Rock64 and the new 5.8 Kernel breaks the installation.
After reboot the board has permanently lit the white and red LED and does not boot-up at all.
To narrow down the issue I re-flashed my eMMC-Module as per alarm Wiki and ArchLinuxARM-aarch64-latest.tar.gz includes only linux-aarch64-5.7.1-1 so I run again pacman -Syuu to update and linux-aarch64-5.8.0-1 was installed and after shutdown -r now the board went dead again with permanently lit white and red LED. Pressing the reboot button or pressing and hold the reboot button on the board brings no change, board still ends up with white and red LED permanently lit.

Any ideas on how to fix linux-aarch64-5.8.0-1 so that it works on Rock64 ?

UART output as below
Code:
DDR version 1.06 20170424 In LPDDR3 786MHz Bus Width=32 Col=11 Bank=8 Row=15/15 CS=2 Die Bus-Width=32 Size=4096MB ddrconfig:7 OUT Boot1 Release Time: 2017-05-18, version: 2.43 ChipType = 0x11, 127 SdmmcInit=2 0 BootCapSize=2000 UserCapSize=119276MB FwPartOffset=2000 , 2000 SdmmcInit=0 2 StorageInit ok = 23695 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=0x8b0ec 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 initialized INFO:    Using opteed sec cpu_context! INFO:    boot cpu mask: 1 INFO:    plat_rockchip_pmu_init: pd status 0xe INFO:    BL31: Initializing runtime services WARNING: No OPTEE provided by BL2 boot loader, Booting device without OPTEE initialization. SMC`s destined for OPTEE will return SMC_UNK ERROR:  Error initializing runtime service opteed_fast INFO:    BL31: Preparing for EL3 exit to normal world INFO:    Entry point address = 0x200000 INFO:    SPSR = 0x3c9 U-Boot 2018.03-1 (Apr 02 2018 - 19:14:47 -0600) Arch Linux ARM Model: Rockchip RK3328 EVB DRAM:  4 GiB MMC:  rksdmmc@ff500000: 1, rksdmmc@ff520000: 0 Loading Environment from MMC... Card did not respond to voltage select! *** Warning - No block device, using default environment Failed (-5) In:    serial@ff130000 Out:  serial@ff130000 Err:  serial@ff130000 Model: Rockchip RK3328 EVB Net: Warning: ethernet@ff540000 (eth0) using random MAC address - 62:72:ba:0a:ad:9a eth0: ethernet@ff540000 Hit any key to stop autoboot:  0 switch to partitions #0, OK mmc0(part 0) is current device Scanning mmc 0:1... Found U-Boot script /boot/boot.scr 890 bytes read in 17 ms (50.8 KiB/s) ## Executing script at 00500000 37171712 bytes read in 910 ms (39 MiB/s) 50174 bytes read in 27 ms (1.8 MiB/s) 8342454 bytes read in 211 ms (37.7 MiB/s) ## Flattened Device Tree blob at 01f00000   Booting using the fdt blob at 0x1f00000   Loading Ramdisk to fc727000, end fcf1bbb6 ... OK   reserving fdt memory region: addr=1f00000 size=d000   Loading Device Tree to 00000000fc717000, end 00000000fc726fff ... OK Starting kernel ...
  Reply
#2
Same problem.
Code:
DDR version 1.06 20170424 In LPDDR3 786MHz Bus Width=32 Col=11 Bank=8 Row=15/15 CS=2 Die Bus-Width=32 Size=4096MB ddrconfig:7 OUT Boot1 Release Time: 2017-05-18, version: 2.43 ChipType = 0x11, 127 SdmmcInit=2 0 BootCapSize=2000 UserCapSize=14800MB FwPartOffset=2000 , 2000 SdmmcInit=0 2 StorageInit ok = 20837 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=0x8b0ec 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 initialized INFO:    Using opteed sec cpu_context! INFO:    boot cpu mask: 1 INFO:    plat_rockchip_pmu_init: pd status 0xe INFO:    BL31: Initializing runtime services WARNING: No OPTEE provided by BL2 boot loader, Booting device without OPTEE initialization. SMC`s destined for OPTEE will return SMC_UNK ERROR:  Error initializing runtime service opteed_fast INFO:    BL31: Preparing for EL3 exit to normal world INFO:    Entry point address = 0x200000 INFO:    SPSR = 0x3c9 U-Boot 2018.03-1 (Apr 02 2018 - 19:14:47 -0600) Arch Linux ARM Model: Rockchip RK3328 EVB DRAM:  4 GiB MMC:  rksdmmc@ff500000: 1, rksdmmc@ff520000: 0 Loading Environment from MMC... Card did not respond to voltage select! *** Warning - No block device, using default environment Failed (-5) In:    serial@ff130000 Out:  serial@ff130000 Err:  serial@ff130000 Model: Rockchip RK3328 EVB Net:  Warning: ethernet@ff540000 (eth0) using random MAC address - ea:2f:54:3a:3b:6d eth0: ethernet@ff540000 Hit any key to stop autoboot:  2  1  0 switch to partitions #0, OK mmc0(part 0) is current device Scanning mmc 0:1... Found U-Boot script /boot.scr 1269 bytes read in 17 ms (72.3 KiB/s) ## Executing script at 00500000 37171712 bytes read in 29273 ms (1.2 MiB/s) 50174 bytes read in 50 ms (979.5 KiB/s) 8102566 bytes read in 6588 ms (1.2 MiB/s) ## Flattened Device Tree blob at 01f00000   Booting using the fdt blob at 0x1f00000   Loading Ramdisk to fc762000, end fcf1c2a6 ... OK   reserving fdt memory region: addr=1f00000 size=d000   Loading Device Tree to 00000000fc752000, end 00000000fc761fff ... OK Starting kernel ...



I've successfully downgraded kernel using qemu-arm-static (from AUR) to chroot from x86_64 laptop into the root filesystem on emmc. But the questions still remain: what is wrong with kernel, and how to fix this?
  Reply
#3
Fell into this trap also,  will need to roll back on X86 machine.
  Reply
#4
Probably a boot-loader problem.
I tried using another boot-loader (mainline-base).
As a result, it starts normally as follows.

Code:
=> run bootcmd_mmc1 switch to partitions #0, OK mmc1 is current device Scanning mmc 1:1... Found U-Boot script /boot/boot.scr 890 bytes read in 5 ms (173.8 KiB/s) ## Executing script at 00500000 37171712 bytes read in 1612 ms (22 MiB/s) 50174 bytes read in 11 ms (4.3 MiB/s) 8339435 bytes read in 367 ms (21.7 MiB/s) ## Flattened Device Tree blob at 01f00000    Booting using the fdt blob at 0x1f00000    Loading Ramdisk to f9f21000, end fa714feb ... OK    Loading Device Tree to 00000000f9f11000, end 00000000f9f20fff ... OK Starting kernel ... [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] [    0.000000] Linux version 5.8.0-1-ARCH (builduser@leming) (aarch64-unknown-linux-gnu-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34) #1 SMP Sun Aug 9 00:03:44 UTC 2020 [    0.000000] Machine model: Pine64 Rock64 [    0.000000] earlycon: uart8250 at MMIO32 0x00000000ff130000 (options '') [    0.000000] printk: bootconsole [uart8250] enabled [    0.000000] efi: UEFI not found. [    0.000000] cma: Reserved 64 MiB at 0x00000000fb000000 [    0.000000] Zone ranges: ... Arch Linux 5.8.0-1-ARCH (ttyS2) alarm login: root@alarm:~# uname -a Linux alarm 5.8.0-1-ARCH #1 SMP Sun Aug 9 00:03:44 UTC 2020 aarch64 GNU/Linux
  Reply
#5
@t4_4t

Which Version of uboot do you use and where to get it from?

Arch ships with --> U-Boot 2018.03-1 (Apr 02 2018 - 19:14:47 -0600) Arch Linux ARM

And it works only on Rock64_V2 as far as I know, as some Users complained it is no good on Rock64_V3 and they found an updated U-Boot for the Rock64_V3.
But I can't remember where they got it from.
  Reply
#6
I had a peek at AUR and there is no U-Boot for Rock64 only for the following boards
Quote:U-Boot for A10 OLinuXino Lime
U-Boot for A10s OLinuXino Micro
U-Boot for A13 OLinuXino
U-Boot for A13 OLinuXino Micro
U-Boot for A20 OLinuXino Lime
U-Boot for A20 OLinuXino Lime2
U-Boot for A20 OLinuXino Micro
U-Boot for BananaPi
U-Boot for Cubieboard
U-Boot for Cubieboard 2
U-Boot for Cubietruck
U-Boot for i.MX53 Quick Start Board
U-Boot for ODROID-C4
U-Boot for pcDuino
U-Boot for pcDuino3
U-Boot for pcDuino3 Nano
U-Boot for Raspberry Pi 4
U-Boot for RockPro64
U-Boot tools RCs


Then I had a poke around at ftp://ftp.denx.de/pub/u-boot/
Which are the developers for U-Boot and even in their latest file u-bbot-2020.10-rc1.tar.bz2 there is in the Pine64 subfolder only a makefile for pinebook-pro-rk3399 and rockpro_rk3399 Huh
  Reply
#7
> Which Version of u-boot do you use and where to get it from ?
https://github.com/u-boot/u-boot/commits/master
I made modifications based on the above. (for example, to work in Ver3)

> And it works only on Rock64_V2....Rock64_V3 ?
Board is Rock64_V3.
But, my board cannot operate stably at DDR3=800MHz.
Since it can not be helped, I have lowered it to DDR3 = 666 MHz and used it.

Code:
U-Boot TPL 2020.10-rc1 [2020 08/08, commit 7d08077] (Aug 10 2020 - 09:52:51) LPDDR3, 666 MHz BW=32 Col=11 Bk=8 CS0 Row=15 CS1 Row=15 CS=2 Die BW=16 Size=4096MB ddrconfig:7 Trying to boot from BOOTROM Returning to boot ROM... U-Boot SPL 2020.10-rc1 [2020 08/08, commit 7d08077] (Aug 10 2020 - 09:52:51 +0900) Trying to boot from SPI spl_load_image: took time=462(ms) NOTICE:  BL31: v2.3(release):1056ddc NOTICE:  BL31: Built : 10:22:20, Jul 29 2020 NOTICE:  BL31: Rockchip release version: v1.2 U-Boot 2020.10-rc1 [2020 08/08, commit 7d08077] (Aug 10 2020 - 09:53:21 +0900) Model: Pine64 Rock64 (ver3) DRAM:  4 GiB PMIC:  RK8050 (on=0x10, off=0x00) MMC:  mmc@ff500000: 1, mmc@ff520000: 0 SF:    Detected gd25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB In:    serial Out:  vidconsole Err:  vidconsole Net:  eth0: ethernet@ff540000 Hit any key to stop autoboot:  0 => run bootcmd_mmc1 ....

I have changed the boot-loader quite a bit.
So I think my example is useless except this case is likely a boot-loader issue.
  Reply
#8
(08-10-2020, 02:40 AM)t4_4t Wrote: Probably a boot-loader problem.
I tried using another boot-loader (mainline-base).
As a result, it starts normally as follows.

Code:
=> run bootcmd_mmc1 switch to partitions #0, OK mmc1 is current device Scanning mmc 1:1... Found U-Boot script /boot/boot.scr 890 bytes read in 5 ms (173.8 KiB/s) ## Executing script at 00500000 37171712 bytes read in 1612 ms (22 MiB/s) 50174 bytes read in 11 ms (4.3 MiB/s) 8339435 bytes read in 367 ms (21.7 MiB/s) ## Flattened Device Tree blob at 01f00000    Booting using the fdt blob at 0x1f00000    Loading Ramdisk to f9f21000, end fa714feb ... OK    Loading Device Tree to 00000000f9f11000, end 00000000f9f20fff ... OK Starting kernel ... [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] [    0.000000] Linux version 5.8.0-1-ARCH (builduser@leming) (aarch64-unknown-linux-gnu-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34) #1 SMP Sun Aug 9 00:03:44 UTC 2020 [    0.000000] Machine model: Pine64 Rock64 [    0.000000] earlycon: uart8250 at MMIO32 0x00000000ff130000 (options '') [    0.000000] printk: bootconsole [uart8250] enabled [    0.000000] efi: UEFI not found. [    0.000000] cma: Reserved 64 MiB at 0x00000000fb000000 [    0.000000] Zone ranges: ... Arch Linux 5.8.0-1-ARCH (ttyS2) alarm login: root@alarm:~# uname -a Linux alarm 5.8.0-1-ARCH #1 SMP Sun Aug 9 00:03:44 UTC 2020 aarch64 GNU/Linux


Could you share your /boot/boot.scr?
  Reply
#9
hello

check the kernel bootargs in your boot partition boot.scr


You should see:

earlycon=uart8250,mmio32,0xff130000




If you see:

earlycon=uart8250,mmio32,0xff1a0000


That is for the rockpro64 board I think and will cause the kernel to not load like you see there. If that's the case you need to use mkimage to make the appropriate boot.scr or double check that you installed for the rock64 and not the rockpro64, easy mixup to make
  Reply
#10
This https://archlinuxarm.org/forum/viewtopic...67&t=14576 recipe works for me. Kernel starts and system works, as it seems. Some people report, that the rock64 is unstable with memory operating at 800Mhz. But for now my board looks like it is all fine. Memory frequency which u-boot sets can be adjusted as described here https://git.opel-online.de/kabbone/rock6...4/PKGBUILD
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  irradium (based on crux linux) Rock64 riscv64, aarch64 mara 14 21,490 09-27-2026, 11:55 AM
Last Post: mara
  How to boot an older, working kernel bits 0 3,078 11-01-2024, 04:43 PM
Last Post: bits
  Debian installation via sd card oaFJSADBKV 0 2,673 10-12-2024, 10:24 AM
Last Post: oaFJSADBKV
  arch rock64 does not boot nemnob 1 5,069 09-20-2024, 11:18 AM
Last Post: AwU2HBg
  MIPI-CSI IMX214 on Linux NO SUCCESS zeus666 2 5,077 06-02-2023, 07:52 AM
Last Post: diederik
  Linux 5.15 Kernel - openSuse mark1250 0 3,055 12-02-2021, 04:36 PM
Last Post: mark1250
  Security Patches for the Kernel kwinz 9 14,680 10-22-2021, 05:45 AM
Last Post: kwinz
  Alpine Linux isndw 12 30,766 08-12-2021, 05:41 PM
Last Post: pix
Lightbulb RK3399 Linux rtl8822cu module bluetooth not working shivarj89 0 3,087 07-29-2021, 07:19 AM
Last Post: shivarj89
Information Linux Mainline ayufan 63 147,305 05-14-2021, 10:41 AM
Last Post: Wizzard

Forum Jump:


Users browsing this thread: 2 Guest(s)