diff options
author | Dominik Brodowski <linux@dominikbrodowski.net> | 2005-06-27 19:28:09 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-06-27 21:03:07 -0400 |
commit | ff1fa9ef3c9fb23a6baa06b63f4bdf3de089b29a (patch) | |
tree | 05cd82cc6bbb4c9881de5d9c5584cc64f15262d1 /drivers/pcmcia/ds.c | |
parent | 7f299bccb422d707be3b074f9a669b34cb207a14 (diff) |
[PATCH] pcmcia: CIS overrid via sysfs
The one thing which surprises me in this patch that cis->Length needs to be
set to count+1. Without it, it doesn't work, but with it, it doesn't make
sense to me.
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/pcmcia/ds.c')
-rw-r--r-- | drivers/pcmcia/ds.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c index c0611d56eab2..f657a2a77b2b 100644 --- a/drivers/pcmcia/ds.c +++ b/drivers/pcmcia/ds.c | |||
@@ -653,6 +653,11 @@ static inline void pcmcia_add_pseudo_device(struct pcmcia_bus_socket *s) | |||
653 | return; | 653 | return; |
654 | } | 654 | } |
655 | 655 | ||
656 | static void pcmcia_bus_rescan(void) | ||
657 | { | ||
658 | /* must be called with skt_sem held */ | ||
659 | bus_rescan_devices(&pcmcia_bus_type); | ||
660 | } | ||
656 | 661 | ||
657 | static inline int pcmcia_devmatch(struct pcmcia_device *dev, | 662 | static inline int pcmcia_devmatch(struct pcmcia_device *dev, |
658 | struct pcmcia_device_id *did) | 663 | struct pcmcia_device_id *did) |
@@ -1766,6 +1771,7 @@ static int __devinit pcmcia_bus_add_socket(struct class_device *class_dev) | |||
1766 | s->callback.owner = THIS_MODULE; | 1771 | s->callback.owner = THIS_MODULE; |
1767 | s->callback.event = &ds_event; | 1772 | s->callback.event = &ds_event; |
1768 | s->callback.resources_done = &pcmcia_card_add; | 1773 | s->callback.resources_done = &pcmcia_card_add; |
1774 | s->callback.replace_cis = &pcmcia_bus_rescan; | ||
1769 | socket->pcmcia = s; | 1775 | socket->pcmcia = s; |
1770 | 1776 | ||
1771 | ret = pccard_register_pcmcia(socket, &s->callback); | 1777 | ret = pccard_register_pcmcia(socket, &s->callback); |