sata_fsl: Fix wrong Device Error Register usage
authorPrabhakar Kushwaha <prabhakar@freescale.com>
Wed, 9 Mar 2011 07:17:18 +0000 (12:47 +0530)
committerJeff Garzik <jgarzik@pobox.com>
Mon, 14 Mar 2011 07:04:49 +0000 (03:04 -0400)
commit4ac7534a7ff1aa1b1486e39bdf169aaa8a9bb3e2
tree5fe796b9b8e872644d9212db4af30016690f8a39
parent6b3b9d73e08d8939aaf54f85bb47495171f49e20
sata_fsl: Fix wrong Device Error Register usage

When a single device error is detected, the device under the error
is indicated by the error bit set in the DER. There is a one to one
mapping between register bit and devices on Port multiplier(PMP)
i.e. bit 0 represents PMP device 0 and bit 1 represents PMP device
1 etc.

Current implementation treats Device error register value as device
number not set of bits representing multiple device on PMP. It is
changed to consider bit level.

No need to check for each set bit as all command is going to be
aborted.

Signed-off-by: Ashish Kalra <B00888@freescale.com>
Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
drivers/ata/sata_fsl.c