diff options
author | Mark Langsdorf <mark.langsdorf@calxeda.com> | 2013-08-07 11:52:34 -0400 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2013-08-09 12:07:13 -0400 |
commit | 8c427f0626fe289f36ce65a60dcd602f6ef72777 (patch) | |
tree | 3cb10a2e371aa8474b29d57abf0c1e529e3480b8 /drivers/ata | |
parent | 71ab1d58c26eb7c30711caa95c173d5c39ab8855 (diff) |
sata, highbank: fix ordering of SGPIO signals
The ACTIVITY and ERROR signals were reversed in the original commit.
Fix that so that hard drive activity does not show up on the error
light, and attempts to indicate that the hard drive is failing do
not show up as hard drive activity. This fixes a fairly serious
functional bug in the driver, but failing to apply this patch will
not cause any stability issues on the system.
Signed-off-by: Mark Langsdorf <mark.langsdorf@calxeda.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/ata')
-rw-r--r-- | drivers/ata/sata_highbank.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/ata/sata_highbank.c b/drivers/ata/sata_highbank.c index d047d92a456f..e9a4f46d962e 100644 --- a/drivers/ata/sata_highbank.c +++ b/drivers/ata/sata_highbank.c | |||
@@ -86,11 +86,11 @@ struct ecx_plat_data { | |||
86 | 86 | ||
87 | #define SGPIO_SIGNALS 3 | 87 | #define SGPIO_SIGNALS 3 |
88 | #define ECX_ACTIVITY_BITS 0x300000 | 88 | #define ECX_ACTIVITY_BITS 0x300000 |
89 | #define ECX_ACTIVITY_SHIFT 2 | 89 | #define ECX_ACTIVITY_SHIFT 0 |
90 | #define ECX_LOCATE_BITS 0x80000 | 90 | #define ECX_LOCATE_BITS 0x80000 |
91 | #define ECX_LOCATE_SHIFT 1 | 91 | #define ECX_LOCATE_SHIFT 1 |
92 | #define ECX_FAULT_BITS 0x400000 | 92 | #define ECX_FAULT_BITS 0x400000 |
93 | #define ECX_FAULT_SHIFT 0 | 93 | #define ECX_FAULT_SHIFT 2 |
94 | static inline int sgpio_bit_shift(struct ecx_plat_data *pdata, u32 port, | 94 | static inline int sgpio_bit_shift(struct ecx_plat_data *pdata, u32 port, |
95 | u32 shift) | 95 | u32 shift) |
96 | { | 96 | { |