* [PATCH #upstream-fixes] sata_sil24: fix kernel panic on ARM caused by unaligned access in sata_sil24
@ 2010-06-04 14:19 Tejun Heo
2010-06-07 20:08 ` Jeff Garzik
0 siblings, 1 reply; 2+ messages in thread
From: Tejun Heo @ 2010-06-04 14:19 UTC (permalink / raw)
To: Jeff Garzik, linux-ide; +Cc: Catalin Marinas, Robin Randhawa, Colin Tuckley
From: Colin Tuckley <colin.tuckley@arm.com>
The sata_sil24 driver has six 16-bit registers that are initialised with
32-bit writes. This cause a kernel panic on ARM due to the unaligned
accesses which result.
This patch changes the accesses to the correct 16-bit ones.
Signed-off-by: Colin Tuckley <colin.tuckley@arm.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
---
drivers/ata/sata_sil24.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/ata/sata_sil24.c b/drivers/ata/sata_sil24.c
index 433b6b8..62ee924 100644
--- a/drivers/ata/sata_sil24.c
+++ b/drivers/ata/sata_sil24.c
@@ -539,12 +539,12 @@ static void sil24_config_port(struct ata_port *ap)
writel(PORT_CS_IRQ_WOC, port + PORT_CTRL_CLR);
/* zero error counters. */
- writel(0x8000, port + PORT_DECODE_ERR_THRESH);
- writel(0x8000, port + PORT_CRC_ERR_THRESH);
- writel(0x8000, port + PORT_HSHK_ERR_THRESH);
- writel(0x0000, port + PORT_DECODE_ERR_CNT);
- writel(0x0000, port + PORT_CRC_ERR_CNT);
- writel(0x0000, port + PORT_HSHK_ERR_CNT);
+ writew(0x8000, port + PORT_DECODE_ERR_THRESH);
+ writew(0x8000, port + PORT_CRC_ERR_THRESH);
+ writew(0x8000, port + PORT_HSHK_ERR_THRESH);
+ writew(0x0000, port + PORT_DECODE_ERR_CNT);
+ writew(0x0000, port + PORT_CRC_ERR_CNT);
+ writew(0x0000, port + PORT_HSHK_ERR_CNT);
/* always use 64bit activation */
writel(PORT_CS_32BIT_ACTV, port + PORT_CTRL_CLR);
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH #upstream-fixes] sata_sil24: fix kernel panic on ARM caused by unaligned access in sata_sil24
2010-06-04 14:19 [PATCH #upstream-fixes] sata_sil24: fix kernel panic on ARM caused by unaligned access in sata_sil24 Tejun Heo
@ 2010-06-07 20:08 ` Jeff Garzik
0 siblings, 0 replies; 2+ messages in thread
From: Jeff Garzik @ 2010-06-07 20:08 UTC (permalink / raw)
To: Tejun Heo; +Cc: linux-ide, Catalin Marinas, Robin Randhawa, Colin Tuckley
On 06/04/2010 10:19 AM, Tejun Heo wrote:
> From: Colin Tuckley<colin.tuckley@arm.com>
>
> The sata_sil24 driver has six 16-bit registers that are initialised with
> 32-bit writes. This cause a kernel panic on ARM due to the unaligned
> accesses which result.
>
> This patch changes the accesses to the correct 16-bit ones.
>
> Signed-off-by: Colin Tuckley<colin.tuckley@arm.com>
> Signed-off-by: Tejun Heo<tj@kernel.org>
> ---
> drivers/ata/sata_sil24.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
applied
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-06-07 20:08 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-06-04 14:19 [PATCH #upstream-fixes] sata_sil24: fix kernel panic on ARM caused by unaligned access in sata_sil24 Tejun Heo
2010-06-07 20:08 ` Jeff Garzik
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.