Skip to content

ROCKPro64 - USB3 bootet von SSD!

ROCKPro64
  • Hmm, da bin ich heute doch nach langer Zeit mal wieder am Spielen, weil ich hier helfen wollte. Da nun der u-boot im SPI Flash war, kam ich auf die Idee, die Testplatte die hier rumliegt mal anzuschließen.

    Es handelt sich um eine SSD von SanDisk mit 240GB, nix Besonderes 😉 Und was stelle ich fest?!? Das Ding bootet 🙂 Kur über die SSH Konsole einen Reboot durchgeführt, habe gedacht das das Zufall war, geht wieder. schaut sehr erstaunt

    Hier das komplette Boot-Log: https://pastebin.com/asLuPk3G

    Eingesetzter u-boot

    U-Boot 2017.09-rockchip-ayufan-1035-gd646df03ac (Oct 26 2018 - 08:36:24 +0000)  
    

    Das ist im Moment, der Aktuellste, den Kamil zur Verfügung stellt.
    https://github.com/ayufan-rock64/linux-u-boot/releases

    Auf der SSD ist folgendes System drauf.

    rock64@rockpro64:~$ uname -a
    Linux rockpro64 4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1 #1 SMP Mon Oct 22 20:59:41 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
    

    Die Platte

    rock64@rockpro64:~$ df -h
    Filesystem      Size  Used Avail Use% Mounted on
    udev            992M     0  992M   0% /dev
    tmpfs           200M  440K  199M   1% /run
    /dev/sda7       220G  1.3G  210G   1% /
    tmpfs           996M     0  996M   0% /dev/shm
    tmpfs           5.0M  4.0K  5.0M   1% /run/lock
    tmpfs           996M     0  996M   0% /sys/fs/cgroup
    /dev/sda6       112M  4.0K  112M   1% /boot/efi
    tmpfs           200M     0  200M   0% /run/user/1000
    

    Ich bin aktuell etwas verwundert, das es geht. Aber sehr wichtig wenn es jetzt endlich funktioniert.

  • Ich denke, ich habe das Problem erkannt. 🙂

    Wenn man den Stecker nicht komplett in die USB3-Buchse des ROCKPro64 einsteckt, dann geht es einwandfrei. Diese Buchse scheint nicht optimal zu funktionieren. Ich kann den Fehler hier ziemlich gut reproduzieren, es benötigt aber noch ein paar Tests.

    Also, wer mal testen will, den Stecker so weit einstecken, bis man leichten Widerstand spürt. Das sollte dann reichen 😉 Kann man dann mit einer UART-Verbindung kontrollieren, ob er das Device erkennt. Kann man da sehr schön sehen.

    Bitte nagelt mich nicht drauf fest, ich hoffe das das noch jemand anders bestätigen kann. Morgen werde ich das noch mit einem anderen ROCKPro64 hier testen.

  • Leider ist das immer noch nicht DIE Lösung 😞

    Am ROCKPro64 erreiche ich folgende Geschwindigkeit

    rock64@rockpro64:~$ sudo dd if=/dev/zero of=sd.img bs=1M count=4096 conv=fdatasync
    4096+0 records in
    4096+0 records out
    4294967296 bytes (4.3 GB, 4.0 GiB) copied, 130.382 s, 32.9 MB/s
    

    Ok, sieht nach USB2 aus. Mal am Haupt-PC testen, ob die Komponenten USB3 können.

    frank@frank-MS-7A34:/media/frank/linux-root/home/rock64$ sudo dd if=/dev/zero of=sd.img bs=1M count=4096 conv=fdatasync
    [sudo] Passwort für frank: 
    4096+0 Datensätze ein
    4096+0 Datensätze aus
    4294967296 bytes (4,3 GB, 4,0 GiB) copied, 14,7509 s, 291 MB/s
    

    Sieht gut aus. Und jetzt bin ich genauso schlau wie vorher....

    Mein USB3-Adapter für die SSD

    Bus 002 Device 005: ID 174c:55aa ASMedia Technology Inc. ASM1051E SATA 6Gb/s bridge, ASM1053E SATA 6Gb/s bridge, ASM1153 SATA 3Gb/s bridge
    

    Und raus. Ich hab keinen Plan, woran es liegt!?!?!?!

  • Da oben steht viel Bullshit 🙂 Ich habe mich mal mit dem mechanischen Aufbau einer USB3 Buchse beschäftigt, bzw. dazu recherchiert. Auf dieser Seite ist ein klasse Bild, was das sehr gut verdeutlicht.

    https://kompendium.infotip.de/usb-3-0.html

    Abbildung 28. Dort sieht man das die USB3 Kontakte RX/TX und GND ganz hinten sind. Wenn ich den Stecker jetzt komplett einstecke, wird wohl versucht eine USB3 Verbindung aufzubauen, die ja im Moment aus irgendeinem Grund scheitert. Wenn ich den Stecker nun ein Stück raus ziehe, trenne ich die USB3-Verbindung und es kommt eine USB2-Verbindung zustande.

    So mit ist mir jetzt einiges klarer, aber das Problem ist ungelöst 😞

  • ROCKPro64 - Booten von USB3

    ROCKPro64
    3
    0 Stimmen
    3 Beiträge
    369 Aufrufe
    FrankMF

    Yeah, genau das worauf ich auch warte.

    Wenn ich das richtig mitbekommen habe, könnte das Kamil's nächster Punkt auf seiner Liste sein.

  • NVMe SSD Speed auf Kernel 5.0 von Kamil

    Verschoben ROCKPro64
    11
    0 Stimmen
    11 Beiträge
    866 Aufrufe
    W

    @FrankM sagte in NVMe SSD Speed auf Kernel 5.0 von Kamil:

    Kurz was zum Nanopc-t4, das war das Board, wo ich damals schon geschrieben habe, wie man da die Wärme weg bekommt!? Ok, bleiben wir beim ROCKPro64 😉

    Hmm .. nix dazu im Forum bei dir gefunden .. nach wärme , nano usw. gesucht ..

    Den Teil verstehe ich nicht. Woher soll er denn das 0.7er Image laden???

    Von seiner SD .. ein bisschen wirr von mir beschrieben.

    Nackter Rockpro, ohne USB-Devices, ohne NVMe, ohne emmc, ..

    Ablauf 1:
    SD Karte mit 0.7er Image (das bisher immer funktioniert hatte) rein -> Rockpro geht an, beide LEDs gehen an (was aber bisher nur die weisse war), kein weiterer Boot-Vorgang.

    Ablauf 2:
    SD Karte mit 0.8er Image (gleiche SD Karte) rein -> Rockpro geht an, perfekter Boot Vorgang.

    Das Monitor "Problem" und das 0.7er scheinen hier ggf. zusammen zu hängen, jedoch - mehr debugging nur mit der RS232 möglich, ggf. Mist im First-Stage-Loader ..

    (Erase SPI , etc. alles hatte nichts verändert ..)

    Wenn jemand richtig Zeit und Lust hätte könnte man sich ja am Armbian nand-sata Script orientieren:

    Da habe ich auch schon mal drüber nachgedacht....

    Ich würde 5$ Patreon Money dazu geben 🙂

    Einen schönen Sonntag.

  • ROCKPro64 - Das erste Mal

    Angeheftet Verschoben Hardware
    5
    1 Stimmen
    5 Beiträge
    817 Aufrufe
    FrankMF

    Ich kann heute die Fragen aller Fragen beantworten 🙂

    Damit ist leider die Frage immer noch unbeantwortet ob WLan und PCIe zusammen nutzbar ist!! Es geht!!

    Ich habe von MrFixit ein Testimage der RecalBox, benutzt das selbe Debian wie oben. Die Tage konnte man im IRC verfolgen, wie man dem Grundproblem näher kam und wohl einen Fix gebastelt hat, damit beides zusammen funktioniert. Mr.Fixit hat das in RecalBox eingebaut und ich durfte testen.

    # ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP8000> mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 62:03:b0:d6:dc:b3 brd ff:ff:ff:ff:ff:ff 3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP8000> mtu 1500 qdisc pfifo_fast qlen 1000 link/ether ac:83:f3:e6:1f:b2 brd ff:ff:ff:ff:ff:ff inet 192.168.178.27/24 brd 192.168.178.255 scope global wlan0 valid_lft forever preferred_lft forever inet6 2a02:908:1262:4680:ae83:f3ff:fee6:1fb2/64 scope global dynamic valid_lft 7145sec preferred_lft 3545sec inet6 fe80::ae83:f3ff:fee6:1fb2/64 scope link valid_lft forever preferred_lft forever # ls /mnt bin etc media recalbox sd.img test2.img boot home mnt root selinux tmp crypthome lib opt run srv usr dev lost+found proc sbin sys var # fdisk BusyBox v1.27.2 (2019-02-01 22:43:19 EST) multi-call binary. Usage: fdisk [-ul] [-C CYLINDERS] [-H HEADS] [-S SECTORS] [-b SSZ] DISK Change partition table -u Start and End are in sectors (instead of cylinders) -l Show partition table for each DISK, then exit -b 2048 (for certain MO disks) use 2048-byte sectors -C CYLINDERS Set number of cylinders/heads/sectors -H HEADS Typically 255 -S SECTORS Typically 63 # fdisk -l Disk /dev/mmcblk0: 15 GB, 15931539456 bytes, 31116288 sectors 486192 cylinders, 4 heads, 16 sectors/track Units: cylinders of 64 * 512 = 32768 bytes Device Boot StartCHS EndCHS StartLBA EndLBA Sectors Size Id Type /dev/mmcblk0p1 * 2,10,9 10,50,40 32768 163839 131072 64.0M c Win95 FAT32 (LBA) Partition 1 does not end on cylinder boundary /dev/mmcblk0p2 * 16,81,2 277,102,17 262144 4456447 4194304 2048M 83 Linux Partition 2 does not end on cylinder boundary /dev/mmcblk0p3 277,102,18 1023,254,63 4456448 31115263 26658816 12.7G 83 Linux Partition 3 does not end on cylinder boundary Disk /dev/nvme0n1: 233 GB, 250059350016 bytes, 488397168 sectors 2543735 cylinders, 12 heads, 16 sectors/track Units: cylinders of 192 * 512 = 98304 bytes Device Boot StartCHS EndCHS StartLBA EndLBA Sectors Size Id Type /dev/nvme0n1p1 1,0,1 907,11,16 2048 488397167 488395120 232G 83 Linux #

    Oben sieht man eine funktionierende WLan-Verbindung, das LAN-Kabel war entfernt. Unten sieht man die PCIe NVMe SSD, gemountet nach /mnt und Inhaltsausgabe.

    Das sollte beweisen, das der Ansatz der Lösung funktioniert. Leider kann ich nicht sagen, das es zum jetzigen Zeitpunkt stabil läuft. Ich habe einfach so Reboots, kann den Fehler aktuell aber nicht fangen. Mal sehen ob ich noch was finde.

    Aber, es ist ein Anfang!

  • 0 Stimmen
    8 Beiträge
    1k Aufrufe
    FrankMF

    Die Verlinkung hatte ich überlesen, sorry.

    Es gibt nur eine Handvoll Karten, die im PCIe Port funktionieren. Warum, kann ich dir leider nicht beantworten. Es liegt aber mit Sicherheit an falschen Einstellungen im Kernel und an fehlenden Treibern. Ich habe hier auch eine andere Karte rumliegen, die erzeugt immer nur eine Kernel Panic 😞

    In diesem Thread steht einiges was geht und was nicht.
    https://forum.pine64.org/showthread.php?tid=6459

  • 0 Stimmen
    1 Beiträge
    471 Aufrufe
    Niemand hat geantwortet
  • Booten von der NVMe Platte

    ROCKPro64
    16
    0 Stimmen
    16 Beiträge
    7k Aufrufe
    S

    Für dies Kernal: Linux rockpro64 4.4.167-1213-rockchip-ayufan-g34ae07687fce #1 SMP Tue Jun 18 20:44:49 UTC 2019 aarch64 GNU/Linux

    Booten von der NVMe Platte nicht möglich.

    Ich folgte die folgende Schritte. Leider funktioniert es nicht. Es gibt einen Fehler in Boot.

    Ohne RAID oder LVM config.

    Specs:
    Rockpro64
    Marvel PCIe 88se9230 karte
    SANDISK SSD 120 GB

  • Benchmark Mainline 4.17.0-rc6

    Verschoben Archiv
    4
    0 Stimmen
    4 Beiträge
    961 Aufrufe
    FrankMF
    iozone 5GT/s x2 rock64@rockpro64:/mnt$ sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Iozone: Performance Test of File I/O Version $Revision: 3.429 $ Compiled for 64 bit mode. Build: linux Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins Al Slater, Scott Rhine, Mike Wisner, Ken Goss Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR, Randy Dunlap, Mark Montague, Dan Million, Gavin Brebner, Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave Boone, Erik Habbinga, Kris Strecker, Walter Wong, Joshua Root, Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren Sawyer, Vangel Bojaxhi, Ben England, Vikentsi Lapa. Run began: Sat Jun 16 06:34:43 2018 Include fsync in write timing O_DIRECT feature enabled Auto Mode File size set to 102400 kB Record Size 4 kB Record Size 16 kB Record Size 512 kB Record Size 1024 kB Record Size 16384 kB Command line used: iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 102400 4 48672 104754 115838 116803 47894 103606 102400 16 168084 276437 292660 295458 162550 273703 102400 512 566572 597648 580005 589209 534508 597007 102400 1024 585621 624443 590545 599177 569452 630098 102400 16384 504871 754710 765558 780592 777696 753426 iozone test complete. 2,5GT/s x2 rock64@rockpro64:/mnt$ sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Iozone: Performance Test of File I/O Version $Revision: 3.429 $ Compiled for 64 bit mode. Build: linux Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins Al Slater, Scott Rhine, Mike Wisner, Ken Goss Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR, Randy Dunlap, Mark Montague, Dan Million, Gavin Brebner, Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave Boone, Erik Habbinga, Kris Strecker, Walter Wong, Joshua Root, Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren Sawyer, Vangel Bojaxhi, Ben England, Vikentsi Lapa. Run began: Sun Jun 17 06:54:02 2018 Include fsync in write timing O_DIRECT feature enabled Auto Mode File size set to 102400 kB Record Size 4 kB Record Size 16 kB Record Size 512 kB Record Size 1024 kB Record Size 16384 kB Command line used: iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 102400 4 49420 91310 102658 103415 47023 90099 102400 16 138141 202088 224648 225918 141642 202457 102400 512 335055 347517 375096 378596 364668 350005 102400 1024 345508 354999 378947 382733 375315 354783 102400 16384 306262 383155 424403 429423 428670 377476 iozone test complete.
  • stretch-openmediavault-rockpro64

    Verschoben Linux
    1
    0 Stimmen
    1 Beiträge
    793 Aufrufe
    Niemand hat geantwortet