]> git.baikalelectronics.ru Git - kernel.git/commit
[PATCH] ahci: ignore PORT_IRQ_IF_ERR on JMB controllers
authorTejun Heo <htejun@gmail.com>
Wed, 29 Nov 2006 02:33:14 +0000 (11:33 +0900)
committerTejun Heo <htejun@gmail.com>
Wed, 29 Nov 2006 05:57:44 +0000 (14:57 +0900)
commit2623ec932675d3426de9f6d80c0ea4f80207018f
tree2aace00509badc17ad432fa5e2b83f56b6d7453e
parent94423d997f95bfef96d2e1a09946165ce92f2e50
[PATCH] ahci: ignore PORT_IRQ_IF_ERR on JMB controllers

JMicron AHCI controllers set PORT_IRQ_IF_ERR on device errors.  The
IRQ status bit indicates interface error or protocol mismatch and ahci
driver interprets it into AC_ERR_ATA_BUS.  So, whenever an ATAPI
device raises check condition, ahci interprets it as ATA bus error and
thus resets it which, in turn, raises check condition thus creating a
reset loop and rendering the device unuseable.

This patch makes JMB controllers ignore PORT_IRQ_IF_ERR when
interpreting error condition.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Cc: Justin Tsai <justin@jmicron.com>
drivers/ata/ahci.c