On Behalf Of Ash Willis
Hi Chris,
I'd like to take action on bug #305, since it's my own
itch. I've done
very low-level programming, but not on Linux device
drivers. I'm very
familiar with command line development tools.
If you're not familiar with drivers or audio drivers in particular then reading Writing an ALSA Driver by Takashi Iwai might be a good place to start.
You're referring to the suspend/resume bug in the cs46xx driver, right? Maybe try dumping all the registers while it's working and dumping them while it's broken and comparing the two sets of data?
I guess the suspend function is doing something that it shouldn't be, or the resume function isn't doing something that it should be...good luck on finding out what that is.
Ash
Thanks for the tips, Ash. I've found the Iwai document. Now there's some light reading. I take it that it's still relevant, even though it hasn't been updated since 2005.
Yes, the cs46xx driver. That chip is in a lot of machines (at least ten ThinkPad models), and with this bug nobody running Alsa likes Linux very much.
Is there some (handy) way to dump the registers from DOS or Windows as a comparison?
For development: Since the drivers go into the kernel, I should be able to find a page on getting a development environment set up... right? I'm guessing most people do development on a machine with the device in question. That could be interesting because my 600X crapped out, but there are two more in the house I can borrow now and again.
Chris (using the address I subscribed with this time)