• Dominik Brodowski's avatar
    [PCMCIA] "driver services" socket add/remove abstraction · 1118d921
    Dominik Brodowski authored
    Previously, "Driver Services" could only be called when the socket
    drivers were initialized earlier. This caused an awful lot of
    problems, especially when modprobe tried to load ds.ko and a pcmcia
    card driver at once.
    
    As all socket devices are registered with the driver model core as
    being of "class_type pcmcia_socket_class", we can take use of that and
    register them with "Driver Services" upon detection or upon
    module loading of ds.c.
    
    Also, the "I-need-two-initcalls-in-a-module"-tweak can go away.
    
    Unfortunately, this patch reportedly breaks some RedHat pcmcia init
    scritps - they relied on the failed loading of ds.c to detect that no
    socket driver was loaded previously. To properly detect this, you
    should take a look at the /sys/class/pcmcia_socket/devices directory.
    1118d921
ds.c 29.4 KB