Posts

Post not yet marked as solved
2 Replies
1.6k Views
I have a custom serial Device, I have made a driver using USB Serial Driver Kit by sub classing IOUserUSBSerail. Driver Works fine. However I don't have any Control over Read and Write Operations since its taken care by the USBSerialDriver Kit. To overcome this problem I am trying to use Serial driver kit by subclassing the driver from IOUserSerial class. https://developer.apple.com/documentation/serialdriverkit/iouserserial As per the link above , we need to overload the function TxDataAvailable https://developer.apple.com/documentation/serialdriverkit/iouserserial/3433803-txdataavailable My overloaded function is getting called whenever data is available from the application. (I got hold of the application buffer by overloading the ConnectQueues method) For sending the data to USB I also need the size of the data. From the Connect Queue method I have the IOBufferMemoryDescriptor. The getLength method of IOMemoryDescriptor gives me the length of the full buffer which was allocated. It does not give me the actual data length. How can I get the data length in this case
Posted
by gun19.
Last updated
.
Post not yet marked as solved
6 Replies
1.3k Views
HiFor understanding driver extension, I have downloaded the sample code fromhttps://github.com/knightsc/USBApp.gitAfter getting the necessary entitlements from apple, and some code changes to support my device I am able to Successfully compile it ( I have modified the plist to support my device) Also, I am able to activate the extension.I have confirmed the same with the following command :systemextensionctl listit successfully list my driver extension.But nothing proceeds after that, when I see the ioregit only shows !registered, !matched, activeHow to proceed after this. it seems my driver init, Start IMPL methods are not getting called. I have put OS_LOG to log tracing , but I am not able to find any logs. I am not sure how to proceed further,Thanks in advance
Posted
by gun19.
Last updated
.
Post not yet marked as solved
4 Replies
1.5k Views
Hi allFor checking how the driver kit Works. I have downloaded the Sample Code fromhttps://github.com/knightsc/USBApp.git . After getting the Relevant entitlements from Apple.The Code Gets compiled Successfully. But when I try to run the APP, it crashes.when I looked into the crash Report the error wasCrashed Thread: 0Exception Type: EXC_CRASH (Code Signature Invalid)Exception Codes: 0x0000000000000000, 0x0000000000000000Exception Note: EXC_CORPSE_NOTIFYTermination Reason: Namespace CODESIGNING, Code 0x1I am not sure why the app is crashing with Code Signature Invalid Error code. if there is some problem with the Signature or profiles, then it wouldn't have compiled.Thanks in advance for your support.RegardsGunjan
Posted
by gun19.
Last updated
.
Post not yet marked as solved
0 Replies
521 Views
Hi I am trying to Write a network driver for mac so Catalina Since all these kind of drivers has to be moved to User Space (as per wwdc 2019). So I am Planning to use driver kit, network driver Kit and USB Driver Kit. Before I start this activity, I have some queries like What benefits are we getting by moving from kernel Space to User Space? What will happen to performance? Won't it go down?Thanks in advance.
Posted
by gun19.
Last updated
.
Post not yet marked as solved
0 Replies
536 Views
HiI am trying to Port one of our kext to driver kit. That kext was the Power Policy owner of the device.I am not able to find any relevant API, which will be used to initialize the Power Management.How to register as a PowerPolicy Owner Of the device.Regards
Posted
by gun19.
Last updated
.