Skip to content

SATA - Booten jetzt möglich

ROCKPro64
  • Wie ich gestern schon schrieb, hat Sigmaris seinen u-boot aktualisiert.
    https://forum.frank-mankel.org/topic/746/u-boot

    Das möchte ich dann heute Morgen beim Kaffee mal testen 🙂 Auf geht's. Das Image auf die SD-Karte und ab in den ROCKPro64 damit.

    Bitte beachtet die Anleitung!

    Die Ausgabe

    U-Boot 2020.01-rc5-01969-g0bfd4738c6 (Jan 03 2020 - 15:46:36 +0000)
    
    Model: Pine64 RockPro64
    DRAM:  2 GiB
    PMIC:  RK808 
    MMC:   dwmmc@fe320000: 1, sdhci@fe330000: 0
    Loading Environment from SPI Flash... SF: Detected gd25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
    *** Warning - bad CRC, using default environment
    
    In:    serial@ff1a0000
    Out:   serial@ff1a0000
    Err:   serial@ff1a0000
    Model: Pine64 RockPro64
    rockchip_dnl_key_pressed: adc_channel_single_shot fail!
    Net:   eth0: ethernet@fe300000
    Hit any key to stop autoboot:  0 
    Card did not respond to voltage select!
    switch to partitions #0, OK
    mmc1 is current device
    Scanning mmc 1:3...
    Found U-Boot script /boot.scr
    967 bytes read in 5 ms (188.5 KiB/s)
    ## Executing script at 00500000
    SF: Detected gd25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
    1363484 bytes read in 63 ms (20.6 MiB/s)
    device 0 offset 0x0, size 0x14ce1c
    1220124 bytes written, 143360 bytes skipped in 14.674s, speed 95148 B/s
    Wrote U-Boot to SPI Flash successfully.
    
    U-Boot TPL 2020.01-01987-g335875f1f5 (Feb 01 2020 - 15:02:32)
    Channel 0: LPDDR4, 50MHz
    BW=32 Col=10 Bk=8 CS0 Row=15 CS=1 Die BW=16 Size=1024MB
    Channel 1: LPDDR4, 50MHz
    BW=32 Col=10 Bk=8 CS0 Row=15 CS=1 Die BW=16 Size=1024MB
    256B stride
    256B stride
    lpddr4_set_rate: change freq to 400000000 mhz 0, 1
    lpddr4_set_rate: change freq to 800000000 mhz 1, 0
    Trying to boot from BOOTROM
    Returning to boot ROM...
    
    U-Boot SPL 2020.01-01987-g335875f1f5 (Feb 01 2020 - 15:02:32 +0000)
    Trying to boot from SPI
    NOTICE:  BL31: v2.2(release):v2.2-271-g9a943ba43
    NOTICE:  BL31: Built : 15:00:49, Feb  1 2020
    
    
    U-Boot 2020.01-01987-g335875f1f5 (Feb 01 2020 - 15:02:32 +0000)
    
    Model: Pine64 RockPro64
    DRAM:  2 GiB
    PMIC:  RK808 
    MMC:   dwmmc@fe320000: 1, sdhci@fe330000: 0
    Loading Environment from SPI Flash... SF: Detected gd25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
    *** Warning - bad CRC, using default environment
    
    In:    serial@ff1a0000
    Out:   serial@ff1a0000
    Err:   serial@ff1a0000
    Model: Pine64 RockPro64
    Net:   eth0: ethernet@fe300000
    Hit any key to stop autoboot:  0 
    Card did not respond to voltage select!
    Card did not respond to voltage select!
    PCIE-0: Link down
    

    Hier der Schreibvorgang

    Found U-Boot script /boot.scr
    967 bytes read in 5 ms (188.5 KiB/s)
    ## Executing script at 00500000
    SF: Detected gd25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
    1363484 bytes read in 63 ms (20.6 MiB/s)
    device 0 offset 0x0, size 0x14ce1c
    1220124 bytes written, 143360 bytes skipped in 14.674s, speed 95148 B/s
    Wrote U-Boot to SPI Flash successfully.
    

    Gut, dann jetzt zum SATA-Test.

    SATA-Test

    Hardware

    • Pine64 Adapter
    • SanDisk Ultra SSD 3D 1TB

    Stromversorgung erfolgt über ein PC-Netzteil.

    Software

    Ein jungfräuliches Armbian. Dann starten wir mal, hier die Ausgabe.

    Willkommen zu minicom 2.7.1
    
    Optionen: I18n 
    Übersetzt am May  6 2018, 08:02:47.
    Port /dev/ttyUSB0
    
    Drücken Sie CTRL-A  Z für Hilfe zu speziellen Tasten
    
    U-Boot TPL 2020.01-01987-g335875f1f5 (Feb 01 2020 - 15:02:32)
    Channel 0: LPDDR4, 50MHz
    BW=32 Col=10 Bk=8 CS0 Row=15 CS=1 Die BW=16 Size=1024MB
    Channel 1: LPDDR4, 50MHz
    BW=32 Col=10 Bk=8 CS0 Row=15 CS=1 Die BW=16 Size=1024MB
    256B stride
    256B stride
    lpddr4_set_rate: change freq to 400000000 mhz 0, 1
    lpddr4_set_rate: change freq to 800000000 mhz 1, 0
    Trying to boot from BOOTROM
    Returning to boot ROM...
    
    U-Boot SPL 2020.01-01987-g335875f1f5 (Feb 01 2020 - 15:02:32 +0000)
    Trying to boot from SPI
    NOTICE:  BL31: v2.2(release):v2.2-271-g9a943ba43                                
    NOTICE:  BL31: Built : 15:00:49, Feb  1 2020                                    
                                                                                    
                                                                                    
    U-Boot 2020.01-01987-g335875f1f5 (Feb 01 2020 - 15:02:32 +0000)                 
                                                                                    
    Model: Pine64 RockPro64                                                         
    DRAM:  2 GiB                                                                    
    PMIC:  RK808                                                                    
    MMC:   dwmmc@fe320000: 1, sdhci@fe330000: 0                                     
    Loading Environment from SPI Flash... SF: Detected gd25q128 with page size 256 B
    *** Warning - bad CRC, using default environment                                
                                                                                    
    In:    serial@ff1a0000                                                          
    Out:   serial@ff1a0000                                                          
    Err:   serial@ff1a0000                                                          
    Model: Pine64 RockPro64                                                         
    Net:   eth0: ethernet@fe300000                                                  
    Hit any key to stop autoboot:  0                                                
    Card did not respond to voltage select!                                         
    Card did not respond to voltage select!                                         
    PCIE-0: Link up (Bus0)                                                          
                                                                                    
    Device 0: unknown device                                                        
    scanning bus for devices...                                                     
    SATA link 0 timeout.                                                            
    Target spinup took 0 ms.                                                        
    AHCI 0001.0200 32 slots 2 ports 6 Gbps 0x3 impl SATA mode                       
    flags: 64bit ncq stag led clo pmp pio slum part ccc sxs                         
      Device 0: (1:0) Vendor: ATA Prod.: SanDisk SDSSDH3 Rev: 4011                  
                Type: Hard Disk                                                     
                Capacity: 953869.7 MB = 931.5 GB (1953525168 x 512)                 
                                                                                    
    Device 0: (1:0) Vendor: ATA Prod.: SanDisk SDSSDH3 Rev: 4011                    
                Type: Hard Disk                                                     
                Capacity: 953869.7 MB = 931.5 GB (1953525168 x 512)                 
    ... is now current device                                                       
    Scanning scsi 0:1...                                                            
    Found U-Boot script /boot/boot.scr                                              
    2940 bytes read in 10 ms (287.1 KiB/s)                                          
    ## Executing script at 00500000                                                 
    Boot script loaded from scsi 0                                                  
    151 bytes read in 9 ms (15.6 KiB/s)                                             
    6928122 bytes read in 120 ms (55.1 MiB/s)                                       
    20987912 bytes read in 345 ms (58 MiB/s)                                        
    96273 bytes read in 19 ms (4.8 MiB/s)                                           
    ## Loading init Ramdisk from Legacy Image at 06000000 ...                       
       Image Name:   uInitrd                                                        
       Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)                  
       Data Size:    6928058 Bytes = 6.6 MiB                                        
       Load Address: 00000000                                                       
       Entry Point:  00000000                                                       
       Verifying Checksum ... OK                                                    
    ## Flattened Device Tree blob at 01f00000                                       
       Booting using the fdt blob at 0x1f00000                                      
       Loading Ramdisk to 7d861000, end 7defc6ba ... OK                             
    ERROR: reserving fdt memory region failed (addr=0 size=0)                       
       Loading Device Tree to 000000007d7e1000, end 000000007d860fff ... OK         
                                                                                    
    Starting kernel ...                                                             
                                                                                    
                                                                                    
    Armbian 19.11.7 Buster ttyS2                                                    
                                                                                    
    rockpro64 login: 
    

    Der interessante Teil

    SATA link 0 timeout.                                                            
    Target spinup took 0 ms.                                                        
    AHCI 0001.0200 32 slots 2 ports 6 Gbps 0x3 impl SATA mode                       
    flags: 64bit ncq stag led clo pmp pio slum part ccc sxs                         
      Device 0: (1:0) Vendor: ATA Prod.: SanDisk SDSSDH3 Rev: 4011                  
                Type: Hard Disk                                                     
                Capacity: 953869.7 MB = 931.5 GB (1953525168 x 512)                 
                                                                                    
    Device 0: (1:0) Vendor: ATA Prod.: SanDisk SDSSDH3 Rev: 4011                    
                Type: Hard Disk                                                     
                Capacity: 953869.7 MB = 931.5 GB (1953525168 x 512)                 
    ... is now current device    
    

    Die SSD wird am SATA-Adapter erkannt und von dort gebootet. Yeah!

    root@rockpro64:~# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    udev            960M     0  960M   0% /dev
    tmpfs           193M  7.8M  185M   5% /run
    /dev/sda1       909G  5.2G  894G   1% /
    tmpfs           963M     0  963M   0% /dev/shm
    tmpfs           5.0M  4.0K  5.0M   1% /run/lock
    tmpfs           963M     0  963M   0% /sys/fs/cgroup
    tmpfs           963M  4.0K  963M   1% /tmp
    /dev/zram0       49M  1.3M   44M   3% /var/log
    tmpfs           193M     0  193M   0% /run/user/0
    

    Das Armbian dauert beim ersten Start etwas, das Filesystem wird expandiert. Danach kommt das hier

         ____            _    ____               __   _  _   
        |  _ \ ___   ___| | _|  _ \ _ __ ___    / /_ | || |  
        | |_) / _ \ / __| |/ / |_) | '__/ _ \  | '_ \| || |_ 
        |  _ < (_) | (__|   <|  __/| | | (_) | | (_) |__   _|
        |_| \_\___/ \___|_|\_\_|   |_|  \___/   \___/   |_|  
                                                             
        Welcome to Armbian buster with Linux 4.4.208-rockchip64
        
        System load:   0.06 0.34 0.19  	Up time:       5 min		
        Memory usage:  5 % of 1925MB 	IP:            192.168.3.14
        CPU temp:      41°C           	
        Usage of /:    1% of 909G   	
        
        Last login: Sun Feb  2 07:37:05 2020 from 192.168.3.213
    

    Funktioniert 🙂

    Schnell noch ein Speedtest

    root@rockpro64:~# 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 Feb  2 07:38:17 2020
    
    	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    37751    45682    53103    54242    29458    45794                                                          
              102400      16    91193   101342   110226   113039    65179   100783                                                          
              102400     512   160846   172882   174878   173878   156964   173685                                                          
              102400    1024   173077   174518   169235   175272   167570   175185                                                          
              102400   16384   185940   187884   196006   195967   195369   188492                                                          
    
    iozone test complete.
    root@rockpro64:~# 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, 23.2034 s, 185 MB/s
    

    Nicht optimal mit dieser SSD, aber das dürfte so in etwa das Maximum sein, was man mit dem Adapter erreichen kann.

    Noch schnell getestet, was geht.

    • SATA - Ja
    • PCIe NVMe - Ja
    • USB3 - Nein
    • USB2 - Ja
    • SD - Ja
    • eMMC - ???

    eMMC zwar getestet, aber ich bin mir nicht sicher ob meine Karte noch lebt.

    Fazit

    Schöner u-boot wenn man von PCIe NVMe oder SATA booten möchte. Jetzt noch funktionierendes USB3 und der u-boot ist fertug 🙂 Danke @ sigmaris!!

  • Mainline 5.13.x

    Images
    1
    0 Stimmen
    1 Beiträge
    176 Aufrufe
    Niemand hat geantwortet
  • Booten von USB3

    Verschoben ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    286 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - Alter u-boot im SPI-Flash

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    497 Aufrufe
    Niemand hat geantwortet
  • Infrarot Empfänger

    Hardware
    1
    0 Stimmen
    1 Beiträge
    780 Aufrufe
    Niemand hat geantwortet
  • Neuer Bootprozeß seit 0.7.x

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    843 Aufrufe
    Niemand hat geantwortet
  • Lokale Einstellungen

    Verschoben ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    554 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - Der Bootvorgang

    Verschoben Hardware
    3
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    FrankMF

    Um einen neuen Kernel booten zu können, brauche ich diese 4 Dateien unter /boot

    config-4.19.0-rc4-1065-ayufan-g72e04c7b3e06 initrd.img-4.19.0-rc4-1065-ayufan-g72e04c7b3e06 System.map-4.19.0-rc4-1065-ayufan-g72e04c7b3e06 vmlinuz-4.19.0-rc4-1065-ayufan-g72e04c7b3e06

    Und den Ordner /boot/dtbs/4.19.0-rc4-1065-ayufan-g72e04c7b3e06 mit folgendem Inhalt

    rock64@rockpro64v2_0:/boot/dtbs/4.19.0-rc4-1065-ayufan-g72e04c7b3e06$ ls -la total 104 drwxr-xr-x 26 root root 4096 Sep 30 09:54 . drwxr-xr-x 6 root root 4096 Sep 30 09:55 .. drwxr-xr-x 2 root root 4096 Sep 30 09:54 al drwxr-xr-x 2 root root 4096 Sep 30 09:54 allwinner drwxr-xr-x 2 root root 4096 Sep 30 09:54 altera drwxr-xr-x 2 root root 4096 Sep 30 09:54 amd drwxr-xr-x 2 root root 4096 Sep 30 09:54 amlogic drwxr-xr-x 2 root root 4096 Sep 30 09:54 apm drwxr-xr-x 2 root root 4096 Sep 30 09:54 arm drwxr-xr-x 4 root root 4096 Sep 30 09:54 broadcom drwxr-xr-x 2 root root 4096 Sep 30 09:54 cavium drwxr-xr-x 2 root root 4096 Sep 30 09:54 exynos drwxr-xr-x 2 root root 4096 Sep 30 09:54 freescale drwxr-xr-x 2 root root 4096 Sep 30 09:54 hisilicon drwxr-xr-x 2 root root 4096 Sep 30 09:54 lg drwxr-xr-x 2 root root 4096 Sep 30 09:54 marvell drwxr-xr-x 2 root root 4096 Sep 30 09:54 mediatek drwxr-xr-x 2 root root 4096 Sep 30 09:54 nvidia drwxr-xr-x 2 root root 4096 Sep 30 09:54 qcom drwxr-xr-x 2 root root 4096 Sep 30 09:54 renesas drwxr-xr-x 2 root root 4096 Sep 30 09:54 rockchip drwxr-xr-x 2 root root 4096 Sep 30 09:54 socionext drwxr-xr-x 2 root root 4096 Sep 30 09:54 sprd drwxr-xr-x 2 root root 4096 Sep 30 09:54 synaptics drwxr-xr-x 2 root root 4096 Sep 30 09:54 xilinx drwxr-xr-x 2 root root 4096 Sep 30 09:54 zte

    Unter /boot/extlinux liegt dann die Datei extlinux.conf

    Die sieht bei mir dann so aus

    timeout 10 menu title select kernel label kernel-4.19.0-rc4-1065-ayufan-g72e04c7b3e06 kernel /boot/vmlinuz-4.19.0-rc4-1065-ayufan-g72e04c7b3e06 initrd /boot/initrd.img-4.19.0-rc4-1065-ayufan-g72e04c7b3e06 devicetreedir /boot/dtbs/4.19.0-rc4-1065-ayufan-g72e04c7b3e06 append rw panic=10 init=/sbin/init coherent_pool=1M ethaddr=${ethaddr} eth1addr=${eth1addr} serial=${serial#} cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1 root=LABEL=TEST rootwait rootfstype=ext4 label kernel-4.19.0-rc4-1065-ayufan-g72e04c7b3e06-memtest kernel /boot/vmlinuz-4.19.0-rc4-1065-ayufan-g72e04c7b3e06 initrd /boot/initrd.img-4.19.0-rc4-1065-ayufan-g72e04c7b3e06 devicetreedir /boot/dtbs/4.19.0-rc4-1065-ayufan-g72e04c7b3e06 append rw panic=10 init=/sbin/init coherent_pool=1M ethaddr=${ethaddr} eth1addr=${eth1addr} serial=${serial#} cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1 root=LABEL=TEST rootwait rootfstype=ext4 memtest

    Darunter kommen dann evt. die alten Kernel die installiert waren, das habe ich hier im Beispiel weg gelassen.

  • Serielle Konsole UART2

    Angeheftet Verschoben Hardware
    8
    0 Stimmen
    8 Beiträge
    3k Aufrufe
    FrankMF

    Ich verweise mal auf einen Artikel auf einer Webseite von mir, der Einsteiger Niveau hat.
    https://frank-mankel.de/wichtig/serielle-konsole

    Wenn es dann noch Probleme gibt, einfach fragen.

    Und beachte bitte, das wir hier nicht über PIs schreiben, sondern über ROCKPros. Da könnte es kleine Unterschiede geben. https://www.raspberrypi.org/documentation/configuration/uart.md