unsigned long is way too big for sil_port[] offsets (currently the table is 256 bytes on 64bit machines). Convert sil_port[] to u16. Signed-off-by: Tejun Heo <htejun@xxxxxxxxx> --- drivers/scsi/sata_sil.c | 20 ++++++++++---------- 1 files changed, 10 insertions(+), 10 deletions(-) 21111e9d5d332ba90051d6821ca7abf058ee5e99 diff --git a/drivers/scsi/sata_sil.c b/drivers/scsi/sata_sil.c index f096cc9..fb86e36 100644 --- a/drivers/scsi/sata_sil.c +++ b/drivers/scsi/sata_sil.c @@ -202,18 +202,18 @@ static const struct ata_port_info sil_po /* per-port register offsets */ /* TODO: we can probably calculate rather than use a table */ static const struct { - unsigned long tf; /* ATA taskfile register block */ - unsigned long ctl; /* ATA control/altstatus register block */ - unsigned long bmdma; /* DMA register block */ - unsigned long fifo_cfg; /* FIFO Valid Byte Count and Control */ - unsigned long scr; /* SATA control register block */ - unsigned long sien; /* SATA Interrupt Enable register */ - unsigned long xfer_mode;/* data transfer mode register */ - unsigned long sfis_cfg; /* SATA FIS reception config register */ + u16 tf; /* ATA taskfile register block */ + u16 ctl; /* ATA control/altstatus register block */ + u16 bmdma; /* DMA register block */ + u16 fifo_cfg; /* FIFO Valid Byte Count and Control */ + u16 scr; /* SATA control register block */ + u16 sien; /* SATA Interrupt Enable register */ + u16 xfer_mode; /* data transfer mode register */ + u16 sfis_cfg; /* SATA FIS reception config register */ } sil_port[] = { /* port 0 ... */ - { 0x80, 0x8A, 0x00, 0x40, 0x100, 0x148, 0xb4, 0x14c }, - { 0xC0, 0xCA, 0x08, 0x44, 0x180, 0x1c8, 0xf4, 0x1cc }, + { 0x080, 0x08A, 0x000, 0x040, 0x100, 0x148, 0x0b4, 0x14c }, + { 0x0C0, 0x0CA, 0x008, 0x044, 0x180, 0x1c8, 0x0f4, 0x1cc }, { 0x280, 0x28A, 0x200, 0x240, 0x300, 0x348, 0x2b4, 0x34c }, { 0x2C0, 0x2CA, 0x208, 0x244, 0x380, 0x3c8, 0x2f4, 0x3cc }, /* ... port 3 */ -- 1.2.1 - : 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