Skip to contentSkip to conversation

ps2esdi broken

PATCH In review Stephen Hemminger 2 participants 2 messages Sep 11, 2003 Block layer

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ps2esdi broken

This driver has problems all over the place and needs to be be disabled (or deleted)

In file included from include/linux/mca.h:140,
from drivers/block/ps2esdi.c:42:
include/linux/mca-legacy.h:10:2: warning: #warning "MCA legacy - please move your driver to the new sysfs api" drivers/block/ps2esdi.c:186: error: redefinition of init_module' drivers/block/ps2esdi.c:172: error: init_module' previously defined here drivers/block/ps2esdi.c: In function `init_module':
drivers/block/ps2esdi.c:190: warning: initialization from incompatible pointer type drivers/block/ps2esdi.c:193: error: dereferencing pointer to incomplete type drivers/block/ps2esdi.c:193: error: dereferencing pointer to incomplete type drivers/block/ps2esdi.c:194: error: dereferencing pointer to incomplete type drivers/block/ps2esdi.c:197: error: dereferencing pointer to incomplete type drivers/block/ps2esdi.c:198: error: dereferencing pointer to incomplete type drivers/block/ps2esdi.c:200: error: dereferencing pointer to incomplete type drivers/block/ps2esdi.c: In function `cleanup_module':
drivers/block/ps2esdi.c:216: error: `i' undeclared (first use in this function) drivers/block/ps2esdi.c:216: error: (Each undeclared identifier is reported only once drivers/block/ps2esdi.c:216: error: for each function it appears in.)
make[2]: *** [drivers/block/ps2esdi.o] Error 1

drivers/block/Kconfig Wed Sep 10 21:15:51 2003 +0 -0
diff -Nru a/drivers/block/Kconfig b/drivers/block/Kconfig
@@ -44,7 +44,7 @@
 

config BLK_DEV_PS2
tristate "PS/2 ESDI hard disk support"
- depends on MCA
+ depends on MCA && BROKEN
help
Say Y here if you have a PS/2 machine with a MCA bus and an ESDI hard disk.

#1 lore raw
Quoted 10 lines · Stephen Hemminger

This driver has problems all over the place and needs to be be disabled (or deleted)

diff -Nru a/drivers/block/Kconfig b/drivers/block/Kconfig

drivers/block/Kconfig Wed Sep 10 21:15:51 2003 +0 -0
@@ -44,7 +44,7 @@
 

config BLK_DEV_PS2
tristate "PS/2 ESDI hard disk support"

drivers/block/Kconfig Wed Sep 10 21:15:51 2003

Quoted 5 lines
drivers/block/Kconfig Wed Sep 10 21:15:51 2003 +1 -1
-    depends on MCA
+    depends on MCA && BROKEN
    help
      Say Y here if you have a PS/2 machine with a MCA bus and an ESDI
      hard disk.

Or just the following, since these problems are actually a couple of typos on the modular side and misuse of module_init():

drivers/block/Kconfig +1 -1
diff -urN B5-misc4/drivers/block/Kconfig B5-current/drivers/block/Kconfig
@@ -44,7 +44,7 @@
 
 config BLK_DEV_PS2
 	tristate "PS/2 ESDI hard disk support"
-	depends on MCA
+	depends on MCA && MCA_LEGACY
 	help
 	  Say Y here if you have a PS/2 machine with a MCA bus and an ESDI
 	  hard disk.
drivers/block/ps2esdi.c +6 -5
diff -urN B5-misc4/drivers/block/ps2esdi.c B5-current/drivers/block/ps2esdi.c
@@ -62,8 +62,6 @@
 
 static void reset_ctrl(void);
 
-int ps2esdi_init(void);
-
 static int ps2esdi_geninit(void);
 
 static void do_ps2esdi_request(request_queue_t * q);
@@ -141,7 +139,7 @@
 static struct gendisk *ps2esdi_gendisk[2];
 
 /* initialization routine called by ll_rw_blk.c   */
-int __init ps2esdi_init(void)
+static int __init ps2esdi_init(void)
 {
 
 	int error = 0;
@@ -169,9 +167,11 @@
 	return 0;
 }				/* ps2esdi_init */
 
+#ifndef MODULE
+
 module_init(ps2esdi_init);
 
-#ifdef MODULE
+#else
 
 static int cyl[MAX_HD] = {-1,-1};
 static int head[MAX_HD] = {-1, -1};
@@ -187,7 +187,7 @@
 	int drive;
 
 	for(drive = 0; drive < MAX_HD; drive++) {
-	        struct ps2_esdi_i_struct *info = &ps2esdi_info[drive];
+	        struct ps2esdi_i_struct *info = &ps2esdi_info[drive];
 
         	if (cyl[drive] != -1) {
 		  	info->cyl = info->lzone = cyl[drive];
@@ -204,6 +204,7 @@
 
 void
 cleanup_module(void) {
+	int i;
 	if(ps2esdi_slot) {
 		mca_mark_as_unused(ps2esdi_slot);
 		mca_set_adapter_procfn(ps2esdi_slot, NULL, NULL);