summaryrefslogtreecommitdiff
path: root/drivers/pcmcia/ds.c
diff options
context:
space:
mode:
authorDominik Brodowski <linux@dominikbrodowski.net>2005-06-28 03:28:09 +0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-28 05:03:07 +0400
commitff1fa9ef3c9fb23a6baa06b63f4bdf3de089b29a (patch)
tree05cd82cc6bbb4c9881de5d9c5584cc64f15262d1 /drivers/pcmcia/ds.c
parent7f299bccb422d707be3b074f9a669b34cb207a14 (diff)
downloadlinux-ff1fa9ef3c9fb23a6baa06b63f4bdf3de089b29a.tar.xz
[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.c6
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)
return;
}
+static void pcmcia_bus_rescan(void)
+{
+ /* must be called with skt_sem held */
+ bus_rescan_devices(&pcmcia_bus_type);
+}
static inline int pcmcia_devmatch(struct pcmcia_device *dev,
struct pcmcia_device_id *did)
@@ -1766,6 +1771,7 @@ static int __devinit pcmcia_bus_add_socket(struct class_device *class_dev)
s->callback.owner = THIS_MODULE;
s->callback.event = &ds_event;
s->callback.resources_done = &pcmcia_card_add;
+ s->callback.replace_cis = &pcmcia_bus_rescan;
socket->pcmcia = s;
ret = pccard_register_pcmcia(socket, &s->callback);