Skip to content

SPI funktioniert

ROCKPro64
4 1 969
  • Kamil hat dann mal erste Erfolge mit dem SPI flashen ✌

    Fangen wir nochmal kurz von vorne an, für die unter Euch, die nur Bahnhof verstehen 😉

    Der ROCKPro64 besitzt folgenden Speicher

    • 128Mb SPI boot Flash

    SPI müsste dabei die Kommunikation bezeichnen. Serial Peripheral interface

    Fassen wir zusammen, auf dem Board sind 128MB Speicher, die man beschreiben kann. Dort hin kopiert man den u-boot um dann von angeschlossenen USB-Geräten zu booten. Im Moment wären theoretisch

    • USB2
    • USB3

    möglich. Dazu hat Kamil zwei Images erstellt.

    • u-boot-erase-spi-rockpro64.img.xz
    • u-boot-flash-spi-rockpro64.img.xz

    Download

    Also, ein Image zum flashen des Speichers und ein Image um den Speicher wieder zu löschen. Ansonsten hat man nämlich ein Problem von eMMC oder SD-Karte zu booten.

    Das Flash-Image auf eine SD-Karte bügeln, diese in den ROCKPro64 und damit starten. Wenn die weiße Power LED anfängt zu blinken, ist der Schreibvorgang beendet.

    Hier ein Log des erfolgreichen Vorganges https://pastebin.com/vxTazYsx

    Den ROCKPro64 ausmachen, die SD-Karte entnehmen. Ein Boot fähiges USB-Laufwerk erstellen. Also das 0.7.9 Image z.B. auf die USB-Platte schreiben. Das USB-Laufwerk anschließen und den ROCKPro64 einschalten.

    Der u-boot im SPI wird geladen und sucht nach einem bootfähigen Gerät, wenn er eines findet, wird das System geladen.

    Erfolgreich habe ich das mit einer SSD, dem USB3-to-SATA Adapter von Pine64 getestet. Leider geht das im Moment nur am USB2, zu mindestens bei mir. Hab mal Kamil Bescheid gesagt 😉

  • Update 9.8.2018

    Ich kann aktuell den SPI nicht mehr löschen. Das Erase-Image macht hier nichts. Ihr solltet dringend davon absehen, das im Moment auszuprobieren!!

    Laut Kamil kann man den SPI noch auf andere Weise abschalten. Dazu brückt man die Pins 23(CLK) und 25(GND) auf dem Pi-2 Connector. https://forum.frank-mankel.org/topic/28/rockpro64-übersicht/4

    Ausprobiert, funktioniert.

    Sorry, ich hatte eine defekte SD-Karte erwischt! Das Erase-Image geht einwandfrei!

  • Das Booten vom USB3 Port funktioniert, wenn man einen aktiven USB3 Hub dazwischen hängt. Vermutlich ein Timing Problem (Spekulation).

    Eingesetzte Hardware

    • USB3-to-SATA Adapter von pine64
    • Samsung 860 PRO 256GB
    • deleyCON 4port USB3 Hub (nix besonderes)

  • Wie ich jetzt mehrmals festgestellt habe, ist das System von der USB3 Platte instabil.

     [111985.654653] EXT4-fs error (d4: inode #16354: comm systemd: r[111985.837719] EXT4-fs error 
    

    Das killt dann das komplette System.

    Ob das an meiner Hardware liegt, weiß ich nicht. Also, wer da draußen so ein System einsetzen will, Vorsicht! Die USB3-Schnittstelle scheint noch einige Bugs zu haben!!

    Mein NVMe System dagegen ist absolut stabil!

  • ROCKPro64 - USB3

    ROCKPro64 rockpro64
    1
    0 Stimmen
    1 Beiträge
    313 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - Armbian nand-sata-install

    Verschoben Armbian armbian rockpro64
    14
    6
    0 Stimmen
    14 Beiträge
    2k Aufrufe
    FrankMF
    Ich habe heute, nachdem es einige Updates von Armbian gab, mal nachgeschaut ob ein spezieller Fehler verschwunden ist. Und zwar geht es um das Resizen der Partion nachdem wir Armbian auf eine USB-HDD (USB3) installiert haben. Ich setze dafür folgendes System ein. Hardware ROCKPro64v2.0 4GB RAM SanDisk 240GB 2,5 Zoll HDD (nix tolles) Software Welcome to ARMBIAN 5.67.181217 nightly Debian GNU/Linux 9 (stretch) 4.4.167-rockchip64 Was sehe ich nach dem Reboot? root@rockpro64:~# df -h Filesystem Size Used Avail Use% Mounted on udev 1.9G 0 1.9G 0% /dev tmpfs 388M 5.3M 383M 2% /run /dev/sda1 220G 1.3G 207G 1% / tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup tmpfs 1.9G 4.0K 1.9G 1% /tmp /dev/mmcblk0p1 58G 1.3G 57G 3% /media/mmcboot /dev/zram0 49M 3.0M 43M 7% /var/log tmpfs 388M 0 388M 0% /run/user/0 Korrekt die Größe angepasst! Schnell mal den USB3 testen root@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, 38.0723 s, 113 MB/s Der Adapter root@rockpro64:~# lsusb -vvv Bus 004 Device 002: ID 2109:0715 VIA Labs, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 3.10 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 9 idVendor 0x2109 VIA Labs, Inc. idProduct 0x0715 bcdDevice 1.31 iManufacturer 1 VLI Manufacture String iProduct 2 VLI Product String iSerial 3 000000123ADA bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 121 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 224mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 80 Bulk-Only iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 1 bNumEndpoints 4 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 98 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x04 EP 4 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 0 Command pipe (0x01) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x85 EP 5 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 MaxStreams 32 Data-in pipe (0x03) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x06 EP 6 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 MaxStreams 32 Data-out pipe (0x04) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x87 EP 7 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 0 MaxStreams 32 Status pipe (0x02) Binary Object Store Descriptor: bLength 5 bDescriptorType 15 wTotalLength 70 bNumDeviceCaps 4 FIXME: alloc bigger buffer for device capability descriptors Device Status: 0x0000 (Bus Powered) Ein lästiger Fehler weniger.
  • NVMe-Platte einrichten

    ROCKPro64 einsteiger rockpro64
    1
    0 Stimmen
    1 Beiträge
    2k Aufrufe
    Niemand hat geantwortet
  • Recover Button

    Hardware hardware rockpro64
    2
    2
    0 Stimmen
    2 Beiträge
    906 Aufrufe
    FrankMF
    Ich hab das mal ausprobiert. Den Recover Button so lange drücken, bis folgendes erscheint. In: serial@ff1a0000 Out: serial@ff1a0000 Err: serial@ff1a0000 Model: Pine64 RockPro64 rockchip_dnl_mode = 1 mode rockchip_dnl_mode = 2 mode rockchip_dnl_mode = 3 mode rockchip_dnl_mode = 4 mode entering maskrom mode... RKFlashTool clonen root@thinkpad:/home/frank/test# git clone https://github.com/rockchip-linux/rkflashtool Klone nach 'rkflashtool' ... remote: Counting objects: 663, done. remote: Total 663 (delta 0), reused 0 (delta 0), pack-reused 663 Empfange Objekte: 100% (663/663), 114.94 KiB | 0 bytes/s, Fertig. Löse Unterschiede auf: 100% (367/367), Fertig. In das Verzeichnis wechseln root@thinkpad:/home/frank/test# cd rkflashtool/ Inhalt root@thinkpad:/home/frank/test/rkflashtool# ls doc Makefile rkcrc.h rkflashtool.h rkparametersblock examples README rkflashall rkmisc rkunpack.c fixversion.sh release.sh rkflashloader rkpad rkunsign flashuboot rkcrc.c rkflashtool.c rkparameters version.h RKFlashtool bauen root@thinkpad:/home/frank/test/rkflashtool# make gcc -O2 -W -Wall -I/usr/include/libusb-1.0 rkflashtool.c -o rkflashtool -lusb-1.0 gcc -O2 -W -Wall -I/usr/include/libusb-1.0 rkcrc.c -o rkcrc -lusb-1.0 gcc -O2 -W -Wall -I/usr/include/libusb-1.0 rkunpack.c -o rkunpack -lusb-1.0 Ich habe ein USB-A to USB-A Kabel vom USB-C Port des ROCKPro64 zu meinem Notebook hergestellt. root@thinkpad:/home/frank/test/rkflashtool# sudo ./rkflashtool v rkflashtool: info: rkflashtool v5.2 rkflashtool: info: Detected RK3399... rkflashtool: info: interface claimed rkflashtool: info: MASK ROM MODE rkflashtool: info: chip version: -..- Ok, Verbindung steht. Eine Übersicht der Befehle root@thinkpad:/home/frank/test/rkflashtool# sudo ./rkflashtool rkflashtool: info: rkflashtool v5.2 rkflashtool: fatal: usage: rkflashtool b [flag] reboot device rkflashtool l <file load DDR init (MASK ROM MODE) rkflashtool L <file load USB loader (MASK ROM MODE) rkflashtool v read chip version rkflashtool n read NAND flash info rkflashtool i offset nsectors >outfile read IDBlocks rkflashtool j offset nsectors <infile write IDBlocks rkflashtool m offset nbytes >outfile read SDRAM rkflashtool M offset nbytes <infile write SDRAM rkflashtool B krnl_addr parm_addr exec SDRAM rkflashtool r partname >outfile read flash partition rkflashtool w partname <infile write flash partition rkflashtool r offset nsectors >outfile read flash rkflashtool w offset nsectors <infile write flash rkflashtool p >file fetch parameters rkflashtool P <file write parameters rkflashtool e partname erase flash (fill with 0xff) rkflashtool e offset nsectors erase flash (fill with 0xff)
  • Paar Info's vom Chef

    ROCKPro64 rockpro64
    1
    0 Stimmen
    1 Beiträge
    681 Aufrufe
    Niemand hat geantwortet
  • u-boot-flash-spi-rockpro64.img.xz

    Verschoben Tools rockpro64
    1
    0 Stimmen
    1 Beiträge
    2k Aufrufe
    Niemand hat geantwortet
  • u-boot-erase-spi-rockpro64.img.xz

    Verschoben Tools rockpro64
    1
    0 Stimmen
    1 Beiträge
    960 Aufrufe
    Niemand hat geantwortet
  • Wiki zum ROCKPro64 veröffentlicht!

    Verschoben ROCKPro64 rockpro64
    1
    1
    0 Stimmen
    1 Beiträge
    1k Aufrufe
    Niemand hat geantwortet