Jump to content

ScottN

Members
  • Posts

    23
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Thank you for your replies. Right now it seems that any new image won't reliably power on the PCIe controller. I've emailed efectn who maintains the Orange Pi 5 Armbian image and he is going to look into if there are some reset gpio changes. I'm not dead in the water on my end. My older Armbian Jammy 5.1 kernel still works and boots. I just need to flash the MTD on the board with the new image Orange Pi official released in July of 2024. Also any official OS image from Orange Pi will boot and show PCIe devices connected, so I can prep my storage device that way prior to booting my Armbian image. I've gone back in time pretty far with older Armbian images for OPi5 board and it seems this issue has existed for a while because they all seem to have issues activating the PCIe. Honestly don't know if that's an issue with reset gpio that efectn is looking into or something else. That's pretty low level for me to know for sure.
  2. I have moved back to testing with Joshua-Riek's ubuntu-rockchip builds. I'm using the "ubuntu-22.04.3-preinstalled-desktop-arm64-orangepi-5.img" image downloaded from https://joshua-riek.github.io/ubuntu-rockchip-download/boards/orangepi-5.html That version of 22.04.3 is exhibiting the same thing as Armbian where PCIe/NVMe controller is not powered on it seems. Below is the dmesg output desktop:~$ dmesg | grep -i pcie [ 8.122563] reg-fixed-voltage vcc3v3-pcie2x1l2: Looking up vin-supply from device tree [ 8.122566] vcc3v3_pcie2x1l2: supplied by vcc5v0_sys [ 8.177639] vcc3v3_pcie2x1l2: 1800 mV, enabled [ 8.177702] reg-fixed-voltage vcc3v3-pcie2x1l2: vcc3v3_pcie2x1l2 supplying 1800000uV [ 9.001385] rk-pcie fe190000.pcie: invalid prsnt-gpios property in node [ 9.001395] rk-pcie fe190000.pcie: Looking up vpcie3v3-supply from device tree [ 9.002077] rk-pcie fe190000.pcie: IRQ msi not found [ 9.002112] rk-pcie fe190000.pcie: use outband MSI support [ 9.002119] rk-pcie fe190000.pcie: Missing *config* reg space [ 9.002151] rk-pcie fe190000.pcie: host bridge /pcie@fe190000 ranges: [ 9.002181] rk-pcie fe190000.pcie: err 0x00f4000000..0x00f40fffff -> 0x00f4000000 [ 9.002199] rk-pcie fe190000.pcie: IO 0x00f4100000..0x00f41fffff -> 0x00f4100000 [ 9.002216] rk-pcie fe190000.pcie: MEM 0x00f4200000..0x00f4ffffff -> 0x00f4200000 [ 9.002267] rk-pcie fe190000.pcie: MEM 0x0a00000000..0x0a3fffffff -> 0x0a00000000 [ 9.002299] rk-pcie fe190000.pcie: Missing *config* reg space [ 9.002342] rk-pcie fe190000.pcie: invalid resource [ 9.210057] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 9.235591] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 9.262255] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 9.288914] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 9.315597] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 9.342261] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 9.368923] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 9.395590] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 9.422255] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 9.448922] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 10.226537] rockchip-pm-domain fd8d8000.power-management:power-controller: Looking up pcie-supply from device tree [ 10.226557] rockchip-pm-domain fd8d8000.power-management:power-controller: Looking up pcie-supply property in node /power-management@fd8d8000/power-controller failed [ 11.912625] rk-pcie fe190000.pcie: PCIe Link Fail [ 11.912779] rk-pcie fe190000.pcie: failed to initialize host I'm going to now move onto more recent versions of "ubuntu-rockchip" like 24.04 and 24.10 and report back
  3. Here is the UART output of booting the opi5 on the unofficial 6.1 image I made if this is of value [tio 05:58:43] tio v1.32 [tio 05:58:43] Press ctrl-t q to quit [tio 05:58:43] Connected DDR Version V1.08 20220617 LPDDR4X, 2112MHz channel[0] BW=16 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=1024MB channel[1] BW=16 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=1024MB channel[2] BW=16 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=1024MB channel[3] BW=16 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=1024MB Manufacturer ID:0xff CH0 RX Vref:28.7%, TX Vref:22.8%,0.0% CH1 RX Vref:31.7%, TX Vref:23.8%,0.0% CH2 RX Vref:31.7%, TX Vref:20.8%,0.0% CH3 RX Vref:30.7%, TX Vref:22.8%,0.0% change to F1: 528MHz change to F2: 1068MHz change to F3: 1560MHz change to F0: 2112MHz out U-Boot SPL board init U-Boot SPL 2017.09-orangepi-rk3588 (Jun 27 2023 - 23:16:07) Trying to boot from MMC1 Trying fit image at 0x4000 sector ## Verified-boot: 0 ## Checking atf-1 0x00040000 ... sha256(2e8446f969...) + OK ## Checking uboot 0x00200000 ... sha256(71d16432e9...) + OK ## Checking fdt 0x0034f598 ... sha256(906c87aa7c...) + OK ## Checking atf-2 0xff100000 ... sha256(9f75e6ec37...) + OK ## Checking atf-3 0x000f0000 ... sha256(c80587de50...) + OK Jumping to U-Boot(0x00200000) via ARM Trusted Firmware(0x00040000) Total: 750.347 ms INFO: Preloader serial: 2 NOTICE: BL31: v2.3():v2.3-662-g4acbe711b-dirty:finley.xiao, fwver: v1.44 NOTICE: BL31: Built : 16:44:24, Nov 7 2023 INFO: spec: 0x13 INFO: code: 0x88 INFO: ext 32k is valid INFO: ddr: stride-en 4CH INFO: GICv3 without legacy support detected. INFO: ARM GICv3 driver initialized in EL3 INFO: valid_cpu_msk=0xff bcore0_rst = 0x0, bcore1_rst = 0x0 INFO: l3 cache partition cfg-0 INFO: system boots from cpu-hwid-0 INFO: idle_st=0x21fff, pd_st=0x11fff9, repair_st=0xfff70001 ERROR: dfs get fsp_params[0] error, 0xfead0001 != 0xfead0004 ERROR: dfs get fsp_params[1] error, 0xa54 != 0xfead0004 ERROR: dfs get fsp_params[2] error, 0xbc != 0xfead0004 ERROR: dfs get fsp_params[3] error, 0x3f0033 != 0xfead0004 ERROR: loader&trust unmatch!!! Please update loader if need enable dmc ERROR: current trust bl31 need match with loader ddr bin V1.13 or newer ERROR: current loader need match with trust bl31 V1.07-V1.37 INFO: BL31: Initialising Exception Handling Framework 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 2017.09 (Dec 27 2024 - 03:11:19 +0000) Model: Orange Pi 5 MPIDR: 0x81000000 PreSerial: 2, raw, 0xfeb50000 DRAM: 3.7 GiB Sysmem: init Relocation Offset: eda0e000 Relocation fdt: eb9f9250 - eb9fecb8 CR: M/C/I Using default environment DM: v2 mmc@fe2c0000: 1, mmc@fe2e0000: 0 Card did not respond to voltage select! mmc_init: -95, time 13 switch to partitions #0, OK mmc1 is current device Boot from SDcard Bootdev(scan): mmc 1 MMC1: Legacy, 52Mhz PartType: EFI No misc partition boot mode: None FIT: No boot partition Failed to load DTB, ret=-2 No valid DTB, ret=-22 Failed to get kernel dtb, ret=-22 Model: Orange Pi 5 MPIDR: 0x81000000 CLK: (sync kernel. arm: enter 1008000 KHz, init 1008000 KHz, kernel 0N/A) b0pll 24000 KHz b1pll 24000 KHz lpll 24000 KHz v0pll 24000 KHz aupll 24000 KHz cpll 1500000 KHz gpll 1188000 KHz npll 24000 KHz ppll 1100000 KHz aclk_center_root 702000 KHz pclk_center_root 100000 KHz hclk_center_root 396000 KHz aclk_center_low_root 500000 KHz aclk_top_root 750000 KHz pclk_top_root 100000 KHz aclk_low_top_root 396000 KHz No misc partition Net: No ethernet found. Hit key to stop autoboot('CTRL+C'): 0 starting USB... Bus usb@fc000000: usb maximum-speed not found Register 2000140 NbrPorts 2 Starting the controller USB XHCI 1.10 Bus usb@fc800000: USB EHCI 1.00 Bus usb@fc840000: USB OHCI 1.0 Bus usb@fc880000: USB EHCI 1.00 Bus usb@fc8c0000: USB OHCI 1.0 Bus usb@fcd00000: usb maximum-speed not found Register 2000140 NbrPorts 2 Starting the controller USB XHCI 1.10 scanning bus usb@fc000000 for devices... 1 USB Device(s) found scanning bus usb@fc800000 for devices... 1 USB Device(s) found scanning bus usb@fc840000 for devices... 1 USB Device(s) found scanning bus usb@fc880000 for devices... 1 USB Device(s) found scanning bus usb@fc8c0000 for devices... 1 USB Device(s) found scanning bus usb@fcd00000 for devices... 1 USB Device(s) found scanning usb for storage devices... 0 Storage Device(s) found Device 0: unknown device switch to partitions #0, OK mmc1 is current device Scanning mmc 1:1... Found U-Boot script /boot/boot.scr 4149 bytes read in 25 ms (161.1 KiB/s) ## Executing script at 00500000 Boot script loaded from mmc 1:1 244 bytes read in 23 ms (9.8 KiB/s) 16877874 bytes read in 1393 ms (11.6 MiB/s) 39770624 bytes read in 3230 ms (11.7 MiB/s) 249244 bytes read in 298 ms (816.4 KiB/s) Trying kaslrseed command... Info: Unknown command can be safely ignored since kaslrseed does not apply to all boards. Unknown command 'kaslrseed' - try 'help' Fdt Ramdisk skip relocation No misc partition ## Loading init Ramdisk from Legacy Image at 0a200000 ... Image Name: uInitrd Image Type: AArch64 Linux RAMDisk Image (gzip compressed) Data Size: 16877810 Bytes = 16.1 MiB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK ## Flattened Device Tree blob at 0x08300000 Booting using the fdt blob at 0x08300000 reserving fdt memory region: addr=8300000 size=a3000 Using Device Tree in place at 0000000008300000, end 00000000083a5fff WARNING: could not set reg FDT_ERR_BADOFFSET. ## reserved-memory: cma: addr=10000000 size=10000000 ramoops@110000: addr=110000 size=e0000 Adding bank: 0x00200000 - 0xf0000000 (size: 0xefe00000) Total: 13710.462/13739.216 ms Starting kernel ... Armbian-unofficial 25.02.0-trunk Jammy ttyFIQ0 orangepi5 login:
  4. Hello, @Werner thank you for your response. I was confused with what current meant and made my own assumptions that would be the most feature rich and stable, and the others were less reliable. OK, so I did the script again and now the output filename is "Armbian-unofficial_25.02.0-trunk_Orangepi5_jammy_vendor_6.1.84_gnome_desktop.img" which I assume it's using kernel version 6.1 I'm still experiencing the problem with no NVMe drive detected when booting that image. The NVMe drive is connected and like I mentioned above when using the microSD from Josua-Riek's ubuntu-rockchip the drive is detected, although the u-boot/bootloader does not know what to do with it on power on. I have a UART connection and will attempt to get some more information on this and also Armbian image when booting microSD. Here is the "lsblk" and "lspci" results of the booted image _ _ _ __ __ _ _ _ /_\ _ _ _ __ | |__(_)__ _ _ _ ___ _ _ _ _ ___ / _|/ _(_)__(_)__ _| | / _ \| '_| ' \| '_ \ / _` | ' \___| || | ' \/ _ \ _| _| / _| / _` | | /_/ \_\_| |_|_|_|_.__/_\__,_|_||_| \_,_|_||_\___/_| |_| |_\__|_\__,_|_| v25.02 rolling for Orange Pi 5 running Armbian Linux 6.1.84-vendor-rk35xx Packages: Ubuntu stable (jammy), possible distro upgrade (noble) Updates: Kernel upgrade enabled and 1 package available for upgrade Support: DIY (custom image) IP addresses: (LAN) IPv4: 192.168.1.117 IPv6: fe80::64ef:39d1:7886:e27b (WAN) 47.156.182.141 Performance: Load: 6% Up time: 2 min Local users: 2 Memory usage: 13% of 3.64G CPU temp: 35°C Usage of /: 14% of 29G Commands: Configuration : armbian-config Upgrade : armbian-upgrade Monitoring : htop Last login: Tue Dec 31 05:44:35 PST 2024 on ttyFIQ0 root@orangepi5:~# lspci root@orangepi5:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS mtdblock0 31:0 0 16M 0 disk mmcblk1 179:0 0 29.7G 0 disk \u2514\u2500mmcblk1p1 179:1 0 29.4G 0 part /var/log.hdd / zram0 253:0 0 1.8G 0 disk [SWAP] zram1 253:1 0 50M 0 disk /var/log zram2 253:2 0 0B 0 disk root@orangepi5:~# Here is the dmesg output of pcie root@orangepi5:~# dmesg | grep -i pcie [ 16.110866] reg-fixed-voltage vcc3v3-pcie2x1l2: Looking up vin-supply from device tree [ 16.110871] vcc3v3_pcie2x1l2: supplied by vcc5v0_sys [ 16.169012] vcc3v3_pcie2x1l2: 1800 mV, enabled [ 16.169080] reg-fixed-voltage vcc3v3-pcie2x1l2: vcc3v3_pcie2x1l2 supplying 1800000uV [ 16.231679] dw-pcie fe190000.pcie: invalid resource [ 16.231683] dw-pcie fe190000.pcie: Failed to initialize host [ 16.231686] dw-pcie: probe of fe190000.pcie failed with error -22 [ 16.232169] rk-pcie fe190000.pcie: invalid prsnt-gpios property in node [ 16.232215] rk-pcie fe190000.pcie: Looking up vpcie3v3-supply from device tree [ 16.232671] rk-pcie fe190000.pcie: host bridge /pcie@fe190000 ranges: [ 16.232686] rk-pcie fe190000.pcie: IO 0x00f4100000..0x00f41fffff -> 0x00f4100000 [ 16.232694] rk-pcie fe190000.pcie: MEM 0x00f4200000..0x00f4ffffff -> 0x00f4200000 [ 16.232700] rk-pcie fe190000.pcie: MEM 0x0a00000000..0x0a3fffffff -> 0x0a00000000 [ 16.232740] rk-pcie fe190000.pcie: iATU unroll: enabled [ 16.232743] rk-pcie fe190000.pcie: iATU regions: 8 ob, 8 ib, align 64K, limit 8G [ 16.434896] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 16.455911] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 16.476923] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 16.497935] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 16.518946] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 16.539957] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 16.560969] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 16.581981] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 16.602992] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 16.624003] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 17.111478] rockchip-pm-domain fd8d8000.power-management:power-controller: Looking up pcie-supply from device tree [ 17.111528] rockchip-pm-domain fd8d8000.power-management:power-controller: Looking up pcie-supply property in node /power-management@fd8d8000/power-controller failed [ 18.532374] rk-pcie fe190000.pcie: PCIe Link Fail, LTSSM is 0x3, hw_retries=0 [ 21.449527] rk_pcie_establish_link: 172 callbacks suppressed [ 21.449539] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 21.470573] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 21.491663] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 21.511769] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 21.532795] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 21.553875] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 21.574953] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 21.596031] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 21.617109] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 21.638188] rk-pcie fe190000.pcie: PCIe Linking... LTSSM is 0x3 [ 21.827150] rk-pcie fe190000.pcie: PCIe Link Fail, LTSSM is 0x3, hw_retries=1 [ 22.845095] rk-pcie fe190000.pcie: failed to initialize host root@orangepi5:~#
  5. Hello all. Trying to get PCIe/NVMe working (even to show on microSD boot, let alone boot NVMe) on a custom compile on my Orange Pi 5 SBC version 1.3.2, because the official images aren't working either for me. No idea where to go from here and need some assistance as NVMe is required for my purpose. Here is what I did during compile.sh > Show kernel config > Board: orangepi5 > Kernel: current > Target: jammy > Image with desktop > Gnome desktop > Base configuration > Tick: Browsers > Device Drivers > PCI support > (default values) > Device Drivers > NVME Support > (default values) I used "SHARE_LOG=yes" but got below error at the end so I'm guessing it did not upload. I'm attaching it instead. SHARE_LOG=yes, uploading log [ uploading logs ] Log uploaded, share URL: [ <!DOCTYPE html> <html lang=en> <head> <meta charset=utf-8> <title>Error</title> </head> <body> <pre>Cannot POST /log</pre> </body> </html> ] Repeat build options Repeat Build Options [ ./compile.sh build BOARD=orangepi5 BRANCH=current BUILD_DESKTOP=yes BUILD_MINIMAL=no DESKTOP_APPGROUPS_SELECTED=browsers DESKTOP_ENVIRONMENT=gnome DESKTOP_ENVIRONMENT_CONFIG_NAME=config_base KERNEL_CONFIGURE=yes RELEASE=jammy SHARE_LOG=yes ] Side notes: I've tested with Joshua-Riek's ubuntu-rockchip builds here https://github.com/Joshua-Riek/ubuntu-rockchip/releases After writing the 22.04 version 3 to the microSD card, then boot to the microSD card on the SBC, doing lsblk lists the NVMe drive just fine. I use the tools this provides to copy the current configuration to the NVMe, update the bootloader, shutdown and only attempt to boot from NVMe and it does not work. So that is working a bit more than Armbian, but still not dedicated NVMe boot. I found this issue that talked about some Armbian changes to the DTS files for the arm64 boot on linux-rockchip, that seems to be the NVMe is not enabled? Here is that link: https://github.com/Joshua-Riek/ubuntu-rockchip/issues/709 One person was able to re-compile the DTS to DTB and manually update and dmesg output seems to work. This is where I'm lost as I've never compiled the device tree before. Assistance is greatly appreciated! Thanks! log-build-7d071dfd-1b54-45cf-8488-2bc8b5e62079.zip
  6. That is correct, I've managed to deal with it but have no concrete solution yet. I'm not using the OPi 5 Plus, but I have about 70 regular OPi 5's built so far and running in embedded environments, so have some experience with what is working and what isn't. I'm not sure if the OPi 5 Plus has the same bootloader and potentially the same issue. I believe the Armbian u-boot binary may have issues but I cannot point to a specific issue. I had more reliability when I downloaded and flashed the bootloader with an alternative u-boot from this project: https://github.com/Joshua-Riek/ubuntu-rockchip/releases and I've noticed it is more reliable when booting up and detecting a storage device to boot from (I even did a crontab delay for a few days with no issues booting back up). I've also enabled the watchdog within Ubuntu and combined with 'shutdown -H 0' as a way to reboot, the watchdog seems to power cycle the board more fully so storage devices are found on boot to choose from for u-boot. This is just my educated guess with my own experience and have no assurances that it has fixed anything, I was trying multiple angles here and still use this method though. I've started buying a different brand NVMe drive as maybe the one I bought for those 50-ish boards is the cause all along. But again, not 100% sure and haven't used enough of the new brand NVMe drives to test yet. Although if you're using a 980 Samsung, that's a pretty well established NVMe brand and makes me wonder now if it isn't the NVMe brand after all... I looked into doing my own build of u-boot that could potentially have its own watchdog that if it doesn't boot within 30-60 seconds, it will issue its own watchdog reboot. But I have no experience in building a custom u-boot. I'd still like to investigate this route but I haven't had time. If you know anyone that has done this, I'd like to chat Hope this helps! Scott
  7. I'm not sure what to think about that crash above. I reset the board (unplug/replug) and let it go for almost 24 hours of it rebooting every 2 minutes (network or no network) and it worked good. So I believe this other Orange Pi 5 U-Boot build I found may work better for us. I'll be testing more boards with this bootloader as well. If continued success I'll probably just write this off and use this one going forward.
  8. I was able to get some info on a failure. See below. Is this stack trace from the Linux/Armbian kernel or was this U-Boot crash? [ OK ] Finished System Reboot. [ OK ] Reached target System Reboot. [ 133.995572] watchdog: watchdog0: watchdog did not stop! [ 134.573158] reboot: Restarting system DDR Version V1.08 20220617 LPDDR4X, 2112MHz channel[0] BW=16 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=1024MB channel[1] BW=16 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=1024MB channel[2] BW=16 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=1024MB channel[3] BW=16 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=1024MB Manufacturer ID:0x1 Samsung CH0 RX Vref:32.7%, TX Vref:18.8%,0.0% CH1 RX Vref:34.7%, TX Vref:17.8%,0.0% CH2 RX Vref:30.7%, TX Vref:18.8%,0.0% CH3 RX Vref:31.7%, TX Vref:17.8%,0.0% change to F1: 528MHz change to F2: 1068MHz change to F3: 1560MHz change to F0: 2112MHz out U-Boot SPL board init U-Boot SPL 2017.09-orangepi-rk3588 (Jun 27 2023 - 23:16:07) Trying to boot from MMC1 spl: mmc init failed with error: -123 Trying to boot from MMC2 Card did not respond to voltage select! spl: mmc init failed with error: -95 Trying to boot from MTD2 Trying fit image at 0x4000 sector ## Verified-boot: 0 ## Checking atf-1 0x00040000 ... sha256(d21d14728d...) + OK ## Checking uboot 0x00200000 ... sha256(b6a01cccca...) + OK ## Checking fdt 0x0034a198 ... sha256(6a0656d703...) + OK ## Checking atf-2 0x000f0000 ... sha256(c00c7fd75b...) + OK ## Checking atf-3 0xff100000 ... sha256(71c3a5841b...) + OK ## Checking atf-4 0xff001000 ... sha256(2301cf73be...) + OK Jumping to U-Boot(0x00200000) via ARM Trusted Firmware(0x00040000) Total: 506.477 ms INFO: Preloader serial: 2 NOTICE: BL31: v2.3():v2.3-391-g856309329:derrick.huang NOTICE: BL31: Built : 14:15:50, Jul 18 2022 INFO: ext 32k is valid INFO: GICv3 without legacy support detected. INFO: ARM GICv3 driver initialized in EL3 INFO: system boots from cpu-hwid-0 INFO: idle_st=0x21fff, pd_st=0x11fff9, repair_st=0xfff70001 INFO: dfs DDR fsp_params[0].freq_mhz= 2112MHz INFO: dfs DDR fsp_params[1].freq_mhz= 528MHz INFO: dfs DDR fsp_params[2].freq_mhz= 1068MHz INFO: dfs DDR fsp_params[3].freq_mhz= 1560MHz INFO: BL31: Initialising Exception Handling Framework 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 2017.09-orangepi-rk3588 (Jun 27 2023 - 23:16:07 +0000) Model: Orange Pi 5 PreSerial: 2, raw, 0xfeb50000 DRAM: 3.7 GiB Sysmem: init Relocation Offset: eda2c000 Relocation fdt: eb9f8e48 - eb9fecb0 CR: M/C/I Using default environment mmc@fe2c0000: 0, mmc@fe2e0000: 1 Device 0: unknown device Card did not respond to voltage select! Device 0: unknown device Device 1: Device 2: SF: Detected sfc_nor with page size 256 Bytes, erase size 4 KiB, total 16 MiB Vendor: 0x2207 Rev: V1.00 Prod: sfc_nor Type: Hard Disk Capacity: 16.0 MB = 0.0 GB (32768 x 512) ... is now current device Bootdev(scan): mtd 2 PartType: EFI DM: v2 boot mode: normal Model: Orange Pi 5 CLK: (sync kernel. arm: enter 1008000 KHz, init 1008000 KHz, kernel 0N/A) b0pll 24000 KHz b1pll 24000 KHz lpll 24000 KHz v0pll 24000 KHz aupll 24000 KHz cpll 1500000 KHz gpll 1188000 KHz npll 24000 KHz ppll 1100000 KHz aclk_center_root 702000 KHz pclk_center_root 100000 KHz hclk_center_root 396000 KHz aclk_center_low_root 500000 KHz aclk_top_root 750000 KHz pclk_top_root 100000 KHz aclk_low_top_root 396000 KHz Net: No ethernet found. Hit key to stop autoboot('CTRL+C'): 0 mmc@fe2c0000: 0 mmc@fe2e0000: 1 Card did not respond to voltage select! Device 0: Vendor: 0x10ec Rev: VC2S038E Prod: C24DA05003111044201 Type: Hard Disk Capacity: 976762.3 MB = 953.8 GB (2000409264 x 512) ... is now current device Scanning nvme 0:1... Found U-Boot script /boot.scr reading /boot.scr 3476 bytes read in 0 ms ## Executing script at 00500000 Boot script loaded from nvme 0 reading /armbianEnv.txt 213 bytes read in 1 ms (208 KiB/s) reading /uInitrd 18472747 bytes read in 48 ms (367 MiB/s) Failed to mount ext2 filesystem... ** Unrecognized filesystem type ** reading /dtb/rockchip/rk3588s-orangepi-5.dtb 234767 bytes read in 2 ms (111.9 MiB/s) ** Unable to read file /dtb/rockchip/overlay/rockchip-rk3588-fixup.scr ** Unknown command 'kaslrseed' - try 'help' Fdt Ramdisk skip relocation ## Loading init Ramdisk from Legacy Image at 0a200000 ... Image Name: uInitrd Image Type: AArch64 Linux RAMDisk Image (gzip compressed) Data Size: 18472683 Bytes = 17.6 MiB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK ## Flattened Device Tree blob at 0x0a100000 Booting using the fdt blob at 0x0a100000 reserving fdt memory region: addr=a100000 size=9f000 'reserved-memory' ramoops@110000: addr=110000 size=f0000 Using Device Tree in place at 000000000a100000, end 000000000a1a1fff Adding bank: 0x00200000 - 0xf0000000 (size: 0xefe00000) Total: 2064.838 ms Starting kernel ... "Synchronous Abort" handler, esr 0x02000000 * Reason: Exception from an unknown reason * PC = ffffffff14054000 * LR = 00000000002022b8 * SP = 00000000eb9f6ba0 * ESR_EL2 = 0000000002000000 * Reloc Off = 00000000eda2c000 x0 : 000000000a100000 x1 : 0000000000000000 x2 : 0000000000000000 x3 : 0000000000000000 x4 : 0000000000400000 x5 : 0000000000000001 x6 : 0000000000000008 x7 : 0000000000000004 x8 : 00000000eb9f6d28 x9 : 0000010000000000 x10: 00000000ffffffd0 x11: 0000000000000006 x12: 000000000001869f x13: 00000000eb9ffce6 x14: 000000000a100000 x15: 0000000000000002 x16: 00000000edca156c x17: 0000000000000005 x18: 00000000eb9ffcd0 x19: 0000000000000400 x20: 00000000edd76d70 x21: 0000000000000000 x22: 0000000000000003 x23: 00000000ebc3d338 x24: 00000000ebc3d338 x25: 00000000edd511b8 x26: 0000000000000000 x27: 0000000000000400 x28: 00000000ebc3d360 x29: 00000000eb9f6d80 Call trace: PC: [< ffffffff14054000 >] LR: [< 002022b8 >] Stack: [< ffffffff14054000 >] [< 0021b084 >] [< 0021ab44 >] [< 0022f970 >] [< 00218d28 >] [< 00218edc >] [< 0021862c >] [< 00218be0 >] [< 00218edc >] [< 002185f0 >] [< 0022ee90 >] [< 00208908 >] [< 00208a10 >] [< 0022f970 >] [< 00218d28 >] [< 00218edc >] [< 0021862c >] [< 00218be0 >] [< 00218edc >] [< 002185f0 >] [< 0022ef20 >] [< 0022f970 >] [< 00218d28 >] [< 002189bc >] [< 002189bc >] [< 00218edc >] [< 002185f0 >] [< 0022ef20 >] [< 0022f970 >] [< 00218d28 >] [< 002189bc >] [< 00218edc >] [< 002185f0 >] [< 0022ef20 >] [< 0022f970 >] [< 00218d28 >] [< 002189bc >] [< 002189bc >] [< 00218edc >] [< 002185f0 >] [< 0022ef20 >] [< 0022f970 >] [< 00218d28 >] [< 002189bc >] [< 00218edc >] [< 002185f0 >] [< 0022ef20 >] [< 0022f970 >] [< 00218d28 >] [< 00218edc >] [< 002185f0 >] [< 0022ef20 >] [< 0022f970 >] [< 00218d28 >] [< 00218edc >] [< 0021862c >] [< 00218be0 >] [< 002189bc >] [< 00218edc >] [< 002185f0 >] [< 0022ef20 >] [< 0022f970 >] [< 00218d28 >] [< 00218edc >] [< 002185f0 >] [< 0022ee90 >] [< 0021957c >] [< 0021741c >] [< 00219c1c >] [< 002a78bc >] [< 00219e58 >] [< 00201e18 >] Copy info from "Call trace..." to a file(eg. dump.txt), and run command in your U-Boot project: ./scripts/stacktrace.sh dump.txt Resetting CPU ... ### ERROR ### Please RESET the board ###
  9. Oh, the reason to go down the U-Boot path is to customize its behavior to our needs. Namely disable any network boot attempts and also setting an environment variable for 'bootdelay' that will issue that reset command after say 30 seconds. If that was put in there, it is at least a last ditch effort for the board to try again if it failed to boot like I'm experiencing. I looked into modifying the boot loader image I found at the link above, but I can't even mount the .img file env partition. I get "mount: wrong fs type, bad option, bad superblock missing codepage or helper program, or other error", even using a loop device and offset. So even if I could get that, I would need to be able to mount in write mode. Seems like a bad path to go down if I can just get the "defconfig" for the OPi5 SBC and just build a new U-Boot image and flash the MTD storage.
  10. Hi ArmBoy1988, yes we use these as small media players, think of like signage and other things in public spaces. I've been reading up on U-Boot more, which seems to be the boot loader here. I found another boot loader from a small project here which I downloaded the image, wrote to a microsd, and copied off the 'rkspi_loader.img' file from there, and then used dd to write that to '/dev/mtdblock0'. That boots the OPi on the NVMe just fine. I created a '@reboot' crontab that waits a couple minutes and issues a normal reboot. I'm monitoring the serial output doing this to a file. What I've noticed (but still testing to confirm) is if I do NOT connect the network cable, this thing reboots great for hours on end, no issues. So I have to rule out the NVMe at that point I suppose? I'm about to try to test by connecting the network cable back up and see if after a bit it hangs. Btw, when it did hang with the different boot loader, I was at the u-boot command prompt, I did the NVMe command to list devices and the storage is there. I then just issued a reset command and it booted just fine. So with that, my suspicion is maybe U-Boot is trying a network boot and failing? I'm starting to now research doing my own custom U-Boot configuration, but I cannot find the OPi5 'defconfig'. The github repo doesn't seem to include one there. So curious if anyone here knows where I can obtain that? I don't want to just start trying different configs, because I could brick the SBC I think with a bad boot loader. This is what I know so far after trial and errors and testing
  11. I've been having a heck of a time trying to catch this issue with the devices I have as I'm setting them up. If I'm preparing a batch of them, say of 10, 2 of them will act up then not agaom. Of course I cannot have a TTY connection open to all of them at once so it's by sheer luck that I can have the serial connected and it'll happen. I haven't been able to be that lucky yet so I don't know. But what I have now is one that hung on boot, I left it there and it's powered on, so I connected the serial connection and when I hit enter, I get a "opi#" prompt. Is there any way to print any log files from this that could tell me anything? Or anything I can do to help diagnose why it did not start the Linux kernel? EDIT: So help shows some things I can do. Listed below. But if I do 'nvme device' I get 'no nvme devices available'. Which could be why it won't boot to an nvme ? - alias for 'help' android_print_hdr- print android image header atags - Dump all atags base - print or set address offset bdinfo - print Board Info structure bidram_dump- Dump bidram layout blk - Block device sub-system boot - boot default, i.e., run 'bootcmd' boot_android- Execute the Android Bootloader flow. boot_fit- Boot FIT Image from memory or boot/recovery partition bootavb - Execute the Android avb a/b boot flow. bootd - boot default, i.e., run 'bootcmd' booti - boot arm64 Linux Image image from memory bootm - boot application image from memory bootp - boot image via network using BOOTP/TFTP protocol bootz - boot Linux zImage image from memory charge - Charge display charge_pd- Charge select cmp - memory compare coninfo - print console devices and information cp - memory copy crc32 - checksum calculation crypto_sum- crypto checksum engine dhcp - boot image via network using DHCP/TFTP protocol dm - Driver model low level access download- enter rockusb/bootrom download mode dtimg - manipulate dtb/dtbo Android image dump_irqs- Dump IRQs dump_resource- dump resource list echo - echo args to console editenv - edit environment variable env - environment handling commands exit - exit script ext2load- load binary file from a Ext2 filesystem ext2ls - list files in a directory (default /) ext4load- load binary file from a Ext4 filesystem ext4ls - list files in a directory (default /) ext4size- determine a file's size false - do nothing, unsuccessfully fastboot- use USB or UDP Fastboot protocol fatinfo - print information about filesystem fatload - load binary file from a dos filesystem fatls - list files in a directory (default /) fatsize - determine a file's size fatwrite- write file into a dos filesystem fdt - flattened device tree utility commands fstype - Look up a filesystem type go - start application at address 'addr' gpt - GUID Partition Table help - print command description/usage iomem - Show iomem data by device compatible(high priority) or node name lcdputs - print string on video framebuffer load - load binary file from a filesystem loop - infinite loop on address range ls - list files in a directory (default /) md - memory display mdio - MDIO utility commands mii - MII utility commands mm - memory modify (auto-incrementing address) mmc - MMC sub system mmcinfo - display MMC info mtd_blk - MTD Block device sub-system mw - memory write (fill) nfs - boot image via network using NFS protocol nm - memory modify (constant address) nvme - NVM Express sub-system part - disk partition related commands pci - list and access PCI Configuration Space ping - send ICMP ECHO_REQUEST to network host printenv- print environment variables pxe - commands to get and boot from pxe files rbrom - Perform RESET of the CPU reboot - Perform RESET of the CPU, alias of 'reset' reset - Perform RESET of the CPU rkimgtest- Test if storage media have rockchip image rockchip_show_bmp- load and display bmp from resource partition rockchip_show_logo- load and display log from resource partition rockusb - Use the rockusb Protocol run - run commands in an environment variable save - save file to a filesystem saveenv - save environment variables to persistent storage scsi - SCSI sub-system scsiboot- boot from SCSI device setcurs - set cursor position within screen setenv - set environment variables setexpr - set environment variable as the result of eval expression sf - SPI flash sub-system showvar - print local hushshell variables size - determine a file's size source - run script from memory sspi - SPI utility command sysboot - command to get and boot from syslinux files sysmem_dump- Dump sysmem layout sysmem_search- Search a available sysmem region test - minimal test like /bin/sh tftp - download image via network using TFTP protocol tftpbootm- tftpbootm aosp/uImage/FIT image via network using TFTP protocol tftpflash- flash image via network using TFTP protocol tftpput - TFTP put command, for uploading files to a server true - do nothing, successfully ums - Use the UMS [USB Mass Storage] usb - USB sub-system usbboot - boot from USB device version - print monitor, compiler and linker version opi# version U-Boot 2017.09-armbian (Feb 17 2023 - 22:22:49 +0000) aarch64-linux-gnu-gcc (Linaro GCC 7.4-2019.02) 7.4.1 20181213 [linaro-7.4-2019.02 revision 56ec6f6b99cc167ff0c2f8e1a2eed33b1edc85d4] GNU ld (Linaro_Binutils-2019.02) 2.28.2.20170706
  12. An update on the UART serial connection. I bought this one and used the command 'sudo tio /dev/ttyUSB0 -b 1500000 -d 8 -f none -p none -s 1' and it is working beautifully now and prompts for login and on reboots get full verbose output. So I will be able to provide some more info shortly on when the reboot hangs.
  13. That's if you have access to the board We're shipping these players out in the field for use and need to reliably reboot. As I mentioned above in a reply, having the watchdog enabled and doing a 'shutdown -H 0' halt command, the watchdog will kick and reboot the board. A little janky for sure, but a workaround. I'd really like to find why this is happening and then patch the boards in the field remotely.
  14. It connects, but when I hit ENTER on the keyboard, I get: PAcbwo`@8 When the player reboots, I get the same garbled output as previous. Below is a brief snip on when the OPi5 starts to shutdown. `@@@HAD@@$ ,@@h@`@p0@@``p`@q`HhhNCBAR 0! $0 `nBKB@@`)@@```@@@HaD@@$ ,`@L@`@p0@@`pp`@p`HHHoBC@ 0 , 6"60 X`OBBB@@@@```@p(@@H@DA@$ ,`@m@`@p0@@``p`@qh@n@HnCC@ Z 2 D[ ;" H H`n``A@ 2 2#0I@`HA`b@`C@sr`onb 2" H HX`n``@@`@`G@` 2 :"0H@`fO`B H [[ :" h H`N``A@`@`F@` 2 2#0HbE`@[Z) 2ALFR!D H 2uL D@bb` D[> h "R `n``@ :R :!2"!D 0I"12) DZ? @[ 07701100b@@No`8pb`@l`@H`E@h@`wo`C@HAP@sOHq`ANL H`N``ALF1220Ibu``HAB@L` H, And just more similar to that as it boots back up.
  15. I found the other thread trying to figure out the UART serial communication I will pick up this one that is recommended. Question is, what's the correct way to do this? The thread I linked mentions 3.3v? Any more clarification on how to do this?
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines