[patch - critical] Fixes for VIA IDE driver

From: Vojtech Pavlik (vojtech@suse.cz)
Date: Thu Sep 21 2000 - 03:55:17 EST


Hi!

I have found a couple bugs in the VIA IDE kernel I'm now maintaining
that manifest themselves on hardware I don't have:

1) On old SWDMA devices the timing is programmed incorrectly. This will
   result in DMA timeouts or data corruption.

2) On UDMA devices used with vt82c596a (old buggy VIA MobileSouth), the
   chip will get confused, which will result in DMA timeouts and UDMA
   being disabled. No data corruption here, just very poor performance.

3) One extra sprintf was forgotten in the via_display_info function.
   This is harmless, but a bug nevertheless.

Here goes a detailed description of the patch that fixes the above three
bugs:

Chunk1:
        Changes version number
Chunk2:
        Removes UDMA66 unknown southbridge entry. We can't try to program
        unknown southbridges to UDMA66, because that can result in crashes
        (as shown by vt82c596a). UDMA33 should be safe, because the only
        southbridge that doesn't support it is vt82c586.
Chunk3:
        Fix SWDMA modes. By a typo there were 0's everywhere. This is
        important, without this fix SWDMA devices will be programmed
        incorrectly.
Chunk4:
        Change version number in /proc
Chunk5:
        Remove the sprintf().
Chunk6:
        Don't program UDMA66 enable bit on UDMA33 controllers. They *should*
        ignore it, but 596a doesn't, resulting in timeouts on boot. This is
        critical. Also don't program UDMA at all on the old vt82c586.
Chunk7:
        The correct way to check for 596a.
Chunk8:
        Remove the old check for 596a. It doesn't work, because the 596a doesn't
        ignore the UDMA66 bits as it should. Don't set UDMA66 on 596a at
        all, it causes crashes. Critical.

I hope this will get into test9-pre6, because otherwise it's quite
unusable for vt82c596a users.

TIA.

-- 
Vojtech Pavlik
SuSE Labs


- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Sep 23 2000 - 21:00:24 EST