Re: Question about SampleUSBAudioPlugin's functionality.
Re: Question about SampleUSBAudioPlugin's functionality.
- Subject: Re: Question about SampleUSBAudioPlugin's functionality.
- From: Brett George <email@hidden>
- Date: Mon, 31 Jan 2011 12:01:46 -0800
Yes, you can single step in gdb.
Load the symbols in GDB (see Create and Load the Symbol file: http://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KEXTConcept/KEXTConceptDebugger/debug_tutorial.html)
then you can set a breakpoint in gdb and continue.
As for why the plugin hasn't loaded, I'd have to see your USBplugin plist and an output of ioreg when your device is connected. If the PID/VID is not set correctly, you kext will load but not be matched by the USB driver.
Brett. Yes, I did follow the steps in the readme and the additional instructions to set the 2 machine debugger up.
The kext is appearing in the kextstat output and I have confirmed this from the host machine as well(showallkmods)
Since the plugin seems to load fine, I was assuming some low-pass filtering is done automatically while playing audio through the USB headset.
I don't see any messages on /var/log/kernel.log for any of the pluginProcess methods.
Also, I would like to single-step through the code and see what the sequence of activities in the Plugin are.
Is there a way to do that asides logging to /var/log/kernel.log?
Apparently gdb cannot be used to break into driver's methods...
~Aruna
Arunasree Swapna
Software Engineer
Logitech
360-817-1360 (office)
<graycol.gif>Brett George ---01/28/2011 11:26:49 PM---Presumably you have followed the readme steps: http://developer.apple.com/library/mac/#samplecode/Sa
Presumably you have followed the readme steps: http://developer.apple.com/library/mac/#samplecode/SampleUSBAudioPlugin/Listings/Readme_txt.html
Is your kext appearing in the kextstat output?
Brett.
On Jan 27, 2011, at 6:27 PM, email@hidden wrote:
Hello There,
I am trying to break into the Kernel Extension: SampleUSBAudioPlugin's driver methods.
I tried doing so with gdb, but apparently GDB doesn't give me a facility to do so.
So I tried putting a bunch of debug statement to pipe the messages to /var/log/kernel.log
The sample kext seems to be loading fine from the messages in the /var/log/kernel.log
The kext doe sthe following correctly:
- initializes successfully
- set the direction of frame buffers
- changes the format correctly.
But the rest of the methods don't do anything meaningful, I tried setting the device as default and piping audio into the USB Audio Device set to use this kext.
Who calls the methods in the driver for the driver to do something meaningful?
Any info on that to understand how the sample kernel extension works to do the low-pass filtering stuff?
Thanks in advance.
~Aruna
Arunasree Swapna
Software Engineer
Logitech
360-817-1360 (office)
|
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden