PCIe -> SATA and NVMe work as of 0.6.59
#1
Information 
Just relaying that PCIe -> SATA and PCIe NVMe work as of 0.6.59 on mainline and 4.4.
I'll let frankm share performance results as I am away and have no means of testing.

As always, massive kudos to ayufan for all the work.
You can find me on IRC, Discord and Twitter


#2
With an SanDisk SSD Plus 240GB


Code:
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: Wed Jul  4 15:05:37 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    40073    65587    76408    76546    23702    13602                                                          
         102400      16   113539   157707   181745   182323    47126    51496                                                          
         102400     512   328802   326047   277146   278351   270958   336556                                                          
         102400    1024   331734   358670   313116   314032   313441   334537                                                          
         102400   16384   189982   225176   234192   346836   381690   370403                                                          

iozone test complete.

Thanks Ayufan!!
Sorry for any mistakes. English is not my native language

1. Quartz64 Model B, 4GB RAM

2. Quartz64 Model A, 4GB RAM

3. RockPro64 v2.1

https://linux-nerds.org/
#3
So. I tested my nvme drive yesterday and got around 1.4GB/s Smile

https://gist.github.com/ayufan/30c46381c...4a752946db
https://gist.github.com/ayufan/788933406...cf733c719a
Homepage: https://ayufan.eu

Releases:
Rock/Pro 64/Pinebook Pro: LinuxChromium OS
So/Pine A64/Pinebook: LinuxAndroid 6.0Android 7.1

Buy me a Beer
#4
My NVMe drive still isn't being picked up, but neither was the PCI sata card on the first boot with mainline... so I'm going to try again and reboot a few times. Edit: It still doesn't seem to like me - either NVMe is still not completely stable, drive's faulty or not compatible, or something else.... It's a new el-cheapo M.2 2280, and does seem to do something on startup, but I get the following in dmesg and it don't work.

Code:
[    7.624204] rockchip-pcie f8000000.pcie: PCIe link training gen1 timeout!
[    7.625029] rockchip-pcie: probe of f8000000.pcie failed with error -110

In the meantime, here are some results for a random 1.5TB Seagate 'Green' drive on the PCI SATA card on mainline 4.18 ... as I had nothing but lockups, endless "ata2: hard resetting link" loops and "cdn-dp fec00000.dp: Direct firmware load for rockchip/dptx.bin failed with error -2" errors with the 4.4 kernel.

Code:
                                                             random    random     bkwd    record    stride                                    
             kB  reclen    write  rewrite    read    reread    read     write     read   rewrite      read   fwrite frewrite    fread  freread
         102400       4    27191    31454    35270    36355      662      923                                                          
         102400      16    60049    69537    62676    75448     2603     3504                                                          
         102400     512   107696   109266   114872   115728    43650    66147                                                          
         102400    1024   109415   103687   119136   119073    65168    83687                                                          
         102400   16384   105158   112524   121737   125382   111152   102903                                                          

Full iozone output and lspci output here
#5
Would guess that el-cheapo is actually sata based (as it has the additional key to the M key for NVMe).

Certainly I am no expert: just lurking here in anticipation of next shipment..

Been watching IRC as well, thanks Ayufan!
  • ROCKPro64 v2.1 2GB, 16Gb eMMC for rootfs, SX8200Pro 512GB NVMe for /home, HDMI video & sound, Bluetooth keyboard & mouse. Arch (6.2 kernel, Openbox desktop) for general purpose daily PC.
  • PinePhone Pro Explorer Edition, daily driver, rk2aw & U-boot on SPI, Arch/SXMO & Arch/phosh on eMMC
  • PinePhone BraveHeart now v1.2b 3/32Gb, Tow-boot with Arch/SXMO on eMMC
#6
(07-08-2018, 07:38 AM)dukla2000 Wrote: Would guess that el-cheapo is actually sata based (as it has the additional key to the M key for NVMe).

Certainly I am no expert: just lurking here in anticipation of next shipment..

Been watching IRC as well, thanks Ayufan!

Yeah, something certainly isn't right... it fits fine, and says all the right things in the description, but obviously doesn't work. 

So now I'm looking at some not so cheap Intel or Samsung M.2 drives... only 4 to 6 times the price! Confused
#7
I bit the bullet and got a Samsung 960 EVO M.2 drive, which works OOTB with 0.7.6 (as it's the current pre-release build) with the stock 4.4 kernel: 

Full results are here (https://gist.github.com/pfeerick/c74d307...64dcb6b21e).

Code:
                                                     random    random
     kB  reclen    write  rewrite    read    reread    read     write
 102400       4    38433    79302   105834   102662    35497    77236
 102400      16   136010   245212   285828   287224   129220   229761
 102400     512   817004   742109   459952   457776   418119   543264
 102400    1024   513989   610949   475218   484782   457843   604607
 102400   16384  1048832   987167  1056497  1089687  1097510  1146656

I'll update the gist and this post later with the SATA results on the same kernel, and then the current mainline kernel for both on the same build for comparison.
#8
(07-17-2018, 11:31 PM)pfeerick Wrote: I bit the bullet and got a Samsung 960 EVO M.2 drive, which works OOTB with 0.7.6 (as it's the current pre-release build) with the stock 4.4 kernel: 
Nice :-)

Any idea why your top end is different to ayufan? He also has Samsung, I am not sure which precise model/size though. Or which release/kernel he was testing on to get 1.4G (you got 1.1G)

Last - do you have an eMMC? If so what size and how is it on iozone please?

My Rp64 now in the post - figure lashing out on nVME before it arrives would be a bit previous!

TIA
  • ROCKPro64 v2.1 2GB, 16Gb eMMC for rootfs, SX8200Pro 512GB NVMe for /home, HDMI video & sound, Bluetooth keyboard & mouse. Arch (6.2 kernel, Openbox desktop) for general purpose daily PC.
  • PinePhone Pro Explorer Edition, daily driver, rk2aw & U-boot on SPI, Arch/SXMO & Arch/phosh on eMMC
  • PinePhone BraveHeart now v1.2b 3/32Gb, Tow-boot with Arch/SXMO on eMMC
#9
(07-25-2018, 04:48 AM)dukla2000 Wrote:
(07-17-2018, 11:31 PM)pfeerick Wrote: I bit the bullet and got a Samsung 960 EVO M.2 drive, which works OOTB with 0.7.6 (as it's the current pre-release build) with the stock 4.4 kernel: 
Nice :-)

Any idea why your top end is different to ayufan? He also has Samsung, I am not sure which precise model/size though. Or which release/kernel he was testing on to get 1.4G (you got 1.1G)

Last - do you have an eMMC? If so what size and how is it on iozone please?

My Rp64 now in the post - figure lashing out on nVME before it arrives would be a bit previous!

TIA

Look -> https://gist.github.com/ayufan/30c46381c...4a752946db

He is using an Samsung PM961
Sorry for any mistakes. English is not my native language

1. Quartz64 Model B, 4GB RAM

2. Quartz64 Model A, 4GB RAM

3. RockPro64 v2.1

https://linux-nerds.org/
#10
(07-25-2018, 05:17 AM)Bullet64 Wrote: Look -> https://gist.github.com/ayufan/30c46381c...4a752946db

He is using an Samsung PM961
I did see on his lspci output it was reported as
"Subsystem: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961", but pfeerick 960 EVO output is identical.

My limited insight to Samsung 960 NVMe devices indicates SM961 and PM961 devices were released to OEMs early in 2016. And Samsung later released EVO and PRO versions for the general public. However, as per Anandtech there are differences in the NAND chips which is what I expect explains the difference in iozone numbers from ayufan and pfeerick?

If the table at Anandtech is accurate then actual PM961 devices should be the slowest of the lot.
  • ROCKPro64 v2.1 2GB, 16Gb eMMC for rootfs, SX8200Pro 512GB NVMe for /home, HDMI video & sound, Bluetooth keyboard & mouse. Arch (6.2 kernel, Openbox desktop) for general purpose daily PC.
  • PinePhone Pro Explorer Edition, daily driver, rk2aw & U-boot on SPI, Arch/SXMO & Arch/phosh on eMMC
  • PinePhone BraveHeart now v1.2b 3/32Gb, Tow-boot with Arch/SXMO on eMMC


Possibly Related Threads…
Thread Author Replies Views Last Post
  RK3399 PCIe enumeration jhadd 0 227 01-31-2024, 08:56 AM
Last Post: jhadd
Question nand-sata-install on RAID-1 array ARMandHammer 1 826 02-12-2023, 03:10 AM
Last Post: igorp
  Can RockPRO64 support PCIe Endpoint? andrewg132 3 2,088 10-14-2022, 06:24 AM
Last Post: rwk-
  Need help! Can't get device mode to work. scanboy 6 4,040 12-29-2021, 08:35 PM
Last Post: djonathan
  No PCIe controller detected... Limhes 1 1,534 11-23-2021, 06:23 AM
Last Post: Limhes
  Using the PCIe slot of ROCKPro64 as EndPoint mode nonoriri 1 1,761 11-20-2021, 10:53 AM
Last Post: fire219
  WiFi not working with PCIe SSD installed mikeD 0 1,364 05-25-2021, 07:48 AM
Last Post: mikeD
  Power supply underpowered for Rockpro64, deficient PCIe SATA card, or something else? daffy 8 6,646 05-20-2021, 10:04 PM
Last Post: t4_4t
  Booting from NVME ilovegentoo 11 11,268 05-10-2021, 02:06 PM
Last Post: rrowles2000
  Upgrade Debian kernel on a SD/SATA drive boot combo. linuxha 6 7,897 12-12-2019, 04:43 AM
Last Post: dukla2000

Forum Jump:


Users browsing this thread: 1 Guest(s)