diff options
author | Dominik Brodowski <linux@dominikbrodowski.net> | 2006-03-05 04:45:09 -0500 |
---|---|---|
committer | Dominik Brodowski <linux@dominikbrodowski.net> | 2006-03-31 10:15:57 -0500 |
commit | fd238232cd0ff4840ae6946bb338502154096d88 (patch) | |
tree | d20e8f5871f7cff9d0867a84f6ba088fbffcbe28 /include/pcmcia/ds.h | |
parent | a78f4dd331a4f6a396eb5849656a4a72a70a56d7 (diff) |
[PATCH] pcmcia: embed dev_link_t into struct pcmcia_device
Embed dev_link_t into struct pcmcia_device(), as they basically address the
same entity. The actual contents of dev_link_t will be cleaned up step by step.
This patch includes a bugfix from and signed-off-by Andrew Morton.
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Diffstat (limited to 'include/pcmcia/ds.h')
-rw-r--r-- | include/pcmcia/ds.h | 31 |
1 files changed, 14 insertions, 17 deletions
diff --git a/include/pcmcia/ds.h b/include/pcmcia/ds.h index 7f712df3e297..61f7d2dec199 100644 --- a/include/pcmcia/ds.h +++ b/include/pcmcia/ds.h | |||
@@ -39,7 +39,7 @@ typedef struct win_info_t { | |||
39 | typedef struct bind_info_t { | 39 | typedef struct bind_info_t { |
40 | dev_info_t dev_info; | 40 | dev_info_t dev_info; |
41 | u_char function; | 41 | u_char function; |
42 | struct dev_link_t *instance; | 42 | struct pcmcia_device *instance; |
43 | char name[DEV_NAME_LEN]; | 43 | char name[DEV_NAME_LEN]; |
44 | u_short major, minor; | 44 | u_short major, minor; |
45 | void *next; | 45 | void *next; |
@@ -103,18 +103,6 @@ typedef struct dev_node_t { | |||
103 | struct dev_node_t *next; | 103 | struct dev_node_t *next; |
104 | } dev_node_t; | 104 | } dev_node_t; |
105 | 105 | ||
106 | typedef struct dev_link_t { | ||
107 | dev_node_t *dev; | ||
108 | u_int state, open; | ||
109 | client_handle_t handle; | ||
110 | io_req_t io; | ||
111 | irq_req_t irq; | ||
112 | config_req_t conf; | ||
113 | window_handle_t win; | ||
114 | void *priv; | ||
115 | struct dev_link_t *next; | ||
116 | } dev_link_t; | ||
117 | |||
118 | /* Flags for device state */ | 106 | /* Flags for device state */ |
119 | #define DEV_PRESENT 0x01 | 107 | #define DEV_PRESENT 0x01 |
120 | #define DEV_CONFIG 0x02 | 108 | #define DEV_CONFIG 0x02 |
@@ -163,9 +151,17 @@ struct pcmcia_device { | |||
163 | 151 | ||
164 | struct list_head socket_device_list; | 152 | struct list_head socket_device_list; |
165 | 153 | ||
166 | /* deprecated, a cleaned up version will be moved into this | 154 | /* deprecated, will be cleaned up soon */ |
167 | struct soon */ | 155 | dev_node_t *dev_node; |
168 | dev_link_t *instance; | 156 | u_int state; |
157 | u_int open; | ||
158 | struct pcmcia_device *handle; | ||
159 | io_req_t io; | ||
160 | irq_req_t irq; | ||
161 | config_req_t conf; | ||
162 | window_handle_t win; | ||
163 | void *priv; | ||
164 | |||
169 | u_int p_state; | 165 | u_int p_state; |
170 | 166 | ||
171 | /* information about this device */ | 167 | /* information about this device */ |
@@ -189,6 +185,7 @@ struct pcmcia_device { | |||
189 | struct pcmcia_driver * cardmgr; | 185 | struct pcmcia_driver * cardmgr; |
190 | #endif | 186 | #endif |
191 | }; | 187 | }; |
188 | typedef struct pcmcia_device dev_link_t; | ||
192 | 189 | ||
193 | #define to_pcmcia_dev(n) container_of(n, struct pcmcia_device, dev) | 190 | #define to_pcmcia_dev(n) container_of(n, struct pcmcia_device, dev) |
194 | #define to_pcmcia_drv(n) container_of(n, struct pcmcia_driver, drv) | 191 | #define to_pcmcia_drv(n) container_of(n, struct pcmcia_driver, drv) |
@@ -196,7 +193,7 @@ struct pcmcia_device { | |||
196 | #define handle_to_pdev(handle) (handle) | 193 | #define handle_to_pdev(handle) (handle) |
197 | #define handle_to_dev(handle) (handle->dev) | 194 | #define handle_to_dev(handle) (handle->dev) |
198 | 195 | ||
199 | #define dev_to_instance(dev) (dev->instance) | 196 | #define dev_to_instance(dev) (dev) |
200 | 197 | ||
201 | /* error reporting */ | 198 | /* error reporting */ |
202 | void cs_error(client_handle_t handle, int func, int ret); | 199 | void cs_error(client_handle_t handle, int func, int ret); |