diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-11 17:04:37 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-11 17:04:37 -0500 |
commit | d72d6f1b5647258e83819b51f72fe37e2b7d7965 (patch) | |
tree | d3a08af50624d9b3e2287367b7e9f5fcc93bdce5 /include | |
parent | 33ddcbbfb1d9f1bf1259531ae0ba8400ea3c8ba1 (diff) | |
parent | 8a87a0b6313109d2fea87b1271d497c954ce2ca8 (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/libata.h | 2 | ||||
-rw-r--r-- | include/linux/pci_ids.h | 2 | ||||
-rw-r--r-- | include/linux/raid_class.h | 32 | ||||
-rw-r--r-- | include/scsi/scsi_host.h | 7 | ||||
-rw-r--r-- | include/scsi/scsi_request.h | 3 |
5 files changed, 32 insertions, 14 deletions
diff --git a/include/linux/libata.h b/include/linux/libata.h index 1464a7586de8..ad5996183ec2 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -399,7 +399,7 @@ struct ata_port_operations { | |||
399 | }; | 399 | }; |
400 | 400 | ||
401 | struct ata_port_info { | 401 | struct ata_port_info { |
402 | struct scsi_host_template *sht; | 402 | struct scsi_host_template *sht; |
403 | unsigned long host_flags; | 403 | unsigned long host_flags; |
404 | unsigned long pio_mask; | 404 | unsigned long pio_mask; |
405 | unsigned long mwdma_mask; | 405 | unsigned long mwdma_mask; |
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index 4e06eb0f4451..d00f8ba7f22b 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
@@ -442,6 +442,7 @@ | |||
442 | #define PCI_DEVICE_ID_IBM_SNIPE 0x0180 | 442 | #define PCI_DEVICE_ID_IBM_SNIPE 0x0180 |
443 | #define PCI_DEVICE_ID_IBM_CITRINE 0x028C | 443 | #define PCI_DEVICE_ID_IBM_CITRINE 0x028C |
444 | #define PCI_DEVICE_ID_IBM_GEMSTONE 0xB166 | 444 | #define PCI_DEVICE_ID_IBM_GEMSTONE 0xB166 |
445 | #define PCI_DEVICE_ID_IBM_OBSIDIAN 0x02BD | ||
445 | #define PCI_DEVICE_ID_IBM_ICOM_DEV_ID_1 0x0031 | 446 | #define PCI_DEVICE_ID_IBM_ICOM_DEV_ID_1 0x0031 |
446 | #define PCI_DEVICE_ID_IBM_ICOM_DEV_ID_2 0x0219 | 447 | #define PCI_DEVICE_ID_IBM_ICOM_DEV_ID_2 0x0219 |
447 | #define PCI_DEVICE_ID_IBM_ICOM_V2_TWO_PORTS_RVX 0x021A | 448 | #define PCI_DEVICE_ID_IBM_ICOM_V2_TWO_PORTS_RVX 0x021A |
@@ -2147,6 +2148,7 @@ | |||
2147 | #define PCI_DEVICE_ID_ADAPTEC2_7899B 0x00c1 | 2148 | #define PCI_DEVICE_ID_ADAPTEC2_7899B 0x00c1 |
2148 | #define PCI_DEVICE_ID_ADAPTEC2_7899D 0x00c3 | 2149 | #define PCI_DEVICE_ID_ADAPTEC2_7899D 0x00c3 |
2149 | #define PCI_DEVICE_ID_ADAPTEC2_7899P 0x00cf | 2150 | #define PCI_DEVICE_ID_ADAPTEC2_7899P 0x00cf |
2151 | #define PCI_DEVICE_ID_ADAPTEC2_OBSIDIAN 0x0500 | ||
2150 | #define PCI_DEVICE_ID_ADAPTEC2_SCAMP 0x0503 | 2152 | #define PCI_DEVICE_ID_ADAPTEC2_SCAMP 0x0503 |
2151 | 2153 | ||
2152 | 2154 | ||
diff --git a/include/linux/raid_class.h b/include/linux/raid_class.h index a71123c28272..48831eac2910 100644 --- a/include/linux/raid_class.h +++ b/include/linux/raid_class.h | |||
@@ -1,4 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * raid_class.h - a generic raid visualisation class | ||
3 | * | ||
4 | * Copyright (c) 2005 - James Bottomley <James.Bottomley@steeleye.com> | ||
5 | * | ||
6 | * This file is licensed under GPLv2 | ||
2 | */ | 7 | */ |
3 | #include <linux/transport_class.h> | 8 | #include <linux/transport_class.h> |
4 | 9 | ||
@@ -14,20 +19,35 @@ struct raid_function_template { | |||
14 | }; | 19 | }; |
15 | 20 | ||
16 | enum raid_state { | 21 | enum raid_state { |
17 | RAID_ACTIVE = 1, | 22 | RAID_STATE_UNKNOWN = 0, |
18 | RAID_DEGRADED, | 23 | RAID_STATE_ACTIVE, |
19 | RAID_RESYNCING, | 24 | RAID_STATE_DEGRADED, |
20 | RAID_OFFLINE, | 25 | RAID_STATE_RESYNCING, |
26 | RAID_STATE_OFFLINE, | ||
27 | }; | ||
28 | |||
29 | enum raid_level { | ||
30 | RAID_LEVEL_UNKNOWN = 0, | ||
31 | RAID_LEVEL_LINEAR, | ||
32 | RAID_LEVEL_0, | ||
33 | RAID_LEVEL_1, | ||
34 | RAID_LEVEL_3, | ||
35 | RAID_LEVEL_4, | ||
36 | RAID_LEVEL_5, | ||
37 | RAID_LEVEL_6, | ||
21 | }; | 38 | }; |
22 | 39 | ||
23 | struct raid_data { | 40 | struct raid_data { |
24 | struct list_head component_list; | 41 | struct list_head component_list; |
25 | int component_count; | 42 | int component_count; |
26 | int level; | 43 | enum raid_level level; |
27 | enum raid_state state; | 44 | enum raid_state state; |
28 | int resync; | 45 | int resync; |
29 | }; | 46 | }; |
30 | 47 | ||
48 | /* resync complete goes from 0 to this */ | ||
49 | #define RAID_MAX_RESYNC (10000) | ||
50 | |||
31 | #define DEFINE_RAID_ATTRIBUTE(type, attr) \ | 51 | #define DEFINE_RAID_ATTRIBUTE(type, attr) \ |
32 | static inline void \ | 52 | static inline void \ |
33 | raid_set_##attr(struct raid_template *r, struct device *dev, type value) { \ | 53 | raid_set_##attr(struct raid_template *r, struct device *dev, type value) { \ |
@@ -48,7 +68,7 @@ raid_get_##attr(struct raid_template *r, struct device *dev) { \ | |||
48 | return rd->attr; \ | 68 | return rd->attr; \ |
49 | } | 69 | } |
50 | 70 | ||
51 | DEFINE_RAID_ATTRIBUTE(int, level) | 71 | DEFINE_RAID_ATTRIBUTE(enum raid_level, level) |
52 | DEFINE_RAID_ATTRIBUTE(int, resync) | 72 | DEFINE_RAID_ATTRIBUTE(int, resync) |
53 | DEFINE_RAID_ATTRIBUTE(enum raid_state, state) | 73 | DEFINE_RAID_ATTRIBUTE(enum raid_state, state) |
54 | 74 | ||
diff --git a/include/scsi/scsi_host.h b/include/scsi/scsi_host.h index ecd53d7872d2..6cbb1982ed03 100644 --- a/include/scsi/scsi_host.h +++ b/include/scsi/scsi_host.h | |||
@@ -7,6 +7,7 @@ | |||
7 | #include <linux/workqueue.h> | 7 | #include <linux/workqueue.h> |
8 | 8 | ||
9 | struct block_device; | 9 | struct block_device; |
10 | struct completion; | ||
10 | struct module; | 11 | struct module; |
11 | struct scsi_cmnd; | 12 | struct scsi_cmnd; |
12 | struct scsi_device; | 13 | struct scsi_device; |
@@ -467,10 +468,8 @@ struct Scsi_Host { | |||
467 | 468 | ||
468 | struct list_head eh_cmd_q; | 469 | struct list_head eh_cmd_q; |
469 | struct task_struct * ehandler; /* Error recovery thread. */ | 470 | struct task_struct * ehandler; /* Error recovery thread. */ |
470 | struct semaphore * eh_action; /* Wait for specific actions on the | 471 | struct completion * eh_action; /* Wait for specific actions on the |
471 | host. */ | 472 | host. */ |
472 | unsigned int eh_active:1; /* Indicates the eh thread is awake and active if | ||
473 | this is true. */ | ||
474 | wait_queue_head_t host_wait; | 473 | wait_queue_head_t host_wait; |
475 | struct scsi_host_template *hostt; | 474 | struct scsi_host_template *hostt; |
476 | struct scsi_transport_template *transportt; | 475 | struct scsi_transport_template *transportt; |
diff --git a/include/scsi/scsi_request.h b/include/scsi/scsi_request.h index 2539debb7993..98d69fdb851c 100644 --- a/include/scsi/scsi_request.h +++ b/include/scsi/scsi_request.h | |||
@@ -47,9 +47,6 @@ struct scsi_request { | |||
47 | 47 | ||
48 | extern struct scsi_request *scsi_allocate_request(struct scsi_device *, gfp_t); | 48 | extern struct scsi_request *scsi_allocate_request(struct scsi_device *, gfp_t); |
49 | extern void scsi_release_request(struct scsi_request *); | 49 | extern void scsi_release_request(struct scsi_request *); |
50 | extern void scsi_wait_req(struct scsi_request *, const void *cmnd, | ||
51 | void *buffer, unsigned bufflen, | ||
52 | int timeout, int retries); | ||
53 | extern void scsi_do_req(struct scsi_request *, const void *cmnd, | 50 | extern void scsi_do_req(struct scsi_request *, const void *cmnd, |
54 | void *buffer, unsigned bufflen, | 51 | void *buffer, unsigned bufflen, |
55 | void (*done) (struct scsi_cmnd *), | 52 | void (*done) (struct scsi_cmnd *), |