Commit e7a480d2 authored by Dominik Brodowski's avatar Dominik Brodowski Committed by Linus Torvalds

[PATCH] pcmcia: move PCMCIA ioctl to a separate file

Move all PCMCIA_IOCTL-related code to a different file.
Signed-off-by: default avatarDominik Brodowski <linux@dominikbrodowski.net>

From: Richard Purdie <rpurdie@rpsys.net>

The pcmcia-move-pcmcia-ioctl-to-a-separate-file patch was corrupted in -mm2
causing this problem.
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 9a5555b8
...@@ -11,6 +11,7 @@ pcmcia_core-$(CONFIG_CARDBUS) += cardbus.o ...@@ -11,6 +11,7 @@ pcmcia_core-$(CONFIG_CARDBUS) += cardbus.o
obj-$(CONFIG_PCCARD) += pcmcia_core.o obj-$(CONFIG_PCCARD) += pcmcia_core.o
pcmcia-y += ds.o pcmcia_compat.o pcmcia-y += ds.o pcmcia_compat.o
pcmcia-$(CONFIG_PCMCIA_IOCTL) += pcmcia_ioctl.o
obj-$(CONFIG_PCMCIA) += pcmcia.o obj-$(CONFIG_PCMCIA) += pcmcia.o
obj-$(CONFIG_PCCARD_NONSTATIC) += rsrc_nonstatic.o obj-$(CONFIG_PCCARD_NONSTATIC) += rsrc_nonstatic.o
......
This diff is collapsed.
/* 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_callback callback;
int state;
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 */
u8 device_add_pending;
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;
#define DS_SOCKET_PRESENT 0x01
#define DS_SOCKET_BUSY 0x02
#define DS_SOCKET_DEAD 0x80
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_bus_socket *s, unsigned int function);
#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);
#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; }
#endif
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment