2001-08-17 Bradley D. LaRonde <brad@ltc.com> * convert for-loop delay to udelay. udelay is better since it is MHz independent, but the real reason for this change is that gcc 3.0 didn't compile the for-loop as one might expect. * eliminate unused variable warning diff -u -B -b -r1.1 nec_vrc5477.c --- drivers/sound/nec_vrc5477.c 2001/06/10 16:57:41 1.1 +++ drivers/sound/nec_vrc5477.c 2001/08/18 03:07:34 @@ -260,7 +260,6 @@ (struct vrc5477_ac97_state *)codec->private_data; unsigned long flags; u32 result; - int i; spin_lock_irqsave(&s->lock, flags); @@ -272,7 +271,7 @@ outl((addr << 16) | VRC5477_CODEC_WR_RWC, s->io + VRC5477_CODEC_WR); /* get the return result */ - for (i=10000; i; i--); /* workaround hardware bug */ + udelay(100); /* workaround hardware bug */ while ( (result = inl(s->io + VRC5477_CODEC_RD)) & (VRC5477_CODEC_RD_RRDYA | VRC5477_CODEC_RD_RRDYD) ) { /* we get either addr or data, or both */ @@ -1093,7 +1092,9 @@ int totalCopyCount = 0; int totalCopyFragCount = 0; unsigned long flags; +#if defined(VRC5477_AC97_VERBOSE_DEBUG) int i; +#endif /* adjust count to signel channel byte count */ count >>= s->dacChannels - 1; @@ -1788,7 +1789,6 @@ u16 myrdcodec(u8 addr) { u32 result; - u32 i; /* wait until we can access codec registers */ // while (inl(VRC5477_CODEC_WR) & 0x80000000); @@ -1798,7 +1798,7 @@ myoutl((addr << 16) | VRC5477_CODEC_WR_RWC, VRC5477_CODEC_WR); /* get the return result */ - for (i=10000; i; i--); + udelay(100); /* workaround hardware bug */ // dump_memory(0xbb000000, 48); while ( ((result=myinl(VRC5477_CODEC_RD)) & 0xc0000000) != 0xc0000000); MIPS_ASSERT(addr == ((result >> 16) & 0x7f) );