snd_gf1_uart_cmd
snd_gf1_uart_cmd(gus, gus->gf1.uart_cmd &= ~0x20);
snd_gf1_uart_cmd(gus, gus->gf1.uart_cmd &= ~0x80);
snd_gf1_uart_cmd(gus, 0x03); /* huh.. this cleanup took me some time... */
snd_gf1_uart_cmd(gus, gus->gf1.uart_cmd | 0x80); /* enable Rx interrupts */
snd_gf1_uart_cmd(gus, gus->gf1.uart_cmd & ~0x80); /* disable Rx interrupts */
snd_gf1_uart_cmd(gus, gus->gf1.uart_cmd | 0x20); /* enable Tx interrupt */
snd_gf1_uart_cmd(gus, gus->gf1.uart_cmd & ~0x20);
snd_gf1_uart_cmd(gus, gus->gf1.uart_cmd & ~0x20); /* disable Tx interrupt */
snd_gf1_uart_cmd(gus, 0x03); /* reset */
snd_gf1_uart_cmd(gus, 0x00); /* normal operations */