Lines 834-839
static void emu1010_interrupt(struct snd_emu10k1 *emu)
Link Here
|
834 |
u32 sts; |
834 |
u32 sts; |
835 |
|
835 |
|
836 |
snd_emu1010_fpga_read(emu, EMU_HANA_IRQ_STATUS, &sts); |
836 |
snd_emu1010_fpga_read(emu, EMU_HANA_IRQ_STATUS, &sts); |
|
|
837 |
dev_info(emu->card->dev, "emu1010: GPIO interrupt, status = 0x%x\n", sts); |
837 |
if (sts & EMU_HANA_IRQ_DOCK_LOST) { |
838 |
if (sts & EMU_HANA_IRQ_DOCK_LOST) { |
838 |
/* Audio Dock removed */ |
839 |
/* Audio Dock removed */ |
839 |
dev_info(emu->card->dev, "emu1010: Audio Dock detached\n"); |
840 |
dev_info(emu->card->dev, "emu1010: Audio Dock detached\n"); |
Lines 943-948
static int snd_emu10k1_emu1010_init(struct snd_emu10k1 *emu)
Link Here
|
943 |
// Note: The Audigy INTE is set later |
944 |
// Note: The Audigy INTE is set later |
944 |
snd_emu1010_fpga_write(emu, EMU_HANA_IRQ_ENABLE, |
945 |
snd_emu1010_fpga_write(emu, EMU_HANA_IRQ_ENABLE, |
945 |
EMU_HANA_IRQ_DOCK | EMU_HANA_IRQ_DOCK_LOST | EMU_HANA_IRQ_WCLK_CHANGED); |
946 |
EMU_HANA_IRQ_DOCK | EMU_HANA_IRQ_DOCK_LOST | EMU_HANA_IRQ_WCLK_CHANGED); |
|
|
947 |
// try this if dock hot-plugging doesn't produce gpio interrupt messages. |
948 |
// if this changes anything, try to identify which bit does what. |
949 |
// you can also try 0x3f, but at least on the rev2 cards that's likely to |
950 |
// flood your syslog up to the point of locking up the machine. |
951 |
//snd_emu1010_fpga_write(emu, EMU_HANA_IRQ_ENABLE, 0x3d); |
946 |
snd_emu1010_fpga_read(emu, EMU_HANA_IRQ_STATUS, ®); // Clear pending IRQs |
952 |
snd_emu1010_fpga_read(emu, EMU_HANA_IRQ_STATUS, ®); // Clear pending IRQs |
947 |
|
953 |
|
948 |
emu->emu1010.clock_source = 1; /* 48000 */ |
954 |
emu->emu1010.clock_source = 1; /* 48000 */ |
949 |
- |
|
|