aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/message/i2o/bus-osm.c2
-rw-r--r--drivers/message/i2o/config-osm.c2
-rw-r--r--drivers/message/i2o/core.h7
-rw-r--r--drivers/message/i2o/device.c9
-rw-r--r--drivers/message/i2o/driver.c2
-rw-r--r--drivers/message/i2o/i2o_block.c8
-rw-r--r--drivers/message/i2o/i2o_proc.c2
-rw-r--r--drivers/message/i2o/i2o_scsi.c2
-rw-r--r--drivers/message/i2o/iop.c12
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
23static struct i2o_driver i2o_bus_driver; 23static 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 */
17extern struct bus_type i2o_bus_type;
18
19extern struct i2o_driver i2o_exec_driver; 17extern struct i2o_driver i2o_exec_driver;
20extern int i2o_exec_lct_get(struct i2o_controller *); 18extern int i2o_exec_lct_get(struct i2o_controller *);
21 19
@@ -23,6 +21,8 @@ extern int __init i2o_exec_init(void);
23extern void __exit i2o_exec_exit(void); 21extern void __exit i2o_exec_exit(void);
24 22
25/* driver */ 23/* driver */
24extern struct bus_type i2o_bus_type;
25
26extern int i2o_driver_dispatch(struct i2o_controller *, u32); 26extern int i2o_driver_dispatch(struct i2o_controller *, u32);
27 27
28extern int __init i2o_driver_init(void); 28extern int __init i2o_driver_init(void);
@@ -45,9 +45,6 @@ extern void i2o_iop_free(struct i2o_controller *);
45extern int i2o_iop_add(struct i2o_controller *); 45extern int i2o_iop_add(struct i2o_controller *);
46extern void i2o_iop_remove(struct i2o_controller *); 46extern void i2o_iop_remove(struct i2o_controller *);
47 47
48/* config */
49extern 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 */
179struct device_attribute i2o_device_attrs[] = { 180struct 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)
64struct bus_type i2o_bus_type = { 64struct 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
68static struct i2o_driver i2o_block_driver; 70static 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
76static struct i2o_driver i2o_scsi_driver; 76static 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 */
772static int i2o_iop_online(struct i2o_controller *c) 766static 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 */
982static int i2o_hrt_get(struct i2o_controller *c) 976static int i2o_hrt_get(struct i2o_controller *c)
983{ 977{