|
@@ -2149,10 +2149,6 @@ static void do_ali_reset(intel8x0_t *chip)
|
|
|
iputdword(chip, ICHREG(ALI_INTERRUPTSR), 0x00000000);
|
|
|
}
|
|
|
|
|
|
-#define do_delay(chip) do {\
|
|
|
- schedule_timeout_uninterruptible(1);\
|
|
|
-} while (0)
|
|
|
-
|
|
|
static int snd_intel8x0_ich_chip_init(intel8x0_t *chip, int probing)
|
|
|
{
|
|
|
unsigned long end_time;
|
|
@@ -2176,7 +2172,7 @@ static int snd_intel8x0_ich_chip_init(intel8x0_t *chip, int probing)
|
|
|
do {
|
|
|
if ((igetdword(chip, ICHREG(GLOB_CNT)) & ICH_AC97WARM) == 0)
|
|
|
goto __ok;
|
|
|
- do_delay(chip);
|
|
|
+ schedule_timeout_uninterruptible(1);
|
|
|
} while (time_after_eq(end_time, jiffies));
|
|
|
snd_printk(KERN_ERR "AC'97 warm reset still in progress? [0x%x]\n", igetdword(chip, ICHREG(GLOB_CNT)));
|
|
|
return -EIO;
|
|
@@ -2192,7 +2188,7 @@ static int snd_intel8x0_ich_chip_init(intel8x0_t *chip, int probing)
|
|
|
status = igetdword(chip, ICHREG(GLOB_STA)) & (ICH_PCR | ICH_SCR | ICH_TCR);
|
|
|
if (status)
|
|
|
break;
|
|
|
- do_delay(chip);
|
|
|
+ schedule_timeout_uninterruptible(1);
|
|
|
} while (time_after_eq(end_time, jiffies));
|
|
|
if (! status) {
|
|
|
/* no codec is found */
|
|
@@ -2210,7 +2206,7 @@ static int snd_intel8x0_ich_chip_init(intel8x0_t *chip, int probing)
|
|
|
/* wait for other codecs ready status. */
|
|
|
end_time = jiffies + HZ / 4;
|
|
|
while (status != nstatus && time_after_eq(end_time, jiffies)) {
|
|
|
- do_delay(chip);
|
|
|
+ schedule_timeout_uninterruptible(1);
|
|
|
status |= igetdword(chip, ICHREG(GLOB_STA)) & nstatus;
|
|
|
}
|
|
|
|
|
@@ -2227,7 +2223,7 @@ static int snd_intel8x0_ich_chip_init(intel8x0_t *chip, int probing)
|
|
|
nstatus = igetdword(chip, ICHREG(GLOB_STA)) & (ICH_PCR | ICH_SCR | ICH_TCR);
|
|
|
if (status == nstatus)
|
|
|
break;
|
|
|
- do_delay(chip);
|
|
|
+ schedule_timeout_uninterruptible(1);
|
|
|
} while (time_after_eq(end_time, jiffies));
|
|
|
}
|
|
|
|
|
@@ -2261,7 +2257,7 @@ static int snd_intel8x0_ali_chip_init(intel8x0_t *chip, int probing)
|
|
|
for (i = 0; i < HZ / 2; i++) {
|
|
|
if (! (igetdword(chip, ICHREG(ALI_INTERRUPTSR)) & ALI_INT_GPIO))
|
|
|
goto __ok;
|
|
|
- do_delay(chip);
|
|
|
+ schedule_timeout_uninterruptible(1);
|
|
|
}
|
|
|
snd_printk(KERN_ERR "AC'97 reset failed.\n");
|
|
|
if (probing)
|
|
@@ -2273,7 +2269,7 @@ static int snd_intel8x0_ali_chip_init(intel8x0_t *chip, int probing)
|
|
|
if (reg & 0x80) /* primary codec */
|
|
|
break;
|
|
|
iputdword(chip, ICHREG(ALI_RTSR), reg | 0x80);
|
|
|
- do_delay(chip);
|
|
|
+ schedule_timeout_uninterruptible(1);
|
|
|
}
|
|
|
|
|
|
do_ali_reset(chip);
|