summaryrefslogtreecommitdiffstats
path: root/sound/hda/hdac_bus.c
Commit message (Collapse)AuthorAgeFilesLines
* ALSA: hda: Fix potential race at unregistration and unsol eventsTakashi Iwai2017-06-201-0/+1
| | | | | | | | | | | | | | | | | | | | When the codec device is unregistered / freed, it may release the resource while being used in an unsolicited event like the jack detection work. This leads to use-after-free. The fix here is to unregister the device at first, i.e. removing the codec from the list, then flushing the pending works to assure that all unsol events are gone. After this point, we're free from accessing the codec via unsol events, thus can release the resources gracefully. The issue was spotted originally by Intel CI, but it couldn't be reproduced reliably by its nature. So let's hope this fix really addresses the whole issues. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=196045 Reported-by: Martin Peres <martin.peres@free.fr> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Add / fix kernel doc commentsTakashi Iwai2015-10-281-0/+14
| | | | | | | | Give some readable comment in kernel doc style for each exported function, as I promised in the previous meetings. While we're at it, fix the wrong comments, too. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Add the controller helper codes to hda-core moduleTakashi Iwai2015-04-161-2/+18
| | | | | | | | | | | | | | | This patch adds the controller helper codes to hda-core library. The I/O access ops are added to the bus ops. The CORB/RIRB, the basic attributes like irq# and iomap address, some locks and the list of streams are added to the bus object, together with the stream object and its helpers. Currently the codes are just copied from the legacy driver, so you can find duplicated codes in both directories. Only constants are removed from the original hda_controller.h. More integration work will follow in the later patches. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Re-add tracepoints to HD-audio core driverTakashi Iwai2015-03-231-1/+6
| | | | | | | | | | Now let's take the basic tracepoints back to the HD-audio driver. The three bus tracepoints, hda_send_cmd, hda_get_response and hda_unsol_event are revived but in a slightly different form. Since we don't assign the card number there, print the bus device name instead. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Move some codes up to hdac_bus structTakashi Iwai2015-03-231-0/+181
A few basic codes for communicating over HD-audio bus are moved to struct hdac_bus now. It has only command and get_response ops in addition to the unsolicited event handling. Note that the codec-side tracing support is disabled temporarily during this transition due to the code shuffling. It will be re-enabled later once when all pieces are settled down. Signed-off-by: Takashi Iwai <tiwai@suse.de>
OpenPOWER on IntegriCloud