aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/sym53c8xx_2/sym_nvram.c
diff options
context:
space:
mode:
authorMatthew Wilcox <matthew@wil.cx>2005-05-20 14:15:43 -0400
committerJames Bottomley <jejb@mulgrave.(none)>2005-05-26 09:41:14 -0400
commit53222b906903fd861dc24ebccfa07ee125941313 (patch)
treea39e9a20718d01b67e89c14baa0e11411643c993 /drivers/scsi/sym53c8xx_2/sym_nvram.c
parent7c00ffa314bf0fb0e23858bbebad33b48b6abbb9 (diff)
[SCSI] sym2 version 2.2.1
sym2 version 2.2.1: - Fix MMIO BAR detection (Thanks to Bob Picco) - Fix odd-sized transfers with a wide bus (Thanks to Larry Stephens) - Write posting fixes (Thanks to Thibaut Varene) - Change one of the GFP_KERNEL allocations back into a GFP_ATOMIC - Make CCB_BA() return a script-endian address - Move range checks and disabling of devices from the queuecommand path to slave_alloc() - Remove a warning in sym_setup_cdb() - Keep a pointer to the scsi_target instead of the scsi_dev in the tcb - Remove a check for the upper layers passing an oversized cmd - Replace CAM_REQ_ constants with the Linux DID_ constants - Replace CAM_DIR_ constants with the Linux DMA_ constants - Inline sym_read_parisc_pdc() on non-parisc systems Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/sym53c8xx_2/sym_nvram.c')
-rw-r--r--drivers/scsi/sym53c8xx_2/sym_nvram.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/scsi/sym53c8xx_2/sym_nvram.c b/drivers/scsi/sym53c8xx_2/sym_nvram.c
index 1b721e3ec520..cd9140e158cf 100644
--- a/drivers/scsi/sym53c8xx_2/sym_nvram.c
+++ b/drivers/scsi/sym53c8xx_2/sym_nvram.c
@@ -270,6 +270,7 @@ static void S24C16_set_bit(struct sym_device *np, u_char write_bit, u_char *gpre
270 270
271 } 271 }
272 OUTB(np, nc_gpreg, *gpreg); 272 OUTB(np, nc_gpreg, *gpreg);
273 INB(np, nc_mbox1);
273 udelay(5); 274 udelay(5);
274} 275}
275 276
@@ -547,6 +548,7 @@ static int sym_read_Symbios_nvram(struct sym_device *np, Symbios_nvram *nvram)
547static void T93C46_Clk(struct sym_device *np, u_char *gpreg) 548static void T93C46_Clk(struct sym_device *np, u_char *gpreg)
548{ 549{
549 OUTB(np, nc_gpreg, *gpreg | 0x04); 550 OUTB(np, nc_gpreg, *gpreg | 0x04);
551 INB(np, nc_mbox1);
550 udelay(2); 552 udelay(2);
551 OUTB(np, nc_gpreg, *gpreg); 553 OUTB(np, nc_gpreg, *gpreg);
552} 554}
@@ -574,6 +576,7 @@ static void T93C46_Write_Bit(struct sym_device *np, u_char write_bit, u_char *gp
574 *gpreg |= 0x10; 576 *gpreg |= 0x10;
575 577
576 OUTB(np, nc_gpreg, *gpreg); 578 OUTB(np, nc_gpreg, *gpreg);
579 INB(np, nc_mbox1);
577 udelay(2); 580 udelay(2);
578 581
579 T93C46_Clk(np, gpreg); 582 T93C46_Clk(np, gpreg);
@@ -586,6 +589,7 @@ static void T93C46_Stop(struct sym_device *np, u_char *gpreg)
586{ 589{
587 *gpreg &= 0xef; 590 *gpreg &= 0xef;
588 OUTB(np, nc_gpreg, *gpreg); 591 OUTB(np, nc_gpreg, *gpreg);
592 INB(np, nc_mbox1);
589 udelay(2); 593 udelay(2);
590 594
591 T93C46_Clk(np, gpreg); 595 T93C46_Clk(np, gpreg);
@@ -733,7 +737,8 @@ static int sym_read_parisc_pdc(struct sym_device *np, struct pdc_initiator *pdc)
733 return SYM_PARISC_PDC; 737 return SYM_PARISC_PDC;
734} 738}
735#else 739#else
736static int sym_read_parisc_pdc(struct sym_device *np, struct pdc_initiator *x) 740static inline int sym_read_parisc_pdc(struct sym_device *np,
741 struct pdc_initiator *x)
737{ 742{
738 return 0; 743 return 0;
739} 744}