libata: fix ata_acpi_gtm_xfermask()
authorTejun Heo <htejun@gmail.com>
Tue, 18 Dec 2007 07:33:04 +0000 (16:33 +0900)
committerJeff Garzik <jeff@garzik.org>
Wed, 23 Jan 2008 10:24:12 +0000 (05:24 -0500)
commit5df91a25df08d85700fef5fd59bb1873273e5ef5
treee413ff0798da2792683db0805128f43798dcfc8d
parent7c77fa4d51b1480bcec2e898c94d6912fe063c16
libata: fix ata_acpi_gtm_xfermask()

ata_acpi_gtm_xfermask() as separated out from pacpi_discover_modes()
has various bugs.  Fix them.

* The wrong comparison operator is used when finding for matching
  cycle resulting totally bogus result.

* With the comparion operator fixed, boundary condtion handling is
  clumsy.

* Setting of any DMA mask bit set all bits in PIO mask.

* MWDMA and UDMA blocks are swapped.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/ata/libata-acpi.c