Skip to content

ROCKPro64 - PCIe SATA Karte

Verschoben Hardware
  • Mit 0.7.8 noch mal die PCIe SATA Karte testen.

    Hardware

    • SSD Festplatte 220GB
    • HDD Festplatte irgendwas mit um die 110GB -uralt-

    Software

    rock64@rockpro64:/media$ uname -a
    Linux rockpro64 4.4.132-1072-rockchip-ayufan-ga1d27dba5a2e #1 SMP Sat Jul 21 20:18:03 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
    

    0_1532255867307_SATA.jpg

    Adpater

    rock64@rockpro64:/media$ sudo lspci -vvv
    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 Disabled; RCB 64 bytes Disabled- CommClk-
    			ExtSynch- ClockPM- AutWidDis- BWInt+ AutBWInt+
    		LnkSta:	Speed 5GT/s, Width x1, 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 SATA controller: ASMedia Technology Inc. ASM1062 Serial ATA Controller (rev 02) (prog-if 01 [AHCI 1.0])
    	Subsystem: ASMedia Technology Inc. ASM1062 Serial ATA Controller
    	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 239
    	Region 0: I/O ports at <unassigned> [disabled]
    	Region 1: I/O ports at <unassigned> [disabled]
    	Region 2: I/O ports at <unassigned> [disabled]
    	Region 3: I/O ports at <unassigned> [disabled]
    	Region 4: I/O ports at <unassigned> [disabled]
    	Region 5: Memory at fa010000 (32-bit, non-prefetchable) [size=512]
    	[virtual] Expansion ROM at fa000000 [disabled] [size=64K]
    	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit-
    		Address: fee30040  Data: 0000
    	Capabilities: [78] 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: [80] Express (v2) Legacy Endpoint, MSI 00
    		DevCap:	MaxPayload 512 bytes, PhantFunc 0, Latency L0s <1us, L1 <8us
    			ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
    		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 #1, Speed 5GT/s, Width x1, ASPM not supported, Exit Latency L0s unlimited, L1 <2us
    			ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
    		LnkCtl:	ASPM Disabled; RCB 64 bytes Disabled- CommClk-
    			ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
    		LnkSta:	Speed 5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
    		DevCap2: Completion Timeout: Range ABC, TimeoutDis+, LTR-, OBFF Not Supported
    		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled
    		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 v1] Virtual Channel
    		Caps:	LPEVC=0 RefClk=100ns PATEntryBits=1
    		Arb:	Fixed- WRR32- WRR64- WRR128-
    		Ctrl:	ArbSelect=Fixed
    		Status:	InProgress-
    		VC0:	Caps:	PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
    			Arb:	Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
    			Ctrl:	Enable+ ID=0 ArbSelect=Fixed TC/VC=ff
    			Status:	NegoPending- InProgress-
    	Kernel driver in use: ahci
    

    Einmal der PCIe Adapter und die SATA Karte. So weit alles gut.

    Speedtest

    SSD

    rock64@rockpro64:/mnt$ sudo dd if=/dev/zero of=sd77.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.4839 s, 112 MB/s
    

    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: Sun Jul 22 10:42:12 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    28792    39366    52678    58495    13219    12889                                                          
              102400      16    61995    61928    88041   104969    38578    35227                                                          
              102400     512   159905    71439   214899   217569   214569   260194                                                          
              102400    1024   128472    85136   245539   246448   242433   178743                                                          
              102400   16384   329869   354069   323670   324324   324528   339370                                                          
    
    iozone test complete.
    

    HDD

    rock64@rockpro64:/media$ 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, 76.8208 s, 55.9 MB/s
    

    iozone

    rock64@rockpro64:/media$ 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 Jul 22 10:33:22 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    11683    21724    16840    16994      607     1219                                                          
              102400      16    29607    43380    44428    44267     2412     5658                                                          
              102400     512    54547    55261    50275    58474    31425    38247                                                          
              102400    1024    53838    52901    51727    54370    41678    45017                                                          
              102400   16384    54735    53438    51128    53344    50381    55148                                                          
    
    iozone test complete.
    

    Der HDD Test ist nicht aussagekräftig, das ist eine uralte 3,5 Zoll HDD!! Die dient hier nur zum Testen ob das auch mit zwei Platten funktioniert!!!

    Kopieren

    Ich kann mich daran erinnern, das ichbeim letzten Test Probleme hatte ein File von der einen auf die andere Festplatte zu kopieren. Da ist beim letzten Mal das ganze System gecrasht.

    Das ging dieses mal einwandfrei!

    LED

    Auf der SATA Karte ist eine blaue LED, diese leuchtet bei Zugriff auf die angeschlossenen Festplatten.

    0_1532256524293_IMG_20180722_124611.jpg

    Fazit

    Viel Spaß beim NAS bauen 🙂

    Eine andere Karte eines anderen Herstellers funktioniert nicht und löst eine Kernel Panic aus.

  • Hi,

    wie gibst du den angeschlossenen Platten an der PCIe Sata Karte Strom?
    Extra Netzteil oder über das Board?

    Grüße Alex

  • @schwabe93

    Hallo, ich benutze das folgende Kabel. https://www.pine64.org/?product=rockpro64-power-cable-for-dual-sata-drives

    Das kann man sich zur Not auch selber basteln. Ich habe am Anfang auch mal mit einem handelsüblichen PC-Netzteil experimentiert, obwohl ich da immer ein ungutes Gefühl hatte.

  • Hmm, ok ich habe mir gestern bei Amazon das hier bestellt https://www.amazon.de/dp/B072JLHGQT
    funktioniert leider nicht, bzw, vllt bin auch falsch dran wo ich den 4 Pin Stecker reinstecken muss auf dem Board. Laut meinem Verständnis Direkt hinter dem DC IN Anschluss? Dort wo GND steht.

    Danke für deine Hilfe

  • Das war keine so gute Idee. Schau mal ...

    0_1533330087484_IMG_20180803_225536_ergebnis.jpg

    Auf dem Board ist der weiße Steckplatz (Con15) neben DC IN. Dieser stellt zweimal 12VDC zur Verfügung.

    Pin 1&2 = 12VDC
    Pin3&4 = GND

    siehe Seite 11 -> http://files.pine64.org/doc/rockpro64/rockpro64_v21-SCH.pdf

    0_1533330093810_IMG_20180803_225546_ergebnis.jpg

    Wenn ich jetzt keinen Denkfehler habe, ist immer noch zu heiß zum Denken, dann ist aber nichts kaputt gegangen. Es funktioniert nur nicht. Glück gehabt 😉

    Mit dem jetzt vorhandenen Adapter könntest du dir aber mit den Informationen, den richtigen Adapter eben zusammen basteln. Ich habe aber keine Ahnung ob das für dich ein Problem ist. Ich als Elektriker sehe das nicht als großes Problem an.

    Wenn du dir unsicher bist, dann lass es lieber!! Bevor noch das schöne Board abbrennt 🙂

  • @frankm

    Dann werde ich mir wohl die offizielen kabel bestellen, weil rumbasteln werde ich da nicht an irgendeiner Elektronik.
    Der Rock läuft ja gottseidank noch, solange bis das teil da ist werde ich halt mit USB arbeiten.

  • @schwabe93 Lass es mich wissen, wenn du das Kabel hast, wie es so bei dir funktioniert.

  • @frankm So habe das Kabel erhalten, gleichmal angesteckt und mit 2 3.5 Zoll Festplatten getestet läuft wunderbar, jetzt kann ich anfangen mein NAS zu bauen.

  • Freut mich, das es jetzt klappt. Viel Spaß beim Bauen eines NAS.

    Ich bin auch immer an netten Bildern interessiert, was andere so mit ihren ROCKPros machen 😉

  • @FrankM

    Re: ROCKPro64 - PCIe SATA Karte

    how may HDD can you attach to the RockPro with this addon card? is 4 HDD possible?

  • @elRadix : With pine64 sata-card you can use two hdd's. https://www.pine64.org/?product=rockpro64-pci-e-to-dual-sata-ii-interface-card

    For working cards please look into this thread before you buy anything.

  • [V] ROCKPro64 incl. PCIe SATA-Karte

    Verschoben Archiv
    2
    0 Stimmen
    2 Beiträge
    247 Aufrufe
    FrankMF

    Verkauft!

  • SATA - Booten jetzt möglich

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    257 Aufrufe
    Niemand hat geantwortet
  • NVMe - Booten jetzt möglich

    Angeheftet ROCKPro64
    7
    0 Stimmen
    7 Beiträge
    732 Aufrufe
    FrankMF

    Hallo @mabs,

    ja. Der uboot wird in den SPI Speicher geladen. Der sucht dann beim Starten nach einem bootfähigem Device. So wie auf einem ganz normalen PC. Eine richtig coole Sache, wo ich mich freue, das das langsam mal funktioniert.

    Die Performance wird ja dann sicherlich von dem Device bestimmt. Dazu gibt es ja genug Messungen. Ich würde eine NVMe SSD immer einer SATA Platte vorziehen. Es kommt aber auf den Anwendungsfall an.

    Für ein NAS dann eher zwei oder mehr SATA Platten, und von USB3 HDD booten 🙂 So wie ich das schon lange betreibe.

    Aber, da hat auch jeder andere Vorstellungen und Vorlieben für.

  • ROCKPro64 - LAN Schnittstelle

    Verschoben ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    380 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - Armbian - Go & Restic installieren!

    Verschoben Armbian
    2
    0 Stimmen
    2 Beiträge
    606 Aufrufe
    FrankMF

    Der frühe Vogel.... 🙂

    IMG_20181226_072626_ergebnis.jpg

    Das oben geschriebene eben nochmal durchgeführt, funktioniert einwandfrei. Jetzt kann ich die USB3-Platte umbauen und den Job verlagern. Dann habe ich einen ROCKPro64 wieder frei zum Testen 😉

  • Neue Artikel im Pine64 Shop (August 2018)

    Hardware
    2
    0 Stimmen
    2 Beiträge
    736 Aufrufe
    FrankMF

    Neue Artikel im Pine64 Shop

    ABS Gehäuse https://www.pine64.org/?product=rockpro64-abs-enclosure Gehäuse für einen ROCKPro64 und einen LCD-Bildschirm https://www.pine64.org/?product=rockpro64-playbox-enclosure
  • stretch-openmediavault-rockpro64

    Verschoben Linux
    1
    0 Stimmen
    1 Beiträge
    805 Aufrufe
    Niemand hat geantwortet
  • 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