Bug 4734
Summary: | PCMCIA Card - Creative Sounblaster Audigy2 ZS Notebook crashes Kernel | ||
---|---|---|---|
Product: | Drivers | Reporter: | Thomas H (thomas) |
Component: | Sound(ALSA) | Assignee: | James Courtier-Dutton (James) |
Status: | REJECTED DUPLICATE | ||
Severity: | normal | CC: | akpm, James, linux, maguswizardo |
Priority: | P2 | ||
Hardware: | i386 | ||
OS: | Linux | ||
Kernel Version: | 2.6.10 | Subsystem: | |
Regression: | --- | Bisected commit-id: |
Description
Thomas H
2005-06-11 04:47:41 UTC
Please test 2.6.12-rc6 and 2.6.12-rc6-mm1. I have been working on a driver for this card in Linux. There is a bug somewhere in the pcmcia-core code that fails to setup the resources correctly. I have tested many different kernel versions, including: 2.6.13-rc3-mm1 This PCMCIA cardbus sound card uses exactly the same PCI IDs as the Audigy 2 Value. There is currently support in ALSA for the Audigy 2 Value, so if one inserts the cardbus card, the snd-emu10k1 module is loaded. The problem is due to the first attempt to do the following operation: value = inl(emu->port); For example, emu->port = base IO address of the PCI cardbus card. This returns normally on the Audigy 2 Value, but this hangs the entire PC on the cardbus card. outl(value, emu->port) seems does not halt the PC, but without inl() working, one cannot really use the cardbus card at all. My knowledge of PCI configuration is minimal, so work in diagnosing the problem here is slow as I don't have any of the PCI cardbus/bridge specs. If there is anyone out there who can help me, I would very much appreciate it. What is the value of emu->port, and how does that compare with /proc/ioports and the dmesg output? emu->port is set correctly. It equals the output given in /proc/ioports when the driver loads and assigns resources. In any case, irrespective of whether the emu->port is correct or not, it should just return some value, instead of hang the entire machine. For example, if one does read and io port that has no hardware off the back of it, one will get 0xffff. |