Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Beau Slim

macrumors member
Original poster
Sep 12, 2017
31
13
My $80 wavlink TB3 NVMe SSD enclosure arrived at the same time as a JMB585 5-port SATA m.2 controller that I ordered for another project, and I thought "that would fit in there..."

And it works perfectly. Big Sur recognized it and let me create a soft raid stripe with 5 crusty old Caviar Black SATA disks I had in storage. 500MB/s to the M1 Air. Neat! It never occurred to me that these disk enclosures are just tiny PCIe breakouts.

What else works? 10Gbit NICs? SAS HBAs?
 
GPUs, etc. Anything. You will need an adapter and power supply for things that are not M.2.
https://egpu.io/forums/which-gear-should-i-buy/thunderbolt-3-external-drive-slot-m-2-ngff-adapter/
Thunderbolt allows up to 23 Gbps of PCIe data.

Are you referring to this?
https://canadianbestseller.com/pd/i...port-ssd-and-hdd-jmb585-chipset-857426008345/
That's a key B+M solution - does it support one or two lanes of PCIe?
The Datasheet for the JMB585 says it has two lanes, but I want to make sure the B+M key M.2 connection is allowing that.
https://www.jmicron.com/file/download/996/JMB585.pdf

You can try the multiple disk option in ATTO Disk Benchmark.app to see how much bandwidth you can get from multiple disks without having to create a RAID 0. PCIe 3.0 x2 should get you around 1600 MB/s? You would need to connect at least 3 SATA disks to get that, but 4 would be best if you're only getting 500 MB/s for a single SATA disk.

If you connect a GPU, then the Cl!ng.app can measure that host to device and device to host speeds (similar to write/read speeds of an NVMe).
 
  • Like
Reactions: Amethyst1
Thanks for the informative reply.

Are you referring to this?
https://canadianbestseller.com/pd/i...port-ssd-and-hdd-jmb585-chipset-857426008345/
That's a key B+M solution - does it support one or two lanes of PCIe?

That's the one. B+M should support 2 lanes, and System Information says:

pci197b,585:

Type: AHCI Controller
Driver Installed: Yes
Tunnel Compatible: Yes
Pause Compatible: Yes
MSI: Yes
Bus: PCI
Slot: Thunderbolt@3,0,0
Vendor ID: 0x197b
Device ID: 0x0585
Subsystem Vendor ID: 0x197b
Subsystem ID: 0x0000
Revision ID: 0x0000
Link Width: x2
Link Speed: 8.0 GT/s

I assume the "Link Width" means 2 lanes?

Yes, I already have an m.2 4 lane PCIe breakout that takes a power input, which was how I tried a couple very old PCIe cards I had in storage from my 1,1 Mac Pro, including an Intel 1Gbit ethernet and a blackmagic intensity pro. The M1 Air sees the devices on the PCIe bus, but I couldn't find drivers for ARM.

Which points out the real problem, in that vendors won't be motivated to release drivers for macOS on ARM until Apple releases an ARM Mac Pro.

So, for now, I assume the only things that will work will have drivers included in the OS from Apple itself. I was kind of surprised that the JMB585 worked. I tried digging around in the OS, doing "strings" on drivers and grepping for chip names, but coudn't really find much.
 
I assume the "Link Width" means 2 lanes?
Yup. That looks right. I would be interested in seeing an ATTO Disk Benchmark test of multiple SSDs connected to that to see if the JMB585 takes full advantage.

Which points out the real problem, in that vendors won't be motivated to release drivers for macOS on ARM until Apple releases an ARM Mac Pro.
Well, the vendors should know that the M1 Macs can use Thunderbolt and so any PCIe card can be connected using a Thunderbolt PCIe expansion box like the OWC Mercury Helios S3 or any of the Sonnet boxes or similar.
https://www.sonnettech.com/product/thunderbolt/pcie-card-expansion-systems.html

So, for now, I assume the only things that will work will have drivers included in the OS from Apple itself. I was kind of surprised that the JMB585 worked. I tried digging around in the OS, doing "strings" on drivers and grepping for chip names, but coudn't really find much.
You need to look for PCIe class codes. Basically all SATA controllers will use the same AHCI controller driver. Look in ioreg to see what driver was attached. That driver will come from a kext. The kext will have an info.plist file containing the matching info. The matching info will probably be based on PCIe class code. This matching info also exists in the ioreg.

I don't think there's a standard driver for Ethernet. Matching is probably done by PCI vendor and product ids. There are drivers for hackintosh that include source code so maybe those can be recompiled for Apple Silicon.
 
  • Like
Reactions: Amethyst1
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.