diff options
-rw-r--r-- | drivers/scsi/dec_esp.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/scsi/dec_esp.c b/drivers/scsi/dec_esp.c index 4f39890b44ac..90e2faf94a09 100644 --- a/drivers/scsi/dec_esp.c +++ b/drivers/scsi/dec_esp.c | |||
@@ -18,7 +18,7 @@ | |||
18 | * 20001005 - Initialization fixes for 2.4.0-test9 | 18 | * 20001005 - Initialization fixes for 2.4.0-test9 |
19 | * Florian Lohoff <flo@rfc822.org> | 19 | * Florian Lohoff <flo@rfc822.org> |
20 | * | 20 | * |
21 | * Copyright (C) 2002, 2003 Maciej W. Rozycki | 21 | * Copyright (C) 2002, 2003, 2005 Maciej W. Rozycki |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <linux/kernel.h> | 24 | #include <linux/kernel.h> |
@@ -41,6 +41,7 @@ | |||
41 | #include <asm/dec/ioasic_addrs.h> | 41 | #include <asm/dec/ioasic_addrs.h> |
42 | #include <asm/dec/ioasic_ints.h> | 42 | #include <asm/dec/ioasic_ints.h> |
43 | #include <asm/dec/machtype.h> | 43 | #include <asm/dec/machtype.h> |
44 | #include <asm/dec/system.h> | ||
44 | #include <asm/dec/tc.h> | 45 | #include <asm/dec/tc.h> |
45 | 46 | ||
46 | #define DEC_SCSI_SREG 0 | 47 | #define DEC_SCSI_SREG 0 |
@@ -183,7 +184,8 @@ static int dec_esp_detect(Scsi_Host_Template * tpnt) | |||
183 | esp->dregs = 0; | 184 | esp->dregs = 0; |
184 | 185 | ||
185 | /* ESP register base */ | 186 | /* ESP register base */ |
186 | esp->eregs = (struct ESP_regs *) (system_base + IOASIC_SCSI); | 187 | esp->eregs = (void *)CKSEG1ADDR(dec_kn_slot_base + |
188 | IOASIC_SCSI); | ||
187 | 189 | ||
188 | /* Set the command buffer */ | 190 | /* Set the command buffer */ |
189 | esp->esp_command = (volatile unsigned char *) cmd_buffer; | 191 | esp->esp_command = (volatile unsigned char *) cmd_buffer; |
@@ -228,10 +230,11 @@ static int dec_esp_detect(Scsi_Host_Template * tpnt) | |||
228 | mem_start = get_tc_base_addr(slot); | 230 | mem_start = get_tc_base_addr(slot); |
229 | 231 | ||
230 | /* Store base addr into esp struct */ | 232 | /* Store base addr into esp struct */ |
231 | esp->slot = CPHYSADDR(mem_start); | 233 | esp->slot = mem_start; |
232 | 234 | ||
233 | esp->dregs = 0; | 235 | esp->dregs = 0; |
234 | esp->eregs = (struct ESP_regs *) (mem_start + DEC_SCSI_SREG); | 236 | esp->eregs = (void *)CKSEG1ADDR(mem_start + |
237 | DEC_SCSI_SREG); | ||
235 | esp->do_pio_cmds = 1; | 238 | esp->do_pio_cmds = 1; |
236 | 239 | ||
237 | /* Set the command buffer */ | 240 | /* Set the command buffer */ |