CVSROOT: /cvs Module name: src Changes by: jake...@cvs.openbsd.org 2009/09/08 17:30:19
Modified files: sys/dev/pci : azalia.c Log message: cleanup/fix RIRB processing: * move the code for azalia_comresp() to be nearer the functions it uses (azalia_set_command() and azalia_get_response()) for easier comprehension. * don't turn off RIRB interrupts in azalia_set_command(), then reenable them in azalia_get_response(). it's ugly, problematic, and the code is already at SPL_AUDIO. * in azalia_get_response(), wait for a solicited response (the response from azalia_set_command()) instead of "waiting" for just any response as there may already be an unsolicited response in the RIRB. * no need to run the unsolicited response handler in azalia_get_response(). since RIRB interrupts aren't being disables, the unsolicited response handler will be run by the RIRB interrupt handler. * in azalia_rirb_intr(), when a solicited response is found in the RIRB, instead of stopping and losing the response, print a debug message and keep going. there should never be a solicited response in the RIRB at this point. * remove some now useless #if 0'd debug cruft. * minor KNF while here.