diff options
Diffstat (limited to 'drivers/pcmcia/ds.c')
-rw-r--r-- | drivers/pcmcia/ds.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c index 45df12eda3c5..7355eb455a88 100644 --- a/drivers/pcmcia/ds.c +++ b/drivers/pcmcia/ds.c | |||
@@ -675,9 +675,10 @@ static int pcmcia_card_add(struct pcmcia_socket *s) | |||
675 | } | 675 | } |
676 | 676 | ||
677 | 677 | ||
678 | static void pcmcia_delayed_add_device(void *data) | 678 | static void pcmcia_delayed_add_device(struct work_struct *work) |
679 | { | 679 | { |
680 | struct pcmcia_socket *s = data; | 680 | struct pcmcia_socket *s = |
681 | container_of(work, struct pcmcia_socket, device_add); | ||
681 | ds_dbg(1, "adding additional device to %d\n", s->sock); | 682 | ds_dbg(1, "adding additional device to %d\n", s->sock); |
682 | pcmcia_device_add(s, s->pcmcia_state.mfc_pfc); | 683 | pcmcia_device_add(s, s->pcmcia_state.mfc_pfc); |
683 | s->pcmcia_state.device_add_pending = 0; | 684 | s->pcmcia_state.device_add_pending = 0; |
@@ -1349,7 +1350,7 @@ static int __devinit pcmcia_bus_add_socket(struct class_device *class_dev, | |||
1349 | init_waitqueue_head(&socket->queue); | 1350 | init_waitqueue_head(&socket->queue); |
1350 | #endif | 1351 | #endif |
1351 | INIT_LIST_HEAD(&socket->devices_list); | 1352 | INIT_LIST_HEAD(&socket->devices_list); |
1352 | INIT_WORK(&socket->device_add, pcmcia_delayed_add_device, socket); | 1353 | INIT_WORK(&socket->device_add, pcmcia_delayed_add_device); |
1353 | memset(&socket->pcmcia_state, 0, sizeof(u8)); | 1354 | memset(&socket->pcmcia_state, 0, sizeof(u8)); |
1354 | socket->device_count = 0; | 1355 | socket->device_count = 0; |
1355 | 1356 | ||