patch-2.4.5 linux/drivers/block/ps2esdi.c
Next file: linux/drivers/block/smart1,2.h
Previous file: linux/drivers/block/paride/pd.c
Back to the patch index
Back to the overall index
- Lines: 122
- Date:
Thu May 24 15:14:08 2001
- Orig file:
v2.4.4/linux/drivers/block/ps2esdi.c
- Orig date:
Wed Apr 18 11:49:13 2001
diff -u --recursive --new-file v2.4.4/linux/drivers/block/ps2esdi.c linux/drivers/block/ps2esdi.c
@@ -56,7 +56,7 @@
#include <asm/uaccess.h>
#define PS2ESDI_IRQ 14
-#define MAX_HD 1
+#define MAX_HD 2
#define MAX_RETRIES 5
#define MAX_16BIT 65536
#define ESDI_TIMEOUT 0xf000
@@ -105,14 +105,14 @@
static void ps2esdi_get_device_cfg(void);
-void ps2esdi_reset_timer(unsigned long unused);
+static void ps2esdi_reset_timer(unsigned long unused);
-u_int dma_arb_level; /* DMA arbitration level */
+static u_int dma_arb_level; /* DMA arbitration level */
static DECLARE_WAIT_QUEUE_HEAD(ps2esdi_int);
static DECLARE_WAIT_QUEUE_HEAD(ps2esdi_wait_open);
-int no_int_yet;
+static int no_int_yet;
static int access_count[MAX_HD];
static char ps2esdi_valid[MAX_HD];
static int ps2esdi_sizes[MAX_HD << 6];
@@ -123,26 +123,26 @@
static struct timer_list esdi_timer = { function: ps2esdi_reset_timer };
static int reset_status;
static int ps2esdi_slot = -1;
-int tp720esdi = 0; /* Is it Integrated ESDI of ThinkPad-720? */
-int intg_esdi = 0; /* If integrated adapter */
+static int tp720esdi = 0; /* Is it Integrated ESDI of ThinkPad-720? */
+static int intg_esdi = 0; /* If integrated adapter */
struct ps2esdi_i_struct {
unsigned int head, sect, cyl, wpcom, lzone, ctl;
};
#if 0
#if 0 /* try both - I don't know which one is better... UB */
-struct ps2esdi_i_struct ps2esdi_info[] =
+static struct ps2esdi_i_struct ps2esdi_info[MAX_HD] =
{
{4, 48, 1553, 0, 0, 0},
{0, 0, 0, 0, 0, 0}};
#else
-struct ps2esdi_i_struct ps2esdi_info[] =
+static struct ps2esdi_i_struct ps2esdi_info[MAX_HD] =
{
{64, 32, 161, 0, 0, 0},
{0, 0, 0, 0, 0, 0}};
#endif
#endif
-struct ps2esdi_i_struct ps2esdi_info[] =
+static struct ps2esdi_i_struct ps2esdi_info[MAX_HD] =
{
{0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0}};
@@ -191,9 +191,9 @@
#ifdef MODULE
-int cyl[2] = {-1,-1};
-int head[2] = {-1, -1};
-int sect[2] = {-1, -1};
+static int cyl[MAX_HD] = {-1,-1};
+static int head[MAX_HD] = {-1, -1};
+static int sect[MAX_HD] = {-1, -1};
MODULE_PARM(tp720esdi, "i");
MODULE_PARM(cyl, "i");
@@ -203,7 +203,7 @@
int init_module(void) {
int drive;
- for(drive = 0; drive <= 1; drive++) {
+ for(drive = 0; drive < MAX_HD; drive++) {
struct ps2_esdi_i_struct *info = &ps2esdi_info[drive];
if (cyl[drive] != -1) {
@@ -953,10 +953,10 @@
break;
}
if(ending != -1) {
- spin_lock_irqsave(io_request_lock, flags);
+ spin_lock_irqsave(&io_request_lock, flags);
end_request(ending);
do_ps2esdi_request(BLK_DEFAULT_QUEUE(MAJOR_NR));
- spin_unlock_irqrestore(io_request_lock, flags);
+ spin_unlock_irqrestore(&io_request_lock, flags);
}
} /* handle interrupts */
@@ -1145,15 +1145,9 @@
for (partition = ps2esdi_gendisk.max_p - 1;
partition >= 0; partition--) {
int minor = (start | partition);
- kdev_t devp = MKDEV(MAJOR_NR, minor);
- struct super_block * sb = get_super(devp);
-
- sync_dev(devp);
- if (sb)
- invalidate_inodes(sb);
- invalidate_buffers(devp);
- ps2esdi_gendisk.part[start + partition].start_sect = 0;
- ps2esdi_gendisk.part[start + partition].nr_sects = 0;
+ invalidate_device(MKDEV(MAJOR_NR, minor), 1);
+ ps2esdi_gendisk.part[minor].start_sect = 0;
+ ps2esdi_gendisk.part[minor].nr_sects = 0;
}
grok_partitions(&ps2esdi_gendisk, target, 1<<6,
@@ -1165,7 +1159,7 @@
return (0);
}
-void ps2esdi_reset_timer(unsigned long unused)
+static void ps2esdi_reset_timer(unsigned long unused)
{
int status;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)