diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-04-28 07:58:36 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-04-28 07:58:36 -0700 |
commit | 3fb938b2a8bdbcf6086192d90fb7c73425e41fb9 (patch) | |
tree | 3b273692ee6a34c603f83a645b29573c404ffc97 /include | |
parent | 970b06485ffee36aa3549dfe4c6b2a2c2118354d (diff) | |
parent | 83bf6f11e82eba8533f8dbd241b2c2825e42ae5d (diff) | |
download | linux-3fb938b2a8bdbcf6086192d90fb7c73425e41fb9.tar.gz linux-3fb938b2a8bdbcf6086192d90fb7c73425e41fb9.tar.bz2 linux-3fb938b2a8bdbcf6086192d90fb7c73425e41fb9.zip |
Merge branch 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6
* 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6:
pcmcia: fix matching rules for pseudo-multi-function cards
pcmcia: pcmcia_dev_present bugfix
Diffstat (limited to 'include')
-rw-r--r-- | include/pcmcia/ds.h | 7 | ||||
-rw-r--r-- | include/pcmcia/ss.h | 8 |
2 files changed, 6 insertions, 9 deletions
diff --git a/include/pcmcia/ds.h b/include/pcmcia/ds.h index d57847f2f6c1..aab3c13dc310 100644 --- a/include/pcmcia/ds.h +++ b/include/pcmcia/ds.h @@ -26,6 +26,7 @@ #ifdef __KERNEL__ #include <linux/device.h> #include <pcmcia/ss.h> +#include <asm/atomic.h> /* * PCMCIA device drivers (16-bit cards only; 32-bit cards require CardBus @@ -94,10 +95,8 @@ struct pcmcia_device { config_req_t conf; window_handle_t win; - /* Is the device suspended, or in the process of - * being removed? */ + /* Is the device suspended? */ u16 suspended:1; - u16 _removed:1; /* Flags whether io, irq, win configurations were * requested, and whether the configuration is "locked" */ @@ -115,7 +114,7 @@ struct pcmcia_device { u16 has_card_id:1; u16 has_func_id:1; - u16 reserved:3; + u16 reserved:4; u8 func_id; u16 manf_id; diff --git a/include/pcmcia/ss.h b/include/pcmcia/ss.h index 2e488b60bc76..344705cb42f4 100644 --- a/include/pcmcia/ss.h +++ b/include/pcmcia/ss.h @@ -224,18 +224,16 @@ struct pcmcia_socket { /* 16-bit state: */ struct { - /* PCMCIA card is present in socket */ - u8 present:1; /* "master" ioctl is used */ u8 busy:1; - /* pcmcia module is being unloaded */ - u8 dead:1; /* the PCMCIA card consists of two pseudo devices */ u8 has_pfc:1; - u8 reserved:4; + u8 reserved:6; } pcmcia_state; + /* non-zero if PCMCIA card is present */ + atomic_t present; #ifdef CONFIG_PCMCIA_IOCTL struct user_info_t *user; |