diff options
author | Wei Ni <Wei.Ni@uli.com.tw> | 2005-10-24 05:04:51 -0400 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2005-11-04 07:19:41 -0500 |
commit | d78bec210f07b06f406b877b9179e0cc281ae8e6 (patch) | |
tree | 1c8e6a40cb6112895ac87667321b757afabe96a5 | |
parent | 7b4260f2cc8a0da74a7842106cc87ab54bf17ec5 (diff) |
[ALSA] intel8x0 - fix capture for M1563
Modules: Intel8x0 driver
1.In intel8x0_measure_ac97_clock routine, when stop DMA, there is not stop
DMA corectly, but start another PCM In2 DMA engine.
2.In do_ali_reset routine, there is only need to enable PCM IN and PCM OUT.
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
-rw-r--r-- | sound/pci/intel8x0.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/pci/intel8x0.c b/sound/pci/intel8x0.c index d71f5d1e716..383a3ac5ecb 100644 --- a/sound/pci/intel8x0.c +++ b/sound/pci/intel8x0.c | |||
@@ -2138,7 +2138,7 @@ static void do_ali_reset(intel8x0_t *chip) | |||
2138 | iputdword(chip, ICHREG(ALI_FIFOCR2), 0x83838383); | 2138 | iputdword(chip, ICHREG(ALI_FIFOCR2), 0x83838383); |
2139 | iputdword(chip, ICHREG(ALI_FIFOCR3), 0x83838383); | 2139 | iputdword(chip, ICHREG(ALI_FIFOCR3), 0x83838383); |
2140 | iputdword(chip, ICHREG(ALI_INTERFACECR), | 2140 | iputdword(chip, ICHREG(ALI_INTERFACECR), |
2141 | ICH_ALI_IF_MC|ICH_ALI_IF_PI|ICH_ALI_IF_PO); | 2141 | ICH_ALI_IF_PI|ICH_ALI_IF_PO); |
2142 | iputdword(chip, ICHREG(ALI_INTERRUPTCR), 0x00000000); | 2142 | iputdword(chip, ICHREG(ALI_INTERRUPTCR), 0x00000000); |
2143 | iputdword(chip, ICHREG(ALI_INTERRUPTSR), 0x00000000); | 2143 | iputdword(chip, ICHREG(ALI_INTERRUPTSR), 0x00000000); |
2144 | } | 2144 | } |
@@ -2484,7 +2484,7 @@ static void __devinit intel8x0_measure_ac97_clock(intel8x0_t *chip) | |||
2484 | do_gettimeofday(&stop_time); | 2484 | do_gettimeofday(&stop_time); |
2485 | /* stop */ | 2485 | /* stop */ |
2486 | if (chip->device_type == DEVICE_ALI) { | 2486 | if (chip->device_type == DEVICE_ALI) { |
2487 | iputdword(chip, ICHREG(ALI_DMACR), 1 << (ichdev->ali_slot + 8)); | 2487 | iputdword(chip, ICHREG(ALI_DMACR), 1 << (ichdev->ali_slot + 16)); |
2488 | iputbyte(chip, port + ICH_REG_OFF_CR, 0); | 2488 | iputbyte(chip, port + ICH_REG_OFF_CR, 0); |
2489 | while (igetbyte(chip, port + ICH_REG_OFF_CR)) | 2489 | while (igetbyte(chip, port + ICH_REG_OFF_CR)) |
2490 | ; | 2490 | ; |