Zang Roy-r61911 wrote:
This fixes a byte-swap issue on PPC, found by Zang Roy-r61911
on the powerpc platform. His original patch also had some other
platform-specific changes in #ifdef's, but I'm not sure yet how to
incorporate them. Look for another patch for those (soon).
Signed-off-by: Mark Lord <liml@xxxxxx>
---
--- linux/drivers/scsi/sata_mv.c 2006-05-19
15:44:11.000000000 -0400
+++ linux/drivers/scsi/sata_mv.c 2006-05-19
15:58:21.000000000 -0400
@@ -1030,8 +1030,9 @@
static inline void mv_crqb_pack_cmd(u16 *cmdw, u8 data, u8
addr, unsigned last)
{
- *cmdw = data | (addr << CRQB_CMD_ADDR_SHIFT) | CRQB_CMD_CS |
+ u16 tmp = data | (addr << CRQB_CMD_ADDR_SHIFT) | CRQB_CMD_CS |
(last ? CRQB_CMD_LAST : 0);
+ *cmdw = cpu_to_le16(tmp);
}
/**
Does this patch will affect other platform except powerpc?
This patch affects all platforms (as it should). Most Linux code is
intentionally written in a cross-platform, portable manner without ifdefs.
Jeff
-
: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html