ide-pmac lost interrupt w/2.6.8.1 (DMA problem?)

bruce woller yellowdog-general@lists.terrasoftsolutions.com
Mon, 20 Sep 2004 18:12:43 -0600


Albrecht:

If you are a brave soul with nothing to lose you could recompile your =20=

kernel with "high speed"  forcing the DMA mode to a slower mode i.e =20
change line 1217 from  "return XFER_UDMA_4;" to "return XFER_UDMA_3;" =20=

and recompile your kernel.

Then watch for smoke when you boot <;o

Regards,
Bruce

file:linux/drivers/ide/ide-pmac.c

1212 static __inline__ unsigned char
1213 udma_bits_to_command(unsigned char bits, int high_speed)
1214 {
1215         if (high_speed) {
1216                 if(bits & 0x10)
1217                         return XFER_UDMA_4;
1218                 if(bits & 0x08)
1219                         return XFER_UDMA_3;
1220         }
1221         if(bits & 0x04)
1222                 return XFER_UDMA_2;
1223         if(bits & 0x02)
1224                 return XFER_UDMA_1;
1225         if(bits & 0x01)
1226                 return XFER_UDMA_0;
1227         return 0;
1228 }

On Sep 20, 2004, at 1:58 PM, Albrecht Dre=DF wrote:

> Hi,
>
> when trying to get Linux 2.6.8.1 running on my PMac G4/800 "Silver" I =20=

> ran into something which might be a DMA problem.
>
> First, the box works flawlessly with 2.4.25-ben1. When booting =20
> 2.6.8.1, the boot screen hangs when probing the first hard disk, with =20=

> (inter alia) the following messages for hda (written down by hand, as =20=

> the boot process doesn't succeed):
>
> ide0 Apple Keylargo ATA 4
> hda IBM-IC35L040AVVA07-0   # the drive the box came with
> set UDMA timing for mode 4, reg 0x0c50038c
> Enabling Ultra DMA 4
>
> and then several
>
> hda: lost interrupt
> hda:<3> ide-pmac lost interrupt, dma status 8080
>
> I guess the drive has problems with udma 4, but I have no idea how I =20=

> can set it to a safer value... I tried to disable ide dma in the =20
> kernel completely (yes, I know that it would make the box really =20
> slow), but then Linux doesn't compile any more. Of course, the smarter =
=20
> way would be if Linux would detect itself that that's too fast and =20
> fall back appropriately.
>
> Any help is really welcome!
>
> Cheers, Albrecht.
>
> -- =20
> =
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=20=

> ~~
> Albrecht Dre=DF  -  Johanna-Kirchner-Stra=DFe 13  -  D-53123 Bonn =
(Germany)
>       Phone (+49) 228 6199571  -  mailto:albrecht.dress@arcor.de
> =
_______________________________________________________________________=20=

> __
>