git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git]
/
drivers
/
char
/
viotape.c
diff --git
a/drivers/char/viotape.c
b/drivers/char/viotape.c
index
aea3cbf
..
60aabdb
100644
(file)
--- a/
drivers/char/viotape.c
+++ b/
drivers/char/viotape.c
@@
-29,10
+29,9
@@
*
* All tape operations are performed by sending messages back and forth to
* the OS/400 partition. The format of the messages is defined in
*
* All tape operations are performed by sending messages back and forth to
* the OS/400 partition. The format of the messages is defined in
- * i
S
eries/vio.h
+ * i
s
eries/vio.h
*/
#include <linux/config.h>
*/
#include <linux/config.h>
-#include <linux/version.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/errno.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/errno.h>
@@
-54,10
+53,10
@@
#include <asm/ioctls.h>
#include <asm/vio.h>
#include <asm/ioctls.h>
#include <asm/vio.h>
-#include <asm/i
S
eries/vio.h>
-#include <asm/i
Series/HvLpE
vent.h>
-#include <asm/i
Series/HvCallE
vent.h>
-#include <asm/i
Series/HvLpC
onfig.h>
+#include <asm/i
s
eries/vio.h>
+#include <asm/i
series/hv_lp_e
vent.h>
+#include <asm/i
series/hv_call_e
vent.h>
+#include <asm/i
series/hv_lp_c
onfig.h>
#define VIOTAPE_VERSION "1.2"
#define VIOTAPE_MAXREQ 1
#define VIOTAPE_VERSION "1.2"
#define VIOTAPE_MAXREQ 1
@@
-237,7
+236,7
@@
static dma_addr_t viotape_unitinfo_token;
static struct mtget viomtget[VIOTAPE_MAX_TAPE];
static struct mtget viomtget[VIOTAPE_MAX_TAPE];
-static struct class
_simple
*tape_class;
+static struct class *tape_class;
static struct device *tape_device[VIOTAPE_MAX_TAPE];
static struct device *tape_device[VIOTAPE_MAX_TAPE];
@@
-956,9
+955,9
@@
static int viotape_probe(struct vio_dev *vdev, const struct vio_device_id *id)
state[i].cur_part = 0;
for (j = 0; j < MAX_PARTITIONS; ++j)
state[i].part_stat_rwi[j] = VIOT_IDLE;
state[i].cur_part = 0;
for (j = 0; j < MAX_PARTITIONS; ++j)
state[i].part_stat_rwi[j] = VIOT_IDLE;
- class_
simple_device_add(tape_class
, MKDEV(VIOTAPE_MAJOR, i), NULL,
+ class_
device_create(tape_class, NULL
, MKDEV(VIOTAPE_MAJOR, i), NULL,
"iseries!vt%d", i);
"iseries!vt%d", i);
- class_
simple_device_add(tape_class
, MKDEV(VIOTAPE_MAJOR, i | 0x80),
+ class_
device_create(tape_class, NULL
, MKDEV(VIOTAPE_MAJOR, i | 0x80),
NULL, "iseries!nvt%d", i);
devfs_mk_cdev(MKDEV(VIOTAPE_MAJOR, i), S_IFCHR | S_IRUSR | S_IWUSR,
"iseries/vt%d", i);
NULL, "iseries!nvt%d", i);
devfs_mk_cdev(MKDEV(VIOTAPE_MAJOR, i), S_IFCHR | S_IRUSR | S_IWUSR,
"iseries/vt%d", i);
@@
-980,8
+979,8
@@
static int viotape_remove(struct vio_dev *vdev)
devfs_remove("iseries/nvt%d", i);
devfs_remove("iseries/vt%d", i);
devfs_unregister_tape(state[i].dev_handle);
devfs_remove("iseries/nvt%d", i);
devfs_remove("iseries/vt%d", i);
devfs_unregister_tape(state[i].dev_handle);
- class_
simple_device_remove(
MKDEV(VIOTAPE_MAJOR, i | 0x80));
- class_
simple_device_remove(
MKDEV(VIOTAPE_MAJOR, i));
+ class_
device_destroy(tape_class,
MKDEV(VIOTAPE_MAJOR, i | 0x80));
+ class_
device_destroy(tape_class,
MKDEV(VIOTAPE_MAJOR, i));
return 0;
}
return 0;
}
@@
-991,15
+990,18
@@
static int viotape_remove(struct vio_dev *vdev)
*/
static struct vio_device_id viotape_device_table[] __devinitdata = {
{ "viotape", "" },
*/
static struct vio_device_id viotape_device_table[] __devinitdata = {
{ "viotape", "" },
- {
0,
}
+ {
"", ""
}
};
};
-
MODULE_DEVICE_TABLE(vio, viotape_device_table);
MODULE_DEVICE_TABLE(vio, viotape_device_table);
+
static struct vio_driver viotape_driver = {
static struct vio_driver viotape_driver = {
- .name = "viotape",
.id_table = viotape_device_table,
.probe = viotape_probe,
.id_table = viotape_device_table,
.probe = viotape_probe,
- .remove = viotape_remove
+ .remove = viotape_remove,
+ .driver = {
+ .name = "viotape",
+ .owner = THIS_MODULE,
+ }
};
};
@@
-1045,7
+1047,7
@@
int __init viotap_init(void)
goto clear_handler;
}
goto clear_handler;
}
- tape_class = class_
simple_
create(THIS_MODULE, "tape");
+ tape_class = class_create(THIS_MODULE, "tape");
if (IS_ERR(tape_class)) {
printk(VIOTAPE_KERN_WARN "Unable to allocat class\n");
ret = PTR_ERR(tape_class);
if (IS_ERR(tape_class)) {
printk(VIOTAPE_KERN_WARN "Unable to allocat class\n");
ret = PTR_ERR(tape_class);
@@
-1070,7
+1072,7
@@
int __init viotap_init(void)
return 0;
unreg_class:
return 0;
unreg_class:
- class_
simple_
destroy(tape_class);
+ class_destroy(tape_class);
unreg_chrdev:
unregister_chrdev(VIOTAPE_MAJOR, "viotape");
clear_handler:
unreg_chrdev:
unregister_chrdev(VIOTAPE_MAJOR, "viotape");
clear_handler:
@@
-1110,7
+1112,7
@@
static void __exit viotap_exit(void)
remove_proc_entry("iSeries/viotape", NULL);
vio_unregister_driver(&viotape_driver);
remove_proc_entry("iSeries/viotape", NULL);
vio_unregister_driver(&viotape_driver);
- class_
simple_
destroy(tape_class);
+ class_destroy(tape_class);
ret = unregister_chrdev(VIOTAPE_MAJOR, "viotape");
if (ret < 0)
printk(VIOTAPE_KERN_WARN "Error unregistering device: %d\n",
ret = unregister_chrdev(VIOTAPE_MAJOR, "viotape");
if (ret < 0)
printk(VIOTAPE_KERN_WARN "Error unregistering device: %d\n",