Re: IDE-problems
Benjamin Herrenschmidt <bh40@calva.net> writes:
> >I have recompiled my 2.2.17pre11 kernel with int timeout=5000; nothing
> >has changed (PB 3400):
> Sounds like a bogus hard disk, it's returning an error status from the
> SET_FEATURE command while advertising some DMA support. I'll double check
> my code, but at first, I think the drive is wrong. I suggest you edit
> drivers/block/ide_pmac.c, and try several things:
>
> - First, try increasing the wait_for_ready to a larger value
line 597:
int timeout = 5000 (was 2000)
> - Try increasing the IDE_WAKEUP_DELAY_MS definition to a much larger
> value (10000 ?)
line 102:
#define IDE_WAKEUP_DELAY_MS 10000 (was 1500)
> - In function dma_bits_to_command(), comment out the MDMA 2 case (should
> look like this:
>
> static __inline__ unsigned char
> dma_bits_to_command(unsigned char bits)
> {
> /*
> if(bits & 0x04)
> return IDE_DMA2_ENABLE;
> */
> if(bits & 0x02)
> return IDE_DMA1_ENABLE;
> return IDE_DMA0_ENABLE;
> }
OK
> And finally, you can try compiling without the "automatic" enable of DMA
> in the config option but this will give you a much slower hard disk. I
> would prefer if you could first test the previous stuffs so it helps me
> figuring out what's wrong.
I'll try this if nothing else works. Let me check the new kernel first.
Andre
Reply to: