aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/ncr53c8xx.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/ncr53c8xx.c')
-rw-r--r--drivers/scsi/ncr53c8xx.c33
1 files changed, 18 insertions, 15 deletions
diff --git a/drivers/scsi/ncr53c8xx.c b/drivers/scsi/ncr53c8xx.c
index 6cc2bc2f62be..bbf521cbc55d 100644
--- a/drivers/scsi/ncr53c8xx.c
+++ b/drivers/scsi/ncr53c8xx.c
@@ -185,7 +185,7 @@ static inline struct list_head *ncr_list_pop(struct list_head *head)
185** power of 2 cache line size. 185** power of 2 cache line size.
186** Enhanced in linux-2.3.44 to provide a memory pool 186** Enhanced in linux-2.3.44 to provide a memory pool
187** per pcidev to support dynamic dma mapping. (I would 187** per pcidev to support dynamic dma mapping. (I would
188** have preferred a real bus astraction, btw). 188** have preferred a real bus abstraction, btw).
189** 189**
190**========================================================== 190**==========================================================
191*/ 191*/
@@ -589,10 +589,12 @@ static int __map_scsi_sg_data(struct device *dev, struct scsi_cmnd *cmd)
589static struct ncr_driver_setup 589static struct ncr_driver_setup
590 driver_setup = SCSI_NCR_DRIVER_SETUP; 590 driver_setup = SCSI_NCR_DRIVER_SETUP;
591 591
592#ifndef MODULE
592#ifdef SCSI_NCR_BOOT_COMMAND_LINE_SUPPORT 593#ifdef SCSI_NCR_BOOT_COMMAND_LINE_SUPPORT
593static struct ncr_driver_setup 594static struct ncr_driver_setup
594 driver_safe_setup __initdata = SCSI_NCR_DRIVER_SAFE_SETUP; 595 driver_safe_setup __initdata = SCSI_NCR_DRIVER_SAFE_SETUP;
595#endif 596#endif
597#endif /* !MODULE */
596 598
597#define initverbose (driver_setup.verbose) 599#define initverbose (driver_setup.verbose)
598#define bootverbose (np->verbose) 600#define bootverbose (np->verbose)
@@ -641,6 +643,13 @@ static struct ncr_driver_setup
641#define OPT_IARB 26 643#define OPT_IARB 26
642#endif 644#endif
643 645
646#ifdef MODULE
647#define ARG_SEP ' '
648#else
649#define ARG_SEP ','
650#endif
651
652#ifndef MODULE
644static char setup_token[] __initdata = 653static char setup_token[] __initdata =
645 "tags:" "mpar:" 654 "tags:" "mpar:"
646 "spar:" "disc:" 655 "spar:" "disc:"
@@ -660,12 +669,6 @@ static char setup_token[] __initdata =
660#endif 669#endif
661 ; /* DONNOT REMOVE THIS ';' */ 670 ; /* DONNOT REMOVE THIS ';' */
662 671
663#ifdef MODULE
664#define ARG_SEP ' '
665#else
666#define ARG_SEP ','
667#endif
668
669static int __init get_setup_token(char *p) 672static int __init get_setup_token(char *p)
670{ 673{
671 char *cur = setup_token; 674 char *cur = setup_token;
@@ -682,7 +685,6 @@ static int __init get_setup_token(char *p)
682 return 0; 685 return 0;
683} 686}
684 687
685
686static int __init sym53c8xx__setup(char *str) 688static int __init sym53c8xx__setup(char *str)
687{ 689{
688#ifdef SCSI_NCR_BOOT_COMMAND_LINE_SUPPORT 690#ifdef SCSI_NCR_BOOT_COMMAND_LINE_SUPPORT
@@ -804,6 +806,7 @@ static int __init sym53c8xx__setup(char *str)
804#endif /* SCSI_NCR_BOOT_COMMAND_LINE_SUPPORT */ 806#endif /* SCSI_NCR_BOOT_COMMAND_LINE_SUPPORT */
805 return 1; 807 return 1;
806} 808}
809#endif /* !MODULE */
807 810
808/*=================================================================== 811/*===================================================================
809** 812**
@@ -1438,7 +1441,7 @@ struct head {
1438** The first four bytes (scr_st[4]) are used inside the script by 1441** The first four bytes (scr_st[4]) are used inside the script by
1439** "COPY" commands. 1442** "COPY" commands.
1440** Because source and destination must have the same alignment 1443** Because source and destination must have the same alignment
1441** in a DWORD, the fields HAVE to be at the choosen offsets. 1444** in a DWORD, the fields HAVE to be at the chosen offsets.
1442** xerr_st 0 (0x34) scratcha 1445** xerr_st 0 (0x34) scratcha
1443** sync_st 1 (0x05) sxfer 1446** sync_st 1 (0x05) sxfer
1444** wide_st 3 (0x03) scntl3 1447** wide_st 3 (0x03) scntl3
@@ -1498,7 +1501,7 @@ struct head {
1498** the DSA (data structure address) register points 1501** the DSA (data structure address) register points
1499** to this substructure of the ccb. 1502** to this substructure of the ccb.
1500** This substructure contains the header with 1503** This substructure contains the header with
1501** the script-processor-changable data and 1504** the script-processor-changeable data and
1502** data blocks for the indirect move commands. 1505** data blocks for the indirect move commands.
1503** 1506**
1504**---------------------------------------------------------- 1507**----------------------------------------------------------
@@ -5107,7 +5110,7 @@ void ncr_complete (struct ncb *np, struct ccb *cp)
5107 5110
5108/* 5111/*
5109** This CCB has been skipped by the NCR. 5112** This CCB has been skipped by the NCR.
5110** Queue it in the correponding unit queue. 5113** Queue it in the corresponding unit queue.
5111*/ 5114*/
5112static void ncr_ccb_skipped(struct ncb *np, struct ccb *cp) 5115static void ncr_ccb_skipped(struct ncb *np, struct ccb *cp)
5113{ 5116{
@@ -5896,8 +5899,8 @@ static void ncr_log_hard_error(struct ncb *np, u16 sist, u_char dstat)
5896** 5899**
5897** In normal cases, interrupt conditions occur one at a 5900** In normal cases, interrupt conditions occur one at a
5898** time. The ncr is able to stack in some extra registers 5901** time. The ncr is able to stack in some extra registers
5899** other interrupts that will occurs after the first one. 5902** other interrupts that will occur after the first one.
5900** But severall interrupts may occur at the same time. 5903** But, several interrupts may occur at the same time.
5901** 5904**
5902** We probably should only try to deal with the normal 5905** We probably should only try to deal with the normal
5903** case, but it seems that multiple interrupts occur in 5906** case, but it seems that multiple interrupts occur in
@@ -6796,7 +6799,7 @@ void ncr_int_sir (struct ncb *np)
6796** The host status field is set to HS_NEGOTIATE to mark this 6799** The host status field is set to HS_NEGOTIATE to mark this
6797** situation. 6800** situation.
6798** 6801**
6799** If the target doesn't answer this message immidiately 6802** If the target doesn't answer this message immediately
6800** (as required by the standard), the SIR_NEGO_FAIL interrupt 6803** (as required by the standard), the SIR_NEGO_FAIL interrupt
6801** will be raised eventually. 6804** will be raised eventually.
6802** The handler removes the HS_NEGOTIATE status, and sets the 6805** The handler removes the HS_NEGOTIATE status, and sets the
@@ -8321,12 +8324,12 @@ char *ncr53c8xx; /* command line passed by insmod */
8321module_param(ncr53c8xx, charp, 0); 8324module_param(ncr53c8xx, charp, 0);
8322#endif 8325#endif
8323 8326
8327#ifndef MODULE
8324static int __init ncr53c8xx_setup(char *str) 8328static int __init ncr53c8xx_setup(char *str)
8325{ 8329{
8326 return sym53c8xx__setup(str); 8330 return sym53c8xx__setup(str);
8327} 8331}
8328 8332
8329#ifndef MODULE
8330__setup("ncr53c8xx=", ncr53c8xx_setup); 8333__setup("ncr53c8xx=", ncr53c8xx_setup);
8331#endif 8334#endif
8332 8335