X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=drivers%2Fpcmcia%2Fds_internal.h;h=3a2b25e6ed7325541f4b7659aee51c034467c746;hb=513b046c96cc2fbce730a3474f6f7ff0c4fdd05c;hp=2c3bb189dec694109a8914b0600ed713f14edf30;hpb=b5e43913cfe95a18ad8929585a0bb58e46cf3390;p=linux-2.6-omap-h63xx.git diff --git a/drivers/pcmcia/ds_internal.h b/drivers/pcmcia/ds_internal.h index 2c3bb189dec..3a2b25e6ed7 100644 --- a/drivers/pcmcia/ds_internal.h +++ b/drivers/pcmcia/ds_internal.h @@ -1,56 +1,23 @@ /* ds_internal.h - internal header for 16-bit PCMCIA devices management */ -struct user_info_t; - -/* Socket state information */ -struct pcmcia_bus_socket { - struct kref refcount; - struct pcmcia_socket *parent; - - /* the PCMCIA devices connected to this socket (normally one, more - * for multifunction devices: */ - struct list_head devices_list; - u8 device_count; /* the number of devices, used - * only internally and subject - * to incorrectness and change */ - - struct { - u8 present:1, - busy:1, - dead:1, - device_add_pending:1, - reserved:4; - } pcmcia_state; - - struct work_struct device_add; - - -#ifdef CONFIG_PCMCIA_IOCTL - struct user_info_t *user; - wait_queue_head_t queue; -#endif -}; extern spinlock_t pcmcia_dev_list_lock; - extern struct bus_type pcmcia_bus_type; - extern struct pcmcia_device * pcmcia_get_dev(struct pcmcia_device *p_dev); extern void pcmcia_put_dev(struct pcmcia_device *p_dev); -struct pcmcia_bus_socket *pcmcia_get_bus_socket(struct pcmcia_bus_socket *s); -void pcmcia_put_bus_socket(struct pcmcia_bus_socket *s); +struct pcmcia_device * pcmcia_device_add(struct pcmcia_socket *s, unsigned int function); -struct pcmcia_device * pcmcia_device_add(struct pcmcia_bus_socket *s, unsigned int function); +extern int pcmcia_release_configuration(struct pcmcia_device *p_dev); #ifdef CONFIG_PCMCIA_IOCTL extern void __init pcmcia_setup_ioctl(void); extern void __exit pcmcia_cleanup_ioctl(void); -extern void handle_event(struct pcmcia_bus_socket *s, event_t event); -extern int handle_request(struct pcmcia_bus_socket *s, event_t event); +extern void handle_event(struct pcmcia_socket *s, event_t event); +extern int handle_request(struct pcmcia_socket *s, event_t event); #else static inline void __init pcmcia_setup_ioctl(void) { return; } -static inline void __init pcmcia_cleanup_ioctl(void) { return; } -static inline void handle_event(struct pcmcia_bus_socket *s, event_t event) { return; } -static inline int handle_request(struct pcmcia_bus_socket *s, event_t event) { return CS_SUCCESS; } +static inline void __exit pcmcia_cleanup_ioctl(void) { return; } +static inline void handle_event(struct pcmcia_socket *s, event_t event) { return; } +static inline int handle_request(struct pcmcia_socket *s, event_t event) { return CS_SUCCESS; } #endif