diff options
-rw-r--r-- | drivers/message/i2o/bus-osm.c | 2 | ||||
-rw-r--r-- | drivers/message/i2o/config-osm.c | 2 | ||||
-rw-r--r-- | drivers/message/i2o/core.h | 7 | ||||
-rw-r--r-- | drivers/message/i2o/device.c | 9 | ||||
-rw-r--r-- | drivers/message/i2o/driver.c | 2 | ||||
-rw-r--r-- | drivers/message/i2o/i2o_block.c | 8 | ||||
-rw-r--r-- | drivers/message/i2o/i2o_proc.c | 2 | ||||
-rw-r--r-- | drivers/message/i2o/i2o_scsi.c | 2 | ||||
-rw-r--r-- | drivers/message/i2o/iop.c | 12 |
9 files changed, 20 insertions, 26 deletions
diff --git a/drivers/message/i2o/bus-osm.c b/drivers/message/i2o/bus-osm.c index ce039d322fd0..ac06f10c54ec 100644 --- a/drivers/message/i2o/bus-osm.c +++ b/drivers/message/i2o/bus-osm.c | |||
@@ -17,7 +17,7 @@ | |||
17 | #include <linux/i2o.h> | 17 | #include <linux/i2o.h> |
18 | 18 | ||
19 | #define OSM_NAME "bus-osm" | 19 | #define OSM_NAME "bus-osm" |
20 | #define OSM_VERSION "$Rev$" | 20 | #define OSM_VERSION "1.317" |
21 | #define OSM_DESCRIPTION "I2O Bus Adapter OSM" | 21 | #define OSM_DESCRIPTION "I2O Bus Adapter OSM" |
22 | 22 | ||
23 | static struct i2o_driver i2o_bus_driver; | 23 | static struct i2o_driver i2o_bus_driver; |
diff --git a/drivers/message/i2o/config-osm.c b/drivers/message/i2o/config-osm.c index 10432f665201..b613890026be 100644 --- a/drivers/message/i2o/config-osm.c +++ b/drivers/message/i2o/config-osm.c | |||
@@ -22,7 +22,7 @@ | |||
22 | #include <asm/uaccess.h> | 22 | #include <asm/uaccess.h> |
23 | 23 | ||
24 | #define OSM_NAME "config-osm" | 24 | #define OSM_NAME "config-osm" |
25 | #define OSM_VERSION "1.248" | 25 | #define OSM_VERSION "1.317" |
26 | #define OSM_DESCRIPTION "I2O Configuration OSM" | 26 | #define OSM_DESCRIPTION "I2O Configuration OSM" |
27 | 27 | ||
28 | /* access mode user rw */ | 28 | /* access mode user rw */ |
diff --git a/drivers/message/i2o/core.h b/drivers/message/i2o/core.h index 9aa9b91170b2..edab686657f3 100644 --- a/drivers/message/i2o/core.h +++ b/drivers/message/i2o/core.h | |||
@@ -14,8 +14,6 @@ | |||
14 | */ | 14 | */ |
15 | 15 | ||
16 | /* Exec-OSM */ | 16 | /* Exec-OSM */ |
17 | extern struct bus_type i2o_bus_type; | ||
18 | |||
19 | extern struct i2o_driver i2o_exec_driver; | 17 | extern struct i2o_driver i2o_exec_driver; |
20 | extern int i2o_exec_lct_get(struct i2o_controller *); | 18 | extern int i2o_exec_lct_get(struct i2o_controller *); |
21 | 19 | ||
@@ -23,6 +21,8 @@ extern int __init i2o_exec_init(void); | |||
23 | extern void __exit i2o_exec_exit(void); | 21 | extern void __exit i2o_exec_exit(void); |
24 | 22 | ||
25 | /* driver */ | 23 | /* driver */ |
24 | extern struct bus_type i2o_bus_type; | ||
25 | |||
26 | extern int i2o_driver_dispatch(struct i2o_controller *, u32); | 26 | extern int i2o_driver_dispatch(struct i2o_controller *, u32); |
27 | 27 | ||
28 | extern int __init i2o_driver_init(void); | 28 | extern int __init i2o_driver_init(void); |
@@ -45,9 +45,6 @@ extern void i2o_iop_free(struct i2o_controller *); | |||
45 | extern int i2o_iop_add(struct i2o_controller *); | 45 | extern int i2o_iop_add(struct i2o_controller *); |
46 | extern void i2o_iop_remove(struct i2o_controller *); | 46 | extern void i2o_iop_remove(struct i2o_controller *); |
47 | 47 | ||
48 | /* config */ | ||
49 | extern int i2o_parm_issue(struct i2o_device *, int, void *, int, void *, int); | ||
50 | |||
51 | /* control registers relative to c->base */ | 48 | /* control registers relative to c->base */ |
52 | #define I2O_IRQ_STATUS 0x30 | 49 | #define I2O_IRQ_STATUS 0x30 |
53 | #define I2O_IRQ_MASK 0x34 | 50 | #define I2O_IRQ_MASK 0x34 |
diff --git a/drivers/message/i2o/device.c b/drivers/message/i2o/device.c index a5e260b7a3b6..773b0a4cfe21 100644 --- a/drivers/message/i2o/device.c +++ b/drivers/message/i2o/device.c | |||
@@ -176,6 +176,7 @@ static ssize_t i2o_device_show_tid(struct device *dev, | |||
176 | return strlen(buf) + 1; | 176 | return strlen(buf) + 1; |
177 | } | 177 | } |
178 | 178 | ||
179 | /* I2O device attributes */ | ||
179 | struct device_attribute i2o_device_attrs[] = { | 180 | struct device_attribute i2o_device_attrs[] = { |
180 | __ATTR(class_id, S_IRUGO, i2o_device_show_class_id, NULL), | 181 | __ATTR(class_id, S_IRUGO, i2o_device_show_class_id, NULL), |
181 | __ATTR(tid, S_IRUGO, i2o_device_show_tid, NULL), | 182 | __ATTR(tid, S_IRUGO, i2o_device_show_tid, NULL), |
@@ -505,12 +506,12 @@ int i2o_parm_field_get(struct i2o_device *i2o_dev, int group, int field, | |||
505 | * else return specific fields | 506 | * else return specific fields |
506 | * ibuf contains fieldindexes | 507 | * ibuf contains fieldindexes |
507 | * | 508 | * |
508 | * if oper == I2O_PARAMS_LIST_GET, get from specific rows | 509 | * if oper == I2O_PARAMS_LIST_GET, get from specific rows |
509 | * if fieldcount == -1 return all fields | 510 | * if fieldcount == -1 return all fields |
510 | * ibuf contains rowcount, keyvalues | 511 | * ibuf contains rowcount, keyvalues |
511 | * else return specific fields | 512 | * else return specific fields |
512 | * fieldcount is # of fieldindexes | 513 | * fieldcount is # of fieldindexes |
513 | * ibuf contains fieldindexes, rowcount, keyvalues | 514 | * ibuf contains fieldindexes, rowcount, keyvalues |
514 | * | 515 | * |
515 | * You could also use directly function i2o_issue_params(). | 516 | * You could also use directly function i2o_issue_params(). |
516 | */ | 517 | */ |
diff --git a/drivers/message/i2o/driver.c b/drivers/message/i2o/driver.c index 9c631c873dc6..45f4119a75f6 100644 --- a/drivers/message/i2o/driver.c +++ b/drivers/message/i2o/driver.c | |||
@@ -64,7 +64,7 @@ static int i2o_bus_match(struct device *dev, struct device_driver *drv) | |||
64 | struct bus_type i2o_bus_type = { | 64 | struct bus_type i2o_bus_type = { |
65 | .name = "i2o", | 65 | .name = "i2o", |
66 | .match = i2o_bus_match, | 66 | .match = i2o_bus_match, |
67 | .dev_attrs = i2o_device_attrs, | 67 | .dev_attrs = i2o_device_attrs |
68 | }; | 68 | }; |
69 | 69 | ||
70 | /** | 70 | /** |
diff --git a/drivers/message/i2o/i2o_block.c b/drivers/message/i2o/i2o_block.c index ed2df54bf464..3e865b793f2c 100644 --- a/drivers/message/i2o/i2o_block.c +++ b/drivers/message/i2o/i2o_block.c | |||
@@ -59,10 +59,12 @@ | |||
59 | #include <linux/blkdev.h> | 59 | #include <linux/blkdev.h> |
60 | #include <linux/hdreg.h> | 60 | #include <linux/hdreg.h> |
61 | 61 | ||
62 | #include <scsi/scsi.h> | ||
63 | |||
62 | #include "i2o_block.h" | 64 | #include "i2o_block.h" |
63 | 65 | ||
64 | #define OSM_NAME "block-osm" | 66 | #define OSM_NAME "block-osm" |
65 | #define OSM_VERSION "1.287" | 67 | #define OSM_VERSION "1.316" |
66 | #define OSM_DESCRIPTION "I2O Block Device OSM" | 68 | #define OSM_DESCRIPTION "I2O Block Device OSM" |
67 | 69 | ||
68 | static struct i2o_driver i2o_block_driver; | 70 | static struct i2o_driver i2o_block_driver; |
@@ -845,10 +847,10 @@ static int i2o_block_transfer(struct request *req) | |||
845 | * RETURN_SENSE_DATA_IN_REPLY_MESSAGE_FRAME | 847 | * RETURN_SENSE_DATA_IN_REPLY_MESSAGE_FRAME |
846 | */ | 848 | */ |
847 | if (rq_data_dir(req) == READ) { | 849 | if (rq_data_dir(req) == READ) { |
848 | cmd[0] = 0x28; | 850 | cmd[0] = READ_10; |
849 | scsi_flags = 0x60a0000a; | 851 | scsi_flags = 0x60a0000a; |
850 | } else { | 852 | } else { |
851 | cmd[0] = 0x2A; | 853 | cmd[0] = WRITE_10; |
852 | scsi_flags = 0xa0a0000a; | 854 | scsi_flags = 0xa0a0000a; |
853 | } | 855 | } |
854 | 856 | ||
diff --git a/drivers/message/i2o/i2o_proc.c b/drivers/message/i2o/i2o_proc.c index d559a1758363..2a0c42b8cda5 100644 --- a/drivers/message/i2o/i2o_proc.c +++ b/drivers/message/i2o/i2o_proc.c | |||
@@ -28,7 +28,7 @@ | |||
28 | */ | 28 | */ |
29 | 29 | ||
30 | #define OSM_NAME "proc-osm" | 30 | #define OSM_NAME "proc-osm" |
31 | #define OSM_VERSION "1.145" | 31 | #define OSM_VERSION "1.316" |
32 | #define OSM_DESCRIPTION "I2O ProcFS OSM" | 32 | #define OSM_DESCRIPTION "I2O ProcFS OSM" |
33 | 33 | ||
34 | #define I2O_MAX_MODULES 4 | 34 | #define I2O_MAX_MODULES 4 |
diff --git a/drivers/message/i2o/i2o_scsi.c b/drivers/message/i2o/i2o_scsi.c index 76b9516b1934..f9e5a23697a1 100644 --- a/drivers/message/i2o/i2o_scsi.c +++ b/drivers/message/i2o/i2o_scsi.c | |||
@@ -70,7 +70,7 @@ | |||
70 | #include <scsi/sg_request.h> | 70 | #include <scsi/sg_request.h> |
71 | 71 | ||
72 | #define OSM_NAME "scsi-osm" | 72 | #define OSM_NAME "scsi-osm" |
73 | #define OSM_VERSION "1.282" | 73 | #define OSM_VERSION "1.316" |
74 | #define OSM_DESCRIPTION "I2O SCSI Peripheral OSM" | 74 | #define OSM_DESCRIPTION "I2O SCSI Peripheral OSM" |
75 | 75 | ||
76 | static struct i2o_driver i2o_scsi_driver; | 76 | static struct i2o_driver i2o_scsi_driver; |
diff --git a/drivers/message/i2o/iop.c b/drivers/message/i2o/iop.c index 7411a0504bf2..0e465186196c 100644 --- a/drivers/message/i2o/iop.c +++ b/drivers/message/i2o/iop.c | |||
@@ -32,7 +32,7 @@ | |||
32 | #include "core.h" | 32 | #include "core.h" |
33 | 33 | ||
34 | #define OSM_NAME "i2o" | 34 | #define OSM_NAME "i2o" |
35 | #define OSM_VERSION "1.288" | 35 | #define OSM_VERSION "1.316" |
36 | #define OSM_DESCRIPTION "I2O subsystem" | 36 | #define OSM_DESCRIPTION "I2O subsystem" |
37 | 37 | ||
38 | /* global I2O controller list */ | 38 | /* global I2O controller list */ |
@@ -730,10 +730,6 @@ static int i2o_iop_systab_set(struct i2o_controller *c) | |||
730 | * Provide three SGL-elements: | 730 | * Provide three SGL-elements: |
731 | * System table (SysTab), Private memory space declaration and | 731 | * System table (SysTab), Private memory space declaration and |
732 | * Private i/o space declaration | 732 | * Private i/o space declaration |
733 | * | ||
734 | * FIXME: is this still true? | ||
735 | * Nasty one here. We can't use dma_alloc_coherent to send the | ||
736 | * same table to everyone. We have to go remap it for them all | ||
737 | */ | 733 | */ |
738 | 734 | ||
739 | msg->body[0] = cpu_to_le32(c->unit + 2); | 735 | msg->body[0] = cpu_to_le32(c->unit + 2); |
@@ -756,8 +752,6 @@ static int i2o_iop_systab_set(struct i2o_controller *c) | |||
756 | else | 752 | else |
757 | osm_debug("%s: SysTab set.\n", c->name); | 753 | osm_debug("%s: SysTab set.\n", c->name); |
758 | 754 | ||
759 | i2o_status_get(c); // Entered READY state | ||
760 | |||
761 | return rc; | 755 | return rc; |
762 | } | 756 | } |
763 | 757 | ||
@@ -767,7 +761,7 @@ static int i2o_iop_systab_set(struct i2o_controller *c) | |||
767 | * | 761 | * |
768 | * Send the system table and enable the I2O controller. | 762 | * Send the system table and enable the I2O controller. |
769 | * | 763 | * |
770 | * Returns 0 on success or negativer error code on failure. | 764 | * Returns 0 on success or negative error code on failure. |
771 | */ | 765 | */ |
772 | static int i2o_iop_online(struct i2o_controller *c) | 766 | static int i2o_iop_online(struct i2o_controller *c) |
773 | { | 767 | { |
@@ -977,7 +971,7 @@ int i2o_status_get(struct i2o_controller *c) | |||
977 | * The HRT contains information about possible hidden devices but is | 971 | * The HRT contains information about possible hidden devices but is |
978 | * mostly useless to us. | 972 | * mostly useless to us. |
979 | * | 973 | * |
980 | * Returns 0 on success or negativer error code on failure. | 974 | * Returns 0 on success or negative error code on failure. |
981 | */ | 975 | */ |
982 | static int i2o_hrt_get(struct i2o_controller *c) | 976 | static int i2o_hrt_get(struct i2o_controller *c) |
983 | { | 977 | { |