From: Dominik Brodowski Generate hotplug event for PCMCIA sockets being registered. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton --- 25-akpm/drivers/pcmcia/cs.c | 16 ++++++++++++++++ 1 files changed, 16 insertions(+) diff -puN drivers/pcmcia/cs.c~pcmcia-hotplug-event-for-pcmcia-socket-devices drivers/pcmcia/cs.c --- 25/drivers/pcmcia/cs.c~pcmcia-hotplug-event-for-pcmcia-socket-devices 2005-03-20 16:56:45.000000000 -0800 +++ 25-akpm/drivers/pcmcia/cs.c 2005-03-20 16:56:45.000000000 -0800 @@ -1857,6 +1857,21 @@ int pcmcia_insert_card(struct pcmcia_soc return ret; } /* insert_card */ +static int pcmcia_socket_hotplug(struct class_device *dev, char **envp, + int num_envp, char *buffer, int buffer_size) +{ + struct pcmcia_socket *s = container_of(dev, struct pcmcia_socket, dev); + int i = 0, length = 0; + + if (add_hotplug_env_var(envp, num_envp, &i, buffer, buffer_size, + &length, "SOCKET_NO=%u", s->sock)) + return -ENOMEM; + + envp[i] = NULL; + + return 0; +} + /*====================================================================== OS-specific module glue goes here @@ -1886,6 +1901,7 @@ EXPORT_SYMBOL(pcmcia_parse_events); struct class pcmcia_socket_class = { .name = "pcmcia_socket", + .hotplug = pcmcia_socket_hotplug, .release = pcmcia_release_socket, }; EXPORT_SYMBOL(pcmcia_socket_class); _