-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature Request] port usb-sd-mux to macOS #84
Comments
Hi,
it's great to hear that, thanks!
Also no Windows or BSD support. There are two reasons for that:
While our own focus is very Linux-centric we would be very happy about contributions that add support for other platforms.
I2C messages over SCSI over USB but yes, there is not much more to how the USB-SD-Mux works. On the USB-SD-Mux FAST we have a TCA6408 i²c GPIO expander that is connected to the USB2642 via i²c and that controls the muxing and the external GPIOs. To set the mux to HOST we set output pin 0 of the GPIO expander high. Lines 91 to 109 in 35624f2
The i²c transfer is encapsulated in a SCSI command … Lines 425 to 457 in 35624f2
… the SCSI command is sent to the Linux Kernel via the SCSI generic device using an ioctl … Lines 325 to 346 in 35624f2
and the kernel wraps it into USB transfers.
I would suggest trying to implement it at the SCSI first, instead of the USB level.
Sure! You can reach us here or in the #lxa channel on libera.chat. |
Hi,
I recently bought a USB-SD-Mux FAST ... and I love it 😄
... though, I noticed it doesn't have macOS support.
I have done some reading through your code and and the MicroChip USB2642 documentation.
Especially the "USB82642/2642 I2C Over USB User’s Guide - Using USB Mass Storage Class Bulk-Only Transport & SCSI Pass Through"
From what I can gather, correct me if I'm wrong, but it just a matter of being able to send an I2C message over USB - to the MicroChip USB2642.
Ergo, all we would need to create, is a USB driver with DriverKit SDK for the usb-sd-mux.
And I do understand, that maybe you guy's don't have a Mac or interested to do this work. But since this an OSS project. Could you maybe assist with some technical information, when needed?
Cheers,
Daniel
Also found these sources:
Building a Simple USB Driver
USBDriverKit
Creating a Driver Using the DriverKit SDK
Sending SCSI or ATA commands to storage devices
Accessing SCSI Architecture Model Devices
WWDC 2020 - Modernize PCI and SCSI drivers with DriverKit
SCSIControllerDriverKit
SCSIPeripheralsDriverKit
VendorSpecificType00
The text was updated successfully, but these errors were encountered: