patch-2.1.36 linux/drivers/scsi/pas16.c
Next file: linux/drivers/scsi/ppa.c
Previous file: linux/drivers/scsi/ncr53c8xx.h
Back to the patch index
Back to the overall index
- Lines: 105
- Date:
Tue Apr 22 22:42:51 1997
- Orig file:
v2.1.35/linux/drivers/scsi/pas16.c
- Orig date:
Mon May 6 02:26:11 1996
diff -u --recursive --new-file v2.1.35/linux/drivers/scsi/pas16.c linux/drivers/scsi/pas16.c
@@ -120,7 +120,8 @@
#include "constants.h"
#include "sd.h"
-#include<linux/stat.h>
+#include <linux/stat.h>
+#include <linux/init.h>
struct proc_dir_entry proc_scsi_pas16 = {
PROC_SCSI_PAS16, 5, "pas16",
@@ -138,20 +139,21 @@
* irq jumpers on the board). The first value in the array will be
* assigned to logical board 0, the next to board 1, etc.
*/
-int default_irqs[] = { PAS16_DEFAULT_BOARD_1_IRQ,
- PAS16_DEFAULT_BOARD_2_IRQ,
- PAS16_DEFAULT_BOARD_3_IRQ,
- PAS16_DEFAULT_BOARD_4_IRQ
- };
+int default_irqs[] __initdata =
+ { PAS16_DEFAULT_BOARD_1_IRQ,
+ PAS16_DEFAULT_BOARD_2_IRQ,
+ PAS16_DEFAULT_BOARD_3_IRQ,
+ PAS16_DEFAULT_BOARD_4_IRQ
+ };
static struct override {
unsigned short io_port;
int irq;
} overrides
#ifdef PAS16_OVERRIDE
- [] = PAS16_OVERRIDE;
+ [] __initdata = PAS16_OVERRIDE;
#else
- [4] = {{0,IRQ_AUTO}, {0,IRQ_AUTO}, {0,IRQ_AUTO},
+ [4] __initdata = {{0,IRQ_AUTO}, {0,IRQ_AUTO}, {0,IRQ_AUTO},
{0,IRQ_AUTO}};
#endif
@@ -160,11 +162,12 @@
static struct base {
unsigned short io_port;
int noauto;
-} bases[] = { {PAS16_DEFAULT_BASE_1, 0},
- {PAS16_DEFAULT_BASE_2, 0},
- {PAS16_DEFAULT_BASE_3, 0},
- {PAS16_DEFAULT_BASE_4, 0}
- };
+} bases[] __initdata =
+ { {PAS16_DEFAULT_BASE_1, 0},
+ {PAS16_DEFAULT_BASE_2, 0},
+ {PAS16_DEFAULT_BASE_3, 0},
+ {PAS16_DEFAULT_BASE_4, 0}
+ };
#define NO_BASES (sizeof (bases) / sizeof (struct base))
@@ -210,7 +213,8 @@
*
*/
-void enable_board( int board_num, unsigned short port )
+__initfunc(static void
+ enable_board( int board_num, unsigned short port ))
{
outb( 0xbc + board_num, MASTER_ADDRESS_PTR );
outb( port >> 2, MASTER_ADDRESS_PTR );
@@ -229,7 +233,8 @@
*
*/
-void init_board( unsigned short io_port, int irq, int force_irq )
+__initfunc (static void
+ init_board( unsigned short io_port, int irq, int force_irq ))
{
unsigned int tmp;
unsigned int pas_irq_code;
@@ -277,7 +282,8 @@
* Returns : 0 if board not found, 1 if found.
*/
-int pas16_hw_detect( unsigned short board_num )
+__initfunc(static int
+ pas16_hw_detect( unsigned short board_num ))
{
unsigned char board_rev, tmp;
unsigned short io_port = bases[ board_num ].io_port;
@@ -336,7 +342,7 @@
*
*/
-void pas16_setup(char *str, int *ints) {
+__initfunc(void pas16_setup(char *str, int *ints)) {
static int commandline_current = 0;
int i;
if (ints[0] != 2)
@@ -367,7 +373,7 @@
*
*/
-int pas16_detect(Scsi_Host_Template * tpnt) {
+__initfunc(int pas16_detect(Scsi_Host_Template * tpnt)) {
static int current_override = 0;
static unsigned short current_base = 0;
struct Scsi_Host *instance;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov