Jump to content

ebin-dev

Members
  • Posts

    440
  • Joined

  • Last visited

Everything posted by ebin-dev

  1. Did you add 'vendor:device:u' to usbstoragequirks in /boot/armbianEnv.txt ? (here is why this might help) Edit: example with 4 external sata hdds bridged with JMicron 578 (usbstoragequirks=152d:0578:u) # dmesg | grep 2-1.3 [ 2.544431] usb 2-1.3: new SuperSpeed USB device number 3 using xhci-hcd [ 2.565982] usb 2-1.3: New USB device found, idVendor=152d, idProduct=0578, bcdDevice= 3.01 [ 2.566017] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 2.566035] usb 2-1.3: Product: External HDD [ 2.566049] usb 2-1.3: Manufacturer: External USB3.0 [ 2.566062] usb 2-1.3: SerialNumber: 0000007788FC [ 2.567670] usb-storage 2-1.3:1.0: USB Mass Storage device detected [ 2.568719] usb-storage 2-1.3:1.0: Quirks match for vid 152d pid 0578: 1000000 [ 2.569099] scsi host0: usb-storage 2-1.3:1.0 [ 122.172373] usb 2-1.3: USB disconnect, device number 3
  2. Not so easy: Helios64 is installed in a 10" rack in the basement 2m above the floor (so that it can't be easily accessed) and it is frequently used by all my family members 🙂. Current bootloader (linux-u-boot-edge-helios64_22.02.1_arm64.deb): DDR Version 1.25 20210517 In soft reset SRX channel 0 CS = 0 MR0=0x18 MR4=0x1 MR5=0x1 MR8=0x10 MR12=0x72 MR14=0x72 MR18=0x0 MR19=0x0 MR24=0x8 MR25=0x0 channel 1 CS = 0 MR0=0x18 MR4=0x1 MR5=0x1 MR8=0x10 MR12=0x72 MR14=0x72 MR18=0x0 MR19=0x0 MR24=0x8 MR25=0x0 channel 0 training pass! channel 1 training pass! change freq to 416MHz 0,1 Channel 0: LPDDR4,416MHz Bus Width=32 Col=10 Bank=8 Row=16 CS=1 Die Bus-Width=16 Size=2048MB Channel 1: LPDDR4,416MHz Bus Width=32 Col=10 Bank=8 Row=16 CS=1 Die Bus-Width=16 Size=2048MB 256B stride channel 0 CS = 0 MR0=0x18 MR4=0x1 MR5=0x1 MR8=0x10 MR12=0x72 MR14=0x72 MR18=0x0 MR19=0x0 MR24=0x8 MR25=0x0 channel 1 CS = 0 MR0=0x18 MR4=0x1 MR5=0x1 MR8=0x10 MR12=0x72 MR14=0x72 MR18=0x0 MR19=0x0 MR24=0x8 MR25=0x0 channel 0 training pass! channel 1 training pass! channel 0, cs 0, advanced training done channel 1, cs 0, advanced training done change freq to 856MHz 1,0 ch 0 ddrconfig = 0x101, ddrsize = 0x40 ch 1 ddrconfig = 0x101, ddrsize = 0x40 pmugrf_os_reg[2] = 0x32C1F2C1, stride = 0xD ddr_set_rate to 328MHZ ddr_set_rate to 666MHZ ddr_set_rate to 928MHZ channel 0, cs 0, advanced training done channel 1, cs 0, advanced training done ddr_set_rate to 416MHZ, ctl_index 0 ddr_set_rate to 856MHZ, ctl_index 1 support 416 856 328 666 928 MHz, current 856MHz OUT Boot1 Release Time: May 29 2020 17:36:36, version: 1.26 CPUId = 0x0 ChipType = 0x10, 449 SdmmcInit=2 0 BootCapSize=100000 UserCapSize=14910MB FwPartOffset=2000 , 100000 mmc0:cmd8,20 mmc0:cmd5,20 mmc0:cmd55,20 mmc0:cmd1,20 mmc0:cmd8,20 mmc0:cmd5,20 mmc0:cmd55,20 mmc0:cmd1,20 mmc0:cmd8,20 mmc0:cmd5,20 mmc0:cmd55,20 mmc0:cmd1,20 SdmmcInit=0 1 StorageInit ok = 69151 SecureMode = 0 SecureInit read PBA: 0x4 SecureInit read PBA: 0x404 SecureInit read PBA: 0x804 SecureInit read PBA: 0xc04 SecureInit read PBA: 0x1004 SecureInit read PBA: 0x1404 SecureInit read PBA: 0x1804 SecureInit read PBA: 0x1c04 SecureInit ret = 0, SecureMode = 0 atags_set_bootdev: ret:(0) GPT 0x3335db8 signature is wrong recovery gpt... GPT 0x3335db8 signature is wrong recovery gpt fail! Trust Addr:0x4000, 0x58334c42 No find bl30.bin No find bl32.bin Load uboot, ReadLba = 2000 Load OK, addr=0x200000, size=0xea92c RunBL31 0x40000 @ 97786 us NOTICE: BL31: v1.3(release):845ee93 NOTICE: BL31: Built : 15:51:11, Jul 22 2020 NOTICE: BL31: Rockchip release version: v1.1 INFO: GICv3 with legacy support detected. ARM GICV3 driver initialized in EL3 INFO: Using opteed sec cpu_context! INFO: boot cpu mask: 0 INFO: plat_rockchip_pmu_init(1196): pd status 3e 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 2021.07-armbian (Feb 27 2022 - 08:44:53 +0000) SoC: Rockchip rk3399 Reset cause: RST DRAM: 3.9 GiB PMIC: RK808 SF: Detected w25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB MMC: mmc@fe320000: 1, sdhci@fe330000: 0 Loading Environment from MMC... *** Warning - bad CRC, using default environment If you could point me towards a version of a current u-boot that was built taking into account your recent pull requests, I will give it another try.
  3. The only real issue I had was the r8152 driver for the 2.5G interface. Under load the mainline r8152 driver was reset by the NETDEV Watchdog - more or less often: If I use linux-u-boot-edge-helios64_22.02.1_arm64.deb to boot from emmc I do not observe any problems anymore (see the parallel thread). I assume that the rockchip DDR blob is used. However using the latest u-boot the mainline r8152 driver was reset multiple times during a single download. May be that version still does not contain the rockchip DDR blob...
  4. _ _ _ _ __ _ _ | | | | ___| (_) ___ ___ / /_ | || | | |_| |/ _ \ | |/ _ \/ __| '_ \| || |_ | _ | __/ | | (_) \__ \ (_) |__ _| |_| |_|\___|_|_|\___/|___/\___/ |_| Welcome to Armbian 23.11.0-trunk Bookworm with Linux 6.6.8-edge-rockchip64 System load: 2% Up time: 1:01 Memory usage: 31% of 3.71G IP: 192.168.xx.yy CPU temp: 46°C Usage of /: 49% of 15G storage/: 62% of 3.6T storage temp: 23°C So finally I arrived at a stable Armbian Bookworm configuration for Helios64: Starting from Armbian Bookworm image (Armbian_23.5.4_Helios64_bookworm_current_6.1.36) Disable Armbian updates in /etc/apt/sources.list.d/armbian.list Copy rtl_nic firmware to /lib/firmware/rtl_nic Upgrade kernel to linux-6.6.8 # download link to those debs downloaded 23.12.2023. (Edit: there would appear to be issues with NFS if you use linux 6.6.8 - use linux 6.1.71 in that case; if you still have issues, use linux 5.15.93) Flash u-boot to emmc (linux-u-boot-edge-helios64_22.02.1_arm64) # see here Set nic offload options (ethtool -K end1 tso on gso on gro on) # change 'end1' to your network interface name Apply any changes to /boot/dtb/rockchip/rk3399-kobol-helios64.dtb (hs400 support, L2 cache information) # download link for your convenience Execute 'sbc-bench -r' at least once; you may change the cpu governor in /etc/default/cpufrequtils to 'ondemand' Edit: Meanwhile there is a more recent linux 6.6.30 (downloaded from beta.armbian.com on May 3rd), it is absolutely stable on my system if used in combination with a dtb (attached to this message) that implements a 75 mV bump for all states of the fast cores (as suggested by @prahal) (and additionally hs400 support and L2 cache information). Just copy the dtb to /boot/dtb/rockchip/rk3399-kobol-helios64.dtb. ! If you intend to use the 2.5G interface you need to fix the hardware issue first ! # Even if the 2.5G port is connected to a 2.5G switch, interface speed is 1G during autonegotiation for some time ... With this configuration iperf3 measures 2.33 Gb/s transferred from/to the server (one-way), while in bidirectional mode 2x1.71Gb/s are transferred (simultaneously in both directions): # ./iperf3 -c 192.168.xx.yy -p 5201 Connecting to host 192.168.xx.yy, port 5201 [ 6] local 192.168.xx.zz port 55582 connected to 192.168.xx.yy port 5201 [ ID] Interval Transfer Bitrate [ 6] 0.00-1.01 sec 258 MBytes 2.15 Gbits/sec [ 6] 1.01-2.01 sec 282 MBytes 2.36 Gbits/sec [ 6] 2.01-3.01 sec 279 MBytes 2.34 Gbits/sec [ 6] 3.01-4.01 sec 281 MBytes 2.35 Gbits/sec [ 6] 4.01-5.01 sec 280 MBytes 2.35 Gbits/sec [ 6] 5.01-6.01 sec 281 MBytes 2.36 Gbits/sec [ 6] 6.01-7.01 sec 281 MBytes 2.36 Gbits/sec [ 6] 7.01-8.00 sec 279 MBytes 2.35 Gbits/sec [ 6] 8.00-9.01 sec 281 MBytes 2.35 Gbits/sec [ 6] 9.01-10.01 sec 280 MBytes 2.35 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate [ 6] 0.00-10.01 sec 2.72 GBytes 2.33 Gbits/sec sender [ 6] 0.00-10.01 sec 2.72 GBytes 2.33 Gbits/sec receiver iperf Done. # ./iperf3 -c 192.168.xx.yy -p 5201 -R Connecting to host 192.168.xx.yy, port 5201 Reverse mode, remote host 192.168.xx.yy is sending [ 6] local 192.168.xx.zz port 55588 connected to 192.168.xx.yy port 5201 [ ID] Interval Transfer Bitrate [ 6] 0.00-1.01 sec 262 MBytes 2.18 Gbits/sec [ 6] 1.01-2.00 sec 278 MBytes 2.34 Gbits/sec [ 6] 2.00-3.01 sec 280 MBytes 2.35 Gbits/sec [ 6] 3.01-4.01 sec 279 MBytes 2.34 Gbits/sec [ 6] 4.01-5.00 sec 278 MBytes 2.34 Gbits/sec [ 6] 5.00-6.01 sec 279 MBytes 2.34 Gbits/sec [ 6] 6.01-7.01 sec 279 MBytes 2.34 Gbits/sec [ 6] 7.01-8.01 sec 279 MBytes 2.34 Gbits/sec [ 6] 8.01-9.01 sec 279 MBytes 2.34 Gbits/sec [ 6] 9.01-10.01 sec 278 MBytes 2.34 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 6] 0.00-10.01 sec 2.71 GBytes 2.33 Gbits/sec 53 sender [ 6] 0.00-10.01 sec 2.71 GBytes 2.33 Gbits/sec receiver iperf Done. # ./iperf3 -c 192.168.xx.yy -p 5201 --bidir Connecting to host 192.168.xx.yy, port 5201 [ 6] local 192.168.xx.zz port 55599 connected to 192.168.xx.yy port 5201 [ 8] local 192.168.xx.zz port 55600 connected to 192.168.xx.yy port 5201 [ ID][Role] Interval Transfer Bitrate [ 6][TX-C] 0.00-1.01 sec 221 MBytes 1.84 Gbits/sec [ 8][RX-C] 0.00-1.01 sec 193 MBytes 1.61 Gbits/sec [ 6][TX-C] 1.01-2.01 sec 166 MBytes 1.39 Gbits/sec [ 8][RX-C] 1.01-2.01 sec 215 MBytes 1.80 Gbits/sec [ 6][TX-C] 2.01-3.01 sec 214 MBytes 1.80 Gbits/sec [ 8][RX-C] 2.01-3.01 sec 198 MBytes 1.67 Gbits/sec [ 6][TX-C] 3.01-4.01 sec 235 MBytes 1.97 Gbits/sec [ 8][RX-C] 3.01-4.01 sec 197 MBytes 1.66 Gbits/sec [ 6][TX-C] 4.01-5.01 sec 222 MBytes 1.87 Gbits/sec [ 8][RX-C] 4.01-5.01 sec 197 MBytes 1.65 Gbits/sec [ 6][TX-C] 5.01-6.01 sec 194 MBytes 1.63 Gbits/sec [ 8][RX-C] 5.01-6.01 sec 210 MBytes 1.76 Gbits/sec [ 6][TX-C] 6.01-7.00 sec 184 MBytes 1.54 Gbits/sec [ 8][RX-C] 6.01-7.00 sec 212 MBytes 1.78 Gbits/sec [ 6][TX-C] 7.00-8.01 sec 192 MBytes 1.61 Gbits/sec [ 8][RX-C] 7.00-8.01 sec 208 MBytes 1.75 Gbits/sec [ 6][TX-C] 8.01-9.01 sec 216 MBytes 1.81 Gbits/sec [ 8][RX-C] 8.01-9.01 sec 203 MBytes 1.70 Gbits/sec [ 6][TX-C] 9.01-10.01 sec 206 MBytes 1.73 Gbits/sec [ 8][RX-C] 9.01-10.01 sec 204 MBytes 1.71 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 6][TX-C] 0.00-10.01 sec 2.00 GBytes 1.72 Gbits/sec sender [ 6][TX-C] 0.00-10.01 sec 2.00 GBytes 1.72 Gbits/sec receiver [ 8][RX-C] 0.00-10.01 sec 1.99 GBytes 1.71 Gbits/sec 17 sender [ 8][RX-C] 0.00-10.01 sec 1.99 GBytes 1.71 Gbits/sec receiver iperf Done. # hdparm -tT /dev/mmcblk1 /dev/mmcblk1: Timing cached reads: 2986 MB in 2.00 seconds = 1493.93 MB/sec Timing buffered disk reads: 706 MB in 3.00 seconds = 235.11 MB/sec # lscpu -C NAME ONE-SIZE ALL-SIZE WAYS TYPE LEVEL SETS PHY-LINE COHERENCY-SIZE L1d Data 1 L1i Instruction 1 L2 Unified 2 rk3399-kobol-helios64.dtb-6.6.30-L2-hs400-opp
  5. @prahal Current helios64-u-boot-edge (2023-Dec-28 08:32) is supposed to include the rockchip DDR blob, but unfortunately stable operation of helios64 is still not possible with it: the r8152 is reset very frequently if this bootloader is used (contrary to linux-u-boot-edge-helios64_22.02.1_arm64.deb, were the r8152 is reset only occasionally under load).
  6. I have noticed that your three pull requests made it into Armbian. We may now receive stable Armbian images for Helios64 again without having to revert u-boot to older versions. Thank you very much !
  7. Linux 6.6.7 and 6.6.8 are stable so far on my system (manually installed linux-image, linux-dtb, linux-headers only). You need to copy the rtl_nic firmware files to /lib/firmware/rtl_nic ... Edit: Again, the watchdog timer may have to reset the mainline r8152 driver upon heavy network traffic.
  8. Thanks to @prahal there is a fix for the reduced emmc speed. I can confirm that emmc can be accessed with hs400 again (read and write without CQE errors) - I have tested it with linux 5.15.93 and 6.1.11 (it works probably also for all higher linux versions). # hdparm -tT /dev/mmcblk1p1 /dev/mmcblk1p1: Timing cached reads: 2632 MB in 2.00 seconds = 1316.22 MB/sec Timing buffered disk reads: 658 MB in 3.01 seconds = 218.91 MB/sec # helios64: enabling hs400 speed for accessing emmc # changes to /boot/dtb/rockchip/rk3399-kobol-helios64.dtb (use device tree compiler 'dtc' for that) added to phy@f780: rockchip,enable-strobe-pulldown; added to mmc@fe330000: mmc-hs400-1_8v; mmc-hs400-enhanced-strobe;
  9. @prahal The fix also works with linux 5.15.93.
  10. @buhtux For the mainline r8152 driver you need to copy the rtl_nic firmware files into /lib/firmware/rtl_nic (see also here).
  11. @prahal I can confirm that with those changes to the helios64 dtb emmc can be accessed with hs400 speed again. I tried that with linux 6.1.11 (reading and writing to emmc without CQE errors). Thank you very much for solving that issue. # cat /proc/version Linux version 6.1.11-rockchip64 (root@52d12ff355f0) (aarch64-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36)) 8.3.0, GNU ld (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36)) 2.32.0.20190321) #23.02.2 SMP PREEMPT Sat Feb 18 00:08:25 UTC 2023 # hdparm -tT /dev/mmcblk1 /dev/mmcblk1: Timing cached reads: 2796 MB in 2.00 seconds = 1398.63 MB/sec Timing buffered disk reads: 664 MB in 3.01 seconds = 220.81 MB/sec changes to rk3399-kobol-helios64.dtb: added to phy@f780: rockchip,enable-strobe-pulldown; added to mmc@fe330000: mmc-hs400-1_8v; mmc-hs400-enhanced-strobe; deleted from mmc@fe330000: mmc-hs200-1_8v;
  12. @prahal Thank you for your observations. I will test if linux 6.6 will write to emmc with hs400 speeds with those amendments to the device tree.
  13. @TheGuv You need the firmware for the r8152 mainline driver present in linux 5.15.x and above. Edit: if you copy the firmware files to /lib/firmware/rtl_nic before you install the new linux kernel then those files are automatically copied into initrd during installation of the kernel. Otherwise you need to update initrd yourself. I would certainly overwrite u-boot on emmc by https://imola.armbian.com/apt/pool/main/l/linux-u-boot-helios64-edge/linux-u-boot-edge-helios64_22.02.1_arm64.deb as described earlier in this thread. And finally I would run sbc-bench at least once. It would appear to permanently change some performance related settings such that your system is more responsive. I disabled Armbian updates back in August 2021... Good luck.
  14. @TheGuv Your CPU governor is set to performance, while I am using the standard settings (see below). You may safely upgrade linux to 5.15.52. Although it uses the r8152 mainline driver v.1.12.12 it is stable. To figure out what is wrong with your system you should start from a fresh image (bookworm 23.05.4-6.1.36) and downgrade to one of the linux versions 5.15.93, 5.15.52 or 5.10.43 if you have problems with 6.1.36. Im am currently using linux 5.15.52. # cat /etc/default/cpufrequtils ENABLE=true MIN_SPEED=408000 MAX_SPEED=1800000 GOVERNOR=ondemand
  15. As nobody maintains helios64, installing Armbian updates is like playing russian roulette (even worse than that). In the parallel thread I tested various combinations of OS, bootloader and kernel and ended up with this configuration (adding linux 5.15.52 to the list).
  16. With a ZFS pool you have to be especially careful. I have no plans whatsoever to replace Helios64 - it performs "better than ever" with the 2.5 G interface (bookworm, linux 5.10.63 and linux-u-boot-edge-helios64_22.02.1_arm64). Will try 5.15.52 🙂. I would love to run it with linux 6.6 (with a different r8152 driver) but since Armbian develops into "closed source" (see this example, drivers_network file hashed) it becomes increasingly difficult on this platform.
  17. I think that you are very lucky, since your kernel 6.1.63 got compiled last night - it was 6.1.50 before lacking support for USB devices. You should be very careful with Armbian updates until Armbian on Helios64 is maintained by someone. Unfortunately that message is no joke. Armbian turned away from a being community project.
  18. My latest tests with linux 6.6.2 were very promising: the watchdog timer does not reset the mainline r8152 driver anymore under heavy load (using the 2.5G interface). However, the mainline r8152 driver does not support bidirectional data exchange (total bidirectional transfer is capped to 2.35Gb/s). If you like to test it, please find the kernel deb files here (debs-6.6.2) (to be installed with dpkg -i linux*) and the Armbian image here (Armbian-23.11.0-6.6.2) . sbc-bench results are here. (you may also like to consider these remarks) P.S.: After a few days of testing linux-6.6.2, I must conclude that it is not yet fit for the purpose (produces swapper0 kernel panics). The best stable performance is still delivered by linux-5.10.43 (r8152 v2.14) and linux-5.15.52 (r8152 v1.12.12). _ _ _ _ __ _ _ | | | | ___| (_) ___ ___ / /_ | || | | |_| |/ _ \ | |/ _ \/ __| '_ \| || |_ | _ | __/ | | (_) \__ \ (_) |__ _| |_| |_|\___|_|_|\___/|___/\___/ |_| Welcome to Armbian 23.11.0-trunk Bookworm with Linux 6.6.2-edge-rockchip64 System load: 2% Up time: 21 min Memory usage: 31% of 3.71G IP: 192.168.xx.xx CPU temp: 49°C Usage of /: 48% of 15G storage/: 62% of 3.6T storage temp: 24°C % ./iperf3 -c 192.168.xx.30 -p 5201 Connecting to host 192.168.xx.30, port 5201 [ 5] local 192.168.xx.45 port 49535 connected to 192.168.xx.30 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-1.00 sec 252 MBytes 2.12 Gbits/sec [ 5] 1.00-2.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 2.00-3.00 sec 281 MBytes 2.35 Gbits/sec [ 5] 3.00-4.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 4.00-5.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 5.00-6.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 6.00-7.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 7.00-8.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 8.00-9.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 9.00-10.00 sec 281 MBytes 2.35 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate [ 5] 0.00-10.00 sec 2.71 GBytes 2.33 Gbits/sec sender [ 5] 0.00-10.00 sec 2.71 GBytes 2.33 Gbits/sec receiver iperf Done. % ./iperf3 -c 192.168.xx.30 -p 5201 -R Connecting to host 192.168.xx.30, port 5201 Reverse mode, remote host 192.168.xx.30 is sending [ 5] local 192.168.xx.45 port 49537 connected to 192.168.xx.30 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-1.00 sec 255 MBytes 2.14 Gbits/sec [ 5] 1.00-2.00 sec 276 MBytes 2.32 Gbits/sec [ 5] 2.00-3.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 3.00-4.00 sec 278 MBytes 2.34 Gbits/sec [ 5] 4.00-5.00 sec 278 MBytes 2.33 Gbits/sec [ 5] 5.00-6.00 sec 276 MBytes 2.31 Gbits/sec [ 5] 6.00-7.00 sec 279 MBytes 2.34 Gbits/sec [ 5] 7.00-8.00 sec 277 MBytes 2.32 Gbits/sec [ 5] 8.00-9.00 sec 279 MBytes 2.34 Gbits/sec [ 5] 9.00-10.00 sec 278 MBytes 2.33 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 2.69 GBytes 2.31 Gbits/sec 70 sender [ 5] 0.00-10.00 sec 2.69 GBytes 2.31 Gbits/sec receiver iperf Done. % ./iperf3 -c 192.168.xx.30 -p 5201 --bidir Connecting to host 192.168.xx.30, port 5201 [ 5] local 192.168.xx.45 port 49539 connected to 192.168.xx.30 port 5201 [ 7] local 192.168.xx.45 port 49540 connected to 192.168.xx.30 port 5201 [ ID][Role] Interval Transfer Bitrate [ 5][TX-C] 0.00-1.00 sec 23.8 MBytes 199 Mbits/sec [ 7][RX-C] 0.00-1.00 sec 212 MBytes 1.78 Gbits/sec [ 5][TX-C] 1.00-2.00 sec 28.4 MBytes 238 Mbits/sec [ 7][RX-C] 1.00-2.00 sec 244 MBytes 2.05 Gbits/sec [ 5][TX-C] 2.00-3.00 sec 24.9 MBytes 209 Mbits/sec [ 7][RX-C] 2.00-3.00 sec 250 MBytes 2.09 Gbits/sec [ 5][TX-C] 3.00-4.00 sec 75.0 MBytes 628 Mbits/sec [ 7][RX-C] 3.00-4.00 sec 207 MBytes 1.73 Gbits/sec [ 5][TX-C] 4.00-5.00 sec 96.2 MBytes 808 Mbits/sec [ 7][RX-C] 4.00-5.00 sec 190 MBytes 1.60 Gbits/sec [ 5][TX-C] 5.00-6.00 sec 24.4 MBytes 204 Mbits/sec [ 7][RX-C] 5.00-6.00 sec 244 MBytes 2.04 Gbits/sec [ 5][TX-C] 6.00-7.00 sec 25.0 MBytes 210 Mbits/sec [ 7][RX-C] 6.00-7.00 sec 248 MBytes 2.08 Gbits/sec [ 5][TX-C] 7.00-8.00 sec 24.6 MBytes 207 Mbits/sec [ 7][RX-C] 7.00-8.00 sec 246 MBytes 2.06 Gbits/sec [ 5][TX-C] 8.00-9.00 sec 24.4 MBytes 204 Mbits/sec [ 7][RX-C] 8.00-9.00 sec 245 MBytes 2.06 Gbits/sec [ 5][TX-C] 9.00-10.00 sec 25.1 MBytes 211 Mbits/sec [ 7][RX-C] 9.00-10.00 sec 244 MBytes 2.04 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-10.00 sec 372 MBytes 312 Mbits/sec sender [ 5][TX-C] 0.00-10.00 sec 364 MBytes 305 Mbits/sec receiver [ 7][RX-C] 0.00-10.00 sec 2.28 GBytes 1.95 Gbits/sec 61 sender [ 7][RX-C] 0.00-10.00 sec 2.27 GBytes 1.95 Gbits/sec receiver iperf Done.
  19. The helios64 patch to setup the sata power lines is already mainlined (line 92 ff). So it remains unclear why the sata LEDs are flashing at kernel startup.
  20. @prahal Thank you for the hints! I would like to test the modified u-boot. Would you send a link (pm) so that I can try ? My setup is now stable as discussed in the parallel thread. I had to go back to a linux kernel (5.10.43) using the realtek r8152 driver v2.14.0 (2020/09/24) instead of the mainline driver and to downgrade the boot loader to linux-u-boot-edge-helios64_22.02.1_arm64 on emmc (no flashing LEDs). As a next step I plan to compile and test a kernel based on LTS 6.6.x including the code to setup the sata power lines and a working version of the Realtek driver r8152 . The mainline version of that driver is still under heavy development ...
  21. @RlndVt The kernel panic was produced by '6.6.0-edge-rockchip64' (after 830618s = 9.6 days). Hopefully those issues will vanish once the 6.6 kernel becomes more mature.
  22. So far all my attempts to use the mainline driver r8152 in recent kernels 6.1.x and 6.6.y were accompanied by the system having to reset the driver on heavy loads. (My apologies to @RlndVt and @0x349850341010010101010100 - the mainline r8152 driver indeed causes problems) My attempts to replace the r8152 mainline driver by a recent version from Realtek (v.2.17.1) in linux kernels 6.1.xx and in 6.6.xx were accompanied by crashes. The logical solution now was to step back to linux 5.10.43 (Realtek driver v2.14.0 (2020/09/24)) also used with Debian bullseye before. After some performance tuning, network performance is now outstanding with that system (Armbian bookworm 23.05.4, linux downgraded to 5.10.43, linux-u-boot-edge-helios64_22.02.1_arm64, content of /lib/firmware/rtl_nic replaced by this firmware) (Bitrates bidirectional: 2.28+1.54=3.82Gb/s; Transfer bidirectional 2.65+1.80=4.45 GBytes transferred in 10s) P.S.: Performance optimised using sbc-bench - the famous tool from @tkaiser - and by changing the task affinity of iperf3. ./iperf3 -c 192.168.xx.30 -p 5201 Connecting to host 192.168.xx.30, port 5201 [ 5] local 192.168.xx.45 port 52050 connected to 192.168.xx.30 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-1.00 sec 241 MBytes 2.02 Gbits/sec [ 5] 1.00-2.00 sec 242 MBytes 2.03 Gbits/sec [ 5] 2.00-3.00 sec 234 MBytes 1.97 Gbits/sec [ 5] 3.00-4.00 sec 271 MBytes 2.28 Gbits/sec [ 5] 4.00-5.00 sec 269 MBytes 2.26 Gbits/sec [ 5] 5.00-6.00 sec 268 MBytes 2.25 Gbits/sec [ 5] 6.00-7.00 sec 268 MBytes 2.24 Gbits/sec [ 5] 7.00-8.00 sec 267 MBytes 2.24 Gbits/sec [ 5] 8.00-9.00 sec 269 MBytes 2.25 Gbits/sec [ 5] 9.00-10.00 sec 269 MBytes 2.25 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate [ 5] 0.00-10.00 sec 2.54 GBytes 2.18 Gbits/sec sender [ 5] 0.00-10.00 sec 2.53 GBytes 2.17 Gbits/sec receiver iperf Done. ./iperf3 -c 192.168.xx.30 -p 5201 -R Connecting to host 192.168.xx.30, port 5201 Reverse mode, remote host 192.168.xx.30 is sending [ 5] local 192.168.xx.45 port 51998 connected to 192.168.xx.30 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-1.00 sec 267 MBytes 2.24 Gbits/sec [ 5] 1.00-2.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 2.00-3.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 3.00-4.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 4.00-5.00 sec 281 MBytes 2.35 Gbits/sec [ 5] 5.00-6.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 6.00-7.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 7.00-8.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 8.00-9.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 9.00-10.00 sec 280 MBytes 2.35 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 2.73 GBytes 2.34 Gbits/sec 16 sender [ 5] 0.00-10.00 sec 2.73 GBytes 2.34 Gbits/sec receiver iperf Done. ./iperf3 -c 192.168.xx.30 -p 5201 --bidir Connecting to host 192.168.xx.30, port 5201 [ 5] local 192.168.xx.45 port 52006 connected to 192.168.xx.30 port 5201 [ 7] local 192.168.xx.45 port 52007 connected to 192.168.xx.30 port 5201 [ ID][Role] Interval Transfer Bitrate [ 5][TX-C] 0.00-1.00 sec 185 MBytes 1.55 Gbits/sec [ 7][RX-C] 0.00-1.00 sec 271 MBytes 2.28 Gbits/sec [ 5][TX-C] 1.00-2.00 sec 183 MBytes 1.53 Gbits/sec [ 7][RX-C] 1.00-2.00 sec 273 MBytes 2.29 Gbits/sec [ 5][TX-C] 2.00-3.00 sec 185 MBytes 1.55 Gbits/sec [ 7][RX-C] 2.00-3.00 sec 271 MBytes 2.27 Gbits/sec [ 5][TX-C] 3.00-4.00 sec 184 MBytes 1.54 Gbits/sec [ 7][RX-C] 3.00-4.00 sec 272 MBytes 2.29 Gbits/sec [ 5][TX-C] 4.00-5.00 sec 184 MBytes 1.54 Gbits/sec [ 7][RX-C] 4.00-5.00 sec 272 MBytes 2.28 Gbits/sec [ 5][TX-C] 5.00-6.00 sec 185 MBytes 1.55 Gbits/sec [ 7][RX-C] 5.00-6.00 sec 270 MBytes 2.27 Gbits/sec [ 5][TX-C] 6.00-7.00 sec 183 MBytes 1.53 Gbits/sec [ 7][RX-C] 6.00-7.00 sec 272 MBytes 2.28 Gbits/sec [ 5][TX-C] 7.00-8.00 sec 184 MBytes 1.55 Gbits/sec [ 7][RX-C] 7.00-8.00 sec 270 MBytes 2.27 Gbits/sec [ 5][TX-C] 8.00-9.00 sec 184 MBytes 1.54 Gbits/sec [ 7][RX-C] 8.00-9.00 sec 270 MBytes 2.27 Gbits/sec [ 5][TX-C] 9.00-10.00 sec 184 MBytes 1.54 Gbits/sec [ 7][RX-C] 9.00-10.00 sec 269 MBytes 2.26 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-10.00 sec 1.80 GBytes 1.54 Gbits/sec sender [ 5][TX-C] 0.00-10.00 sec 1.79 GBytes 1.54 Gbits/sec receiver [ 7][RX-C] 0.00-10.00 sec 2.65 GBytes 2.28 Gbits/sec 6 sender [ 7][RX-C] 0.00-10.00 sec 2.65 GBytes 2.27 Gbits/sec receiver iperf Done. Edit: Links added
  23. Armbian bookworm 23.05.4 with linux downgraded to 5.10.43 seems to be the perfect setup (if you need linux-headers). It runs absolutely stable during stress tests using linux-u-boot-current-helios64_21.08.9_arm64 or linux-u-boot-edge-helios64_22.02.1_arm64. This kernel is the last one with hs400 support: emmc is accessed with 230MB/s. The fans don't spin up during boot but start slowly. However, it seems that RAM access is a little bit slower (timed cache reads) but what matters is stability. P.S.: If you downgrade from linux 6.x to linux 5.x all symlinks vmlinux* and uInitrd* should be deleted in the root directory / before reboot. _ _ _ _ __ _ _ | | | | ___| (_) ___ ___ / /_ | || | | |_| |/ _ \ | |/ _ \/ __| '_ \| || |_ | _ | __/ | | (_) \__ \ (_) |__ _| |_| |_|\___|_|_|\___/|___/\___/ |_| Welcome to Armbian 23.08.0-trunk Bookworm with Linux 5.10.43-rockchip64 No end-user support: community creations System load: 2% Up time: 12 min Memory usage: 29% of 3.77G IP: 192.168.xx.yy CPU temp: 46°C Usage of /: 46% of 15G storage/: 62% of 3.6T storage temp: 25°C # modinfo r8152 filename: /lib/modules/5.10.43-rockchip64/kernel/drivers/net/usb/r8152.ko version: v2.14.0 (2020/09/24) license: GPL description: Realtek RTL8152/RTL8153 Based USB Ethernet Adapters author: Realtek nic sw <nic_swsd@realtek.com> # hdparm -tT /dev/mmcblk2p1 /dev/mmcblk2p1: Timing cached reads: 2180 MB in 2.00 seconds = 1089.64 MB/sec Timing buffered disk reads: 714 MB in 3.01 seconds = 237.50 MB/sec % ./iperf3 -c 192.168.xx.30 -p 5201 Connecting to host 192.168.xx.30, port 5201 [ 5] local 192.168.xx.45 port 49517 connected to 192.168.xx.30 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-1.00 sec 228 MBytes 1.91 Gbits/sec [ 5] 1.00-2.00 sec 281 MBytes 2.36 Gbits/sec [ 5] 2.00-3.00 sec 266 MBytes 2.23 Gbits/sec [ 5] 3.00-4.00 sec 248 MBytes 2.08 Gbits/sec [ 5] 4.00-5.00 sec 248 MBytes 2.08 Gbits/sec [ 5] 5.00-6.00 sec 245 MBytes 2.05 Gbits/sec [ 5] 6.00-7.00 sec 252 MBytes 2.11 Gbits/sec [ 5] 7.00-8.00 sec 270 MBytes 2.26 Gbits/sec [ 5] 8.00-9.00 sec 264 MBytes 2.22 Gbits/sec [ 5] 9.00-10.00 sec 249 MBytes 2.09 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate [ 5] 0.00-10.00 sec 2.49 GBytes 2.14 Gbits/sec sender [ 5] 0.00-10.00 sec 2.48 GBytes 2.13 Gbits/sec receiver iperf Done. % ./iperf3 -c 192.168.xx.30 -p 5201 -R Connecting to host 192.168.xx.30, port 5201 Reverse mode, remote host 192.168.xx.30 is sending [ 5] local 192.168.xx.45 port 49520 connected to 192.168.xx.30 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-1.00 sec 259 MBytes 2.17 Gbits/sec [ 5] 1.00-2.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 2.00-3.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 3.00-4.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 4.00-5.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 5.00-6.00 sec 281 MBytes 2.35 Gbits/sec [ 5] 6.00-7.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 7.00-8.00 sec 281 MBytes 2.35 Gbits/sec [ 5] 8.00-9.00 sec 280 MBytes 2.35 Gbits/sec [ 5] 9.00-10.00 sec 280 MBytes 2.35 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 2.72 GBytes 2.34 Gbits/sec 15 sender [ 5] 0.00-10.00 sec 2.72 GBytes 2.33 Gbits/sec receiver iperf Done. % ./iperf3 -c 192.168.xx.30 -p 5201 --bidir Connecting to host 192.168.xx.30, port 5201 [ 5] local 192.168.xx.45 port 49541 connected to 192.168.xx.30 port 5201 [ 7] local 192.168.xx.45 port 49542 connected to 192.168.xx.30 port 5201 [ ID][Role] Interval Transfer Bitrate [ 5][TX-C] 0.00-1.00 sec 257 MBytes 2.16 Gbits/sec [ 7][RX-C] 0.00-1.00 sec 116 MBytes 977 Mbits/sec [ 5][TX-C] 1.00-2.00 sec 58.5 MBytes 491 Mbits/sec [ 7][RX-C] 1.00-2.00 sec 280 MBytes 2.35 Gbits/sec [ 5][TX-C] 2.00-3.00 sec 60.9 MBytes 511 Mbits/sec [ 7][RX-C] 2.00-3.00 sec 280 MBytes 2.35 Gbits/sec [ 5][TX-C] 3.00-4.00 sec 51.8 MBytes 435 Mbits/sec [ 7][RX-C] 3.00-4.00 sec 280 MBytes 2.35 Gbits/sec [ 5][TX-C] 4.00-5.00 sec 138 MBytes 1.16 Gbits/sec [ 7][RX-C] 4.00-5.00 sec 205 MBytes 1.72 Gbits/sec [ 5][TX-C] 5.00-6.00 sec 58.0 MBytes 486 Mbits/sec [ 7][RX-C] 5.00-6.00 sec 280 MBytes 2.35 Gbits/sec [ 5][TX-C] 6.00-7.00 sec 50.2 MBytes 421 Mbits/sec [ 7][RX-C] 6.00-7.00 sec 279 MBytes 2.34 Gbits/sec [ 5][TX-C] 7.00-8.00 sec 74.2 MBytes 622 Mbits/sec [ 7][RX-C] 7.00-8.00 sec 259 MBytes 2.17 Gbits/sec [ 5][TX-C] 8.00-9.00 sec 116 MBytes 974 Mbits/sec [ 7][RX-C] 8.00-9.00 sec 225 MBytes 1.89 Gbits/sec [ 5][TX-C] 9.00-10.00 sec 190 MBytes 1.59 Gbits/sec [ 7][RX-C] 9.00-10.00 sec 172 MBytes 1.45 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-10.00 sec 1.03 GBytes 885 Mbits/sec sender [ 5][TX-C] 0.00-10.00 sec 1.02 GBytes 879 Mbits/sec receiver [ 7][RX-C] 0.00-10.00 sec 2.32 GBytes 2.00 Gbits/sec 7 sender [ 7][RX-C] 0.00-10.00 sec 2.32 GBytes 1.99 Gbits/sec receiver iperf Done. dmesg.txt
  24. @RlndVt Did you have any results compiling a kernel for your Helios or testing the Armbian 23.5.4 - 6.1.36 Image ? P.S.: How to build Armbian is described here. But the system has changed and the new build system is not documented (yet). The important bits are those: ./compile.sh kernel-patch <board etc> # this allows you to modify the source during a pause and then compiles the corresponding patch ./comile.sh kernel <board etc> # this compiles kernel only, copy patch to be applied here: ./build/patch/kernel/archive/rockchip64-6.1 The dwc3-usb regression is anyway fixed in all linux kernels starting from 6.1.59.
  25. New Armbian build system: ./compile.sh kernel-patch <board etc> # this allows you to modify the source during a pause and then compiles the corresponding patch ./comile.sh kernel <board etc> # this compiles kernel only, copy patch to be applied here: ./build/patch/kernel/archive/rockchip64-6.1 What may happen is that the watchdog timer has to reset the r8152 driver (mainline v1.12.13) under heavy loads (the higher the kernel version, the more likely) I do not observe any kernel crashes on boot with any of the kernels 6.1.36, 6.1.58, 6.1.60 and 6.6.0 starting from Armbian 23.05.4 and using one of the two bootloaders as discussed earlier. On the other side, I really had problems after installing Armbian full firmware and the current bootloader - and the only way out was to start from scratch. Good luck ! P.S.: The dwc3-usb regression is fixed upstream in linux 6.1.59 and later.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines