aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorClemens Ladisch <clemens@ladisch.de>2008-09-24 09:25:28 -0400
committerClemens Ladisch <clemens@ladisch.de>2008-09-24 09:25:28 -0400
commitcdad5b8db91ac46a8e226306d062fe4c896b2bed (patch)
tree3057725efc32290ba69d98db1cf4bd80ce3c9a43
parentba8ed1210b4e5449c80beef321c4459e840fece1 (diff)
ALSA: oxygen: wait for ACK when resetting UART
After sending a reset command to the UART, wait some time for the ACK to be generated (and to be read and dropped by the interrupt handler) before sending the next command. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
-rw-r--r--sound/pci/oxygen/oxygen_io.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/pci/oxygen/oxygen_io.c b/sound/pci/oxygen/oxygen_io.c
index deba7389aec3..3126c4b403dd 100644
--- a/sound/pci/oxygen/oxygen_io.c
+++ b/sound/pci/oxygen/oxygen_io.c
@@ -244,6 +244,7 @@ static void _write_uart(struct oxygen *chip, unsigned int port, u8 data)
244void oxygen_reset_uart(struct oxygen *chip) 244void oxygen_reset_uart(struct oxygen *chip)
245{ 245{
246 _write_uart(chip, 1, MPU401_RESET); 246 _write_uart(chip, 1, MPU401_RESET);
247 msleep(1); /* wait for ACK */
247 _write_uart(chip, 1, MPU401_ENTER_UART); 248 _write_uart(chip, 1, MPU401_ENTER_UART);
248} 249}
249EXPORT_SYMBOL(oxygen_reset_uart); 250EXPORT_SYMBOL(oxygen_reset_uart);