Hi @ftabrizi
Have you found any solution??
I have tried two types of DEXTs one using USBDriverKit for SCSI protocol and another using PCIDriverKIt for NVMe protocol.
In both case I'm able to get exclusive access to device but in this case volume is not mounting. If for getting exclusive access Open ahs to be used and to release device Close has to be used.
But even if we use Close to release device, machine reboot is required to completely release device into the control of OS Storage stack. Also next time DEXT loads automatically so again Open call will get exclusive access to device so after Close call DEXT deactivation has to be done to completely release device and then reboot.
So this solution does not feel a working solution alternative to KEXT.
Apple has not clarified whether DriverKit can be used for Storage device. Good thing is that custom KEXTs for storage devices still loads and works properly.
My question here to you is that in case of KEXT when you unload your KEXT then how device control goes to OS Storage stack without machine reboot?? Do you reboot your machine??
And if you have find KEXT alternative solution for SCSI and the NVMe protocol then please share the information you have.
It would help others to for migrating from KEXT to DEXT.a
Thanks