Skip to content

ROCKPro64 - Der Bootvorgang

Verschoben Hardware
  • Basis für diesen Beitrag

    rock64@rockpro64:/boot$ uname -a
    Linux rockpro64 4.4.132-1075-rockchip-ayufan-ga83beded8524 #1 SMP Thu Jul 26 08:22:22 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
    

    So sieht die Partitionstabelle des Images aus (SD-Karte)

     rock64@rockpro64:/boot$ sudo fdisk /dev/mmcblk0
     [sudo] password for rock64: 
     
     Welcome to fdisk (util-linux 2.31.1).
     Changes will remain in memory only, until you decide to write them.
     Be careful before using the write command.
     
     
     Command (m for help): p
     Disk /dev/mmcblk0: 29.7 GiB, 31914983424 bytes, 62333952 sectors
     Units: sectors of 1 * 512 = 512 bytes
     Sector size (logical/physical): 512 bytes / 512 bytes
     I/O size (minimum/optimal): 512 bytes / 512 bytes
     Disklabel type: gpt
     Disk identifier: 2C9A4A22-7AA8-4A1B-815E-0C3E2E7065E6
     
     Device          Start      End  Sectors  Size Type
     /dev/mmcblk0p1     64     8063     8000  3.9M Linux filesystem
     /dev/mmcblk0p2   8064     8191      128   64K Linux filesystem
     /dev/mmcblk0p3   8192    16383     8192    4M Linux filesystem
     /dev/mmcblk0p4  16384    24575     8192    4M Linux filesystem
     /dev/mmcblk0p5  24576    32767     8192    4M Linux filesystem
     /dev/mmcblk0p6  32768   262143   229376  112M Microsoft basic data
     /dev/mmcblk0p7 262144 62333918 62071775 29.6G Linux filesystem
     
     Command (m for help): 
    
    Partition Start Sector Number of Sectors Partition Size PartNum in GPT Requirements
    MBR 0 1 512
    Primary GPT 1 63 32256
    loader1 64 7104 4096000 1 preloader (miniloader or U-Boot SPL)
    Vendor Storage 7168 512 262144 SN, MAC and etc.
    Reserved Space 7680 384 196608 Not used
    reserved1 8064 128 65536 legacy DRM key
    U-Boot ENV 8128 64 32768
    reserved2 8192 8192 4194304 legacy parameter
    loader2 16384 8192 4194304 2 U-Boot or UEFI
    trust 24576 8192 4194304 3 trusted-os like ATF, OP-TEE
    boot(bootable must be set) 32768 229376 117440512 4 kernel, dtb, extlinux.conf, ramdisk
    rootfs 262144 - - 5 Linux system
    Secondary GPT 16777183 33 16896

    Quelle der Info's (bearbeitet) Rockchip.

    Hier sieht man das zwei Partitionen gemountet werden.

    rock64@rockpro64:~$ df -h
    Filesystem      Size  Used Avail Use% Mounted on
    udev            992M     0  992M   0% /dev
    tmpfs           200M  484K  199M   1% /run
    /dev/mmcblk0p7   30G  1.3G   27G   5% /
    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/mmcblk0p6  112M  4.0K  112M   1% /boot/efi
    /dev/sda1       1.9T   43G  1.8T   3% /mnt
    tmpfs           200M     0  200M   0% /run/user/1000
    
    • /dev/mmcblk0p6 = /boot/efi
    • /dev/mmcblk0p7 = Linux System /

    Inhalt /boot/efi (/dev/mmcblk0p6)

    rock64@rockpro64:/boot/efi$ ls -la
    total 22
    drwxr-xr-x 3 root root 16384 Jan  1  1970 .
    drwxr-xr-x 5 root root  4096 Aug 27 17:23 ..
    drwxr-xr-x 2 root root  2048 Jul 26 09:15 extlinux
    

    Inhalt extlinux

    rock64@rockpro64:/boot/efi$ ls -la extlinux/
    total 20
    drwxr-xr-x 2 root root  2048 Jul 26 09:15 .
    drwxr-xr-x 3 root root 16384 Jan  1  1970 ..
    -rwxr-xr-x 1 root root   688 Jul 21 22:50 extlinux.conf
    

    Datei extlinux.conf

     timeout 10
     default kernel-latest
     menu title select kernel
     
     label kernel-latest
         kernel /Image
         initrd /initrd.img
         fdt /dtb
         append rw root=LABEL=linux-root rootwait rootfstype=ext4 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
     
     label kernel-previous
         kernel /Image.bak
         initrd /initrd.img.bak
         fdt /dtb.bak
         append rw root=LABEL=linux-root rootwait rootfstype=ext4 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
    

    Inhalt /boot (/dev/mmcblk0p7)

    rock64@rockpro64:/boot$ ls
    System.map-4.4.132-1075-rockchip-ayufan-ga83beded8524  filesystem.packages
    config-4.4.132-1075-rockchip-ayufan-ga83beded8524      filesystem.packages-remove
    dtbs                                                   initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524
    efi                                                    vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524
    extlinux
    

    In extlinux liegt auch hier eine extlinux.conf mit folgendem Inhalt.

    timeout 10
    menu title select kernel
    
    label kernel-4.4.132-1075-rockchip-ayufan-ga83beded8524
        kernel /boot/vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524
        initrd /boot/initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524
        devicetreedir /boot/dtbs/4.4.132-1075-rockchip-ayufan-ga83beded8524
        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=linux-root rootwait rootfstype=ext4
    
    label kernel-4.4.132-1075-rockchip-ayufan-ga83beded8524-memtest
        kernel /boot/vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524
        initrd /boot/initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524
        devicetreedir /boot/dtbs/4.4.132-1075-rockchip-ayufan-ga83beded8524
        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=linux-root rootwait rootfstype=ext4 memtest
    

    Ok, das kenne ich. Hier stellt man ein von wo er bootet usw. Was ich nicht verstehe, wofür braucht es dann /boot/efi (/dev/mmcblk0p6) ?? Es gibt immer einen Eintrag für die aktuelle Kernelversion und die alte Kernelversion. Wenn was schief geht, kann man die alte Version booten. Die aktuelle Version steht immer oben. Im Beispiel handelt es sich um das Original Image, kein anderer Kernel ist installiert.

    • Ordner /boot/efi ???
    • Ordner /boot/dtbs - hier liegt das .dts File!!
    • Ordner /boot/efi ???
    • Ordner /boot/extlinux ???????

    System.map-4.4.132-1075-rockchip-ayufan-ga83beded8524

    A symbol table is a look-up between symbol names and their addresses in memory. A symbol name may be the name of a variable or the name of a function.

    Quelle: https://en.wikipedia.org/wiki/System.map

    Beispiel (gekürzt)

    0000000000000000 A __rela_size
    0000000000000000 A _kernel_flags_le_hi32
    0000000000000000 A _kernel_offset_le_hi32
    0000000000000000 A _kernel_size_le_hi32
    000000000000000a A _kernel_flags_le_lo32
    0000000000000200 A PECOFF_FILE_ALIGNMENT
    0000000000080000 A _kernel_offset_le_lo32
    000000000119f908 A __rela_offset
    0000000001392000 A _kernel_size_le_lo32
    ffffff8008080000 t _head
    ffffff8008080000 T _text
    ffffff8008080800 T __exception_text_start
    ffffff8008080800 T _stext
    ffffff8008080800 T do_undefinstr
    ffffff8008080a1c T do_sysinstr
    ffffff8008080ab4 T do_mem_abort
    ffffff8008080b60 T do_sp_pc_abort
    ffffff8008080c34 T do_debug_exception
    ffffff8008080ce8 T __exception_text_end
    ffffff8008080ce8 T __irqentry_text_start
    ffffff8008080ce8 t gic_handle_irq
    ffffff8008080da8 t gic_handle_irq
    ffffff8008080f28 T __do_softirq
    ffffff8008080f28 T __irqentry_text_end
    ffffff8008080f28 T __softirqentry_text_start
    ffffff8008081228 T __entry_text_start
    ffffff8008081228 T __softirqentry_text_end
    ffffff8008081800 T vectors
    

    config-4.4.132-1075-rockchip-ayufan-ga83beded8524

    Linux Kernel Konfiguration

    Beispiel (gekürzt)

    #
    # Automatically generated file; DO NOT EDIT.
    # Linux/arm64 4.4.132 Kernel Configuration
    #
    CONFIG_ARM64=y
    CONFIG_64BIT=y
    CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
    CONFIG_MMU=y
    CONFIG_ARCH_MMAP_RND_BITS_MIN=18
    CONFIG_ARCH_MMAP_RND_BITS_MAX=24
    CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11
    CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16
    CONFIG_ARM64_PAGE_SHIFT=12
    CONFIG_ARM64_CONT_SHIFT=4
    CONFIG_STACKTRACE_SUPPORT=y
    CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
    CONFIG_LOCKDEP_SUPPORT=y
    CONFIG_TRACE_IRQFLAGS_SUPPORT=y
    CONFIG_RWSEM_XCHGADD_ALGORITHM=y
    CONFIG_GENERIC_BUG=y
    CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
    CONFIG_GENERIC_HWEIGHT=y
    CONFIG_GENERIC_CSUM=y
    CONFIG_GENERIC_CALIBRATE_DELAY=y
    CONFIG_ZONE_DMA=y
    CONFIG_HAVE_GENERIC_RCU_GUP=y
    CONFIG_ARCH_DMA_ADDR_T_64BIT=y
    CONFIG_NEED_DMA_MAP_STATE=y
    CONFIG_NEED_SG_DMA_LENGTH=y
    CONFIG_SMP=y
    CONFIG_SWIOTLB=y
    CONFIG_IOMMU_HELPER=y
    CONFIG_KERNEL_MODE_NEON=y
    CONFIG_FIX_EARLYCON_MEM=y
    CONFIG_PGTABLE_LEVELS=3
    

    filesystem.packages

    Beispiel (gekürzt)

    adduser 3.116ubuntu1
    alsa-utils      1.1.3-1ubuntu1
    apt     1.6.1
    apt-utils       1.6.1
    base-files      10.1ubuntu2
    base-passwd     3.5.44
    bash    4.4.18-2ubuntu1
    binutils        2.30-15ubuntu1
    binutils-aarch64-linux-gnu      2.30-15ubuntu1
    binutils-common:arm64   2.30-15ubuntu1
    bsdutils        1:2.31.1-0.4ubuntu3
    build-essential 12.4ubuntu1
    busybox-initramfs       1:1.27.2-2ubuntu3
    bzip2   1.0.6-8.1
    ca-certificates 20180409
    console-setup   1.178ubuntu2
    console-setup-linux     1.178ubuntu2
    coreutils       8.28-1ubuntu1
    

    filesystem.packages-remove

    Datei ist leer

    initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524

    initrd ist ein temporäres Dateisystem, das vom Linux-Kernel während des Bootvorgangs verwendet wird.

    Quelle: https://de.wikipedia.org/wiki/Initrd

    Jedes mal, wenn man einen Kernel installiert, wird dieses File angelegt. Ein Beispiel von meinem ROCKPro64 mit NVMe SSD.

    rock64@rockpro64v2_0:/boot$ ls
    config-4.18.0-rc8-1060-ayufan-g45828c4db727
    config-4.4.132-1075-rockchip-ayufan-ga83beded8524
    dtbs
    efi
    extlinux
    filesystem.packages
    filesystem.packages-remove
    initrd.img-4.18.0-rc8-1056-ayufan-gad339353011e
    initrd.img-4.18.0-rc8-1060-ayufan-g45828c4db727
    initrd.img-4.18.0-rc8-1060-ayufan-g45828c4db727.bak
    initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524
    System.map-4.18.0-rc8-1060-ayufan-g45828c4db727
    System.map-4.4.132-1075-rockchip-ayufan-ga83beded8524
    vmlinuz-4.18.0-rc8-1060-ayufan-g45828c4db727
    vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524
    

    Hier kann man auch ganz gut erkennen, das es immer ein initrd.img gibt, eine entsprechende System.map und eine vmlinux.

    vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524

    On Linux systems, vmlinux is a statically linked executable file that contains the Linux kernel in one of the object file formats supported by Linux, which includes ELF, COFF and a.out. The vmlinux file might be required for kernel debugging, symbol table generation or other operations, but must be made bootable before being used as an operating system kernel by adding a multiboot header, bootsector and setup routines.

    Ich denke, das man das normalerweise nicht braucht. Aber ich mach hier zur Sicherheit mal ein paar ???? dran!

    wird fortgesetzt..

  • Ich versuche hier mal den Bootvorgang des ROCKPro64 zu verstehen 🙂

  • 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.

  • 0 Stimmen
    1 Beiträge
    358 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 Übersicht - was geht?

    ROCKPro64
    4
    0 Stimmen
    4 Beiträge
    588 Aufrufe
    FrankMF
    WIFI

    Seit dem Release des Images 0.7.13 ist WiFi auch möglich. Weiterhin ungelöst ist das Problem PCIe & WiFi (also bei mir).

  • Der 3. ROCKPro64

    ROCKPro64
    3
    0 Stimmen
    3 Beiträge
    914 Aufrufe
    FrankMF

    Nachdem ich jetzt mein NAS neu gemacht habe, schauen wir mal, was die Chinesen geliefert haben. Bestellt hatte ich

    ROCKPro64 v2.1 2GB RAM Kühlkörper Netzteil 3A USB-Adapter für eMMC-Modul

    Endlich habe ich mal an den USB-Adapter für das eMMC-Modul gedacht 🙂

    0_1540029624802_IMG_20181020_115348_ergebnis.jpg

    Was ist mir aufgefallen? Das Versionsdatum ist neu (siehe oben) Die PCIe NVMe Karte ist neu

    Bei der PCIe NVMe Karte liegt eine Abstandshülse aus Messing und eine winzig kleine Schraube bei. Damit bekomme ich aber nicht die NVMe-SSD befestigt. Ich habe dann gemurkst 😉 Da sollte Pine64 unbedingt nachbessern!

    So sieht das dann zusammengebaut aus.

    0_1540029756582_IMG_20181020_115425_ergebnis.jpg

    0_1540029767082_IMG_20181020_115438_ergebnis.jpg

    Da ich ein paarmal gelesen hatte, das Leute Probleme mit dem PCIe NVMe Adapter hatten, direkt als erstes mal ein Test ob das reibungslos funktioniert.

    Sys rock64@rockpro64:/mnt$ uname -a Linux rockpro64 4.4.132-1075-rockchip-ayufan-ga83beded8524 #1 SMP Thu Jul 26 08:22:22 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux lspci rock64@rockpro64:/mnt$ sudo lspci -vvv [sudo] password for rock64: 00:00.0 PCI bridge: Rockchip Inc. RK3399 PCI Express Root Port Device 0100 (prog-if 00 [Normal decode]) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort+ <TAbort+ <MAbort+ >SERR+ <PERR+ INTx- Latency: 0 Interrupt: pin A routed to IRQ 238 Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 I/O behind bridge: 00000000-00000fff Memory behind bridge: fa000000-fa0fffff Prefetchable memory behind bridge: 00000000-000fffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: [80] Power Management version 3 Flags: PMEClk- DSI- D1+ D2- AuxCurrent=0mA PME(D0+,D1+,D2-,D3hot+,D3cold-) Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME+ Capabilities: [90] MSI: Enable+ Count=1/1 Maskable+ 64bit+ Address: 00000000fee30040 Data: 0000 Masking: 00000000 Pending: 00000000 Capabilities: [b0] MSI-X: Enable- Count=1 Masked- Vector table: BAR=0 offset=00000000 PBA: BAR=0 offset=00000008 Capabilities: [c0] Express (v2) Root Port (Slot+), MSI 00 DevCap: MaxPayload 256 bytes, PhantFunc 0 ExtTag- RBE+ DevCtl: Report errors: Correctable+ Non-Fatal+ Fatal+ Unsupported+ RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ MaxPayload 128 bytes, MaxReadReq 512 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend- LnkCap: Port #0, Speed 5GT/s, Width x4, ASPM L1, Exit Latency L0s <256ns, L1 <8us ClockPM- Surprise- LLActRep- BwNot+ ASPMOptComp+ LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk- ExtSynch- ClockPM- AutWidDis- BWInt+ AutBWInt+ LnkSta: Speed 5GT/s, Width x4, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt- SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise- Slot #0, PowerLimit 0.000W; Interlock- NoCompl- SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg- Control: AttnInd Off, PwrInd Off, Power+ Interlock- SltSta: Status: AttnBtn- PowerFlt- MRL+ CmdCplt- PresDet- Interlock- Changed: MRL- PresDet- LinkState- RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna+ CRSVisible- RootCap: CRSVisible- RootSta: PME ReqID 0000, PMEStatus- PMEPending- DevCap2: Completion Timeout: Range B, TimeoutDis+, LTR+, OBFF Via message ARIFwd+ DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled ARIFwd- LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis- Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS- Compliance De-emphasis: -6dB LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-, EqualizationPhase1- EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest- Capabilities: [100 v2] Advanced Error Reporting UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol- CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr- CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+ AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn- Capabilities: [274 v1] Transaction Processing Hints Interrupt vector mode supported Device specific mode supported Steering table in TPH capability structure Kernel driver in use: pcieport 01:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961 (prog-if 02 [NVM Express]) Subsystem: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 237 Region 0: Memory at fa000000 (64-bit, non-prefetchable) [size=16K] Capabilities: [40] Power Management version 3 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME- Capabilities: [50] MSI: Enable- Count=1/32 Maskable- 64bit+ Address: 0000000000000000 Data: 0000 Capabilities: [70] Express (v2) Endpoint, MSI 00 DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 0.000W DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset- MaxPayload 128 bytes, MaxReadReq 512 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend- LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L1, Exit Latency L0s unlimited, L1 <64us ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+ LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk- ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt- LnkSta: Speed 5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- DevCap2: Completion Timeout: Range ABCD, TimeoutDis+, LTR+, OBFF Not Supported DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis- Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS- Compliance De-emphasis: -6dB LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-, EqualizationPhase1- EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest- Capabilities: [b0] MSI-X: Enable+ Count=8 Masked- Vector table: BAR=0 offset=00003000 PBA: BAR=0 offset=00002000 Capabilities: [100 v2] Advanced Error Reporting UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol- CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr- CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+ AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn- Capabilities: [148 v1] Device Serial Number 00-00-00-00-00-00-00-00 Capabilities: [158 v1] Power Budgeting <?> Capabilities: [168 v1] #19 Capabilities: [188 v1] Latency Tolerance Reporting Max snoop latency: 0ns Max no snoop latency: 0ns Capabilities: [190 v1] L1 PM Substates L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+ PortCommonModeRestoreTime=10us PortTPowerOnTime=10us L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1- T_CommonMode=0us LTR1.2_Threshold=0ns L1SubCtl2: T_PwrOn=10us Kernel driver in use: nvme

    Da sieht alles gut aus. x4 alles Bestens!

    iozone 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 Oct 20 10:08:28 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 63896 108269 91858 95309 32845 73173 102400 16 123393 236653 273766 275807 118450 199130 102400 512 471775 570571 484612 496942 441345 575817 102400 1024 544229 642558 508895 511834 486506 647765 102400 16384 1044520 1100322 1069825 1092146 1089301 1086757 iozone test complete.

    Das sieht nicht optimal aus, schau ich mir später an. Das hier soll nur ein kurzer Test sein ob das Board rennt 🙂

    Nachdem ich mittlerweile zwei ROCKPro64 im "produktiven" Einsatz habe, war es immer sehr mühsam mal eben was zu testen. Man will die anderen ja nicht immer ausmachen, dran rumhantieren usw. Deswegen jetzt der dritte, der im Moment dann die Rolle des Testkandidaten einnimmt. Ab sofort kann ich wieder nach Lust und Laune, neue Images testen usw.

  • Kernel 4.4.x

    Angeheftet Images
    45
    0 Stimmen
    45 Beiträge
    4k Aufrufe
    FrankMF

    4.4.202-1237-rockchip-ayufan released

    PATCH: kernel 4.4.201-202
  • 0 Stimmen
    1 Beiträge
    843 Aufrufe
    Niemand hat geantwortet
  • 0.6.59 released

    Verschoben Archiv
    1
    0 Stimmen
    1 Beiträge
    530 Aufrufe
    Niemand hat geantwortet
  • nodejs & NodeBB

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    505 Aufrufe
    Niemand hat geantwortet
  • Armbianmonitor

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