patch-2.3.32 linux/drivers/cdrom/cdu31a.c
Next file: linux/drivers/cdrom/cm206.c
Previous file: linux/drivers/cdrom/cdrom.c
Back to the patch index
Back to the overall index
- Lines: 92
- Date:
Mon Dec 13 14:08:40 1999
- Orig file:
v2.3.31/linux/drivers/cdrom/cdu31a.c
- Orig date:
Tue Jul 6 19:05:48 1999
diff -u --recursive --new-file v2.3.31/linux/drivers/cdrom/cdu31a.c linux/drivers/cdrom/cdu31a.c
@@ -142,6 +142,11 @@
* <kodis@jagunet.com>. Work begun on fixing driver to
* work under 2.1.X. Added temporary extra printks
* which seem to slow it down enough to work.
+ *
+ * 9 November 1999 -- Make kernel-parameter implementation work with 2.3.x
+ * Removed init_module & cleanup_module in favor of
+ * module_init & module_exit.
+ * Torben Mathiasen <tmm@image.dk>
*/
#include <linux/major.h>
@@ -1641,7 +1646,7 @@
* data access on a CD is done sequentially, this saves a lot of operations.
*/
static void
-do_cdu31a_request(void)
+do_cdu31a_request(request_queue_t * q)
{
int block;
int nblock;
@@ -3317,11 +3322,15 @@
#ifndef MODULE
/*
* Set up base I/O and interrupts, called from main.c.
+
*/
-void __init
-cdu31a_setup(char *strings,
- int *ints)
+
+static int __init cdu31a_setup(char *strings)
{
+ int ints[4];
+
+ (void)get_options(strings, ARRAY_SIZE(ints), ints);
+
if (ints[0] > 0)
{
cdu31a_port = ints[1];
@@ -3341,7 +3350,12 @@
printk("CDU31A: Unknown interface type: %s\n", strings);
}
}
+
+ return 1;
}
+
+__setup("cdu31a=", cdu31a_setup);
+
#endif
static int cdu31a_block_size;
@@ -3497,7 +3511,7 @@
is_a_cdu31a = strcmp("CD-ROM CDU31A", drive_config.product_id) == 0;
- blk_dev[MAJOR_NR].request_fn = DEVICE_REQUEST;
+ blk_init_queue(BLK_DEFAULT_QUEUE(MAJOR_NR), DEVICE_REQUEST);
read_ahead[MAJOR_NR] = CDU31A_READAHEAD;
cdu31a_block_size = 1024; /* 1kB default block size */
/* use 'mount -o block=2048' */
@@ -3539,16 +3553,9 @@
return -EIO;
}
-#ifdef MODULE
-int
-init_module(void)
-{
- return cdu31a_init();
-}
-
-void
-cleanup_module(void)
+void __exit
+cdu31a_exit(void)
{
if (unregister_cdrom(&scd_info))
{
@@ -3567,4 +3574,9 @@
release_region(cdu31a_port,4);
printk(KERN_INFO "cdu31a module released.\n");
}
-#endif MODULE
+
+#ifdef MODULE
+module_init(cdu31a_init);
+#endif
+module_exit(cdu31a_exit);
+
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)