• K
    driver-core: implement 'sysdev' functionality for regular devices and buses · ca22e56d
    Kay Sievers 提交于
    All sysdev classes and sysdev devices will converted to regular devices
    and buses to properly hook userspace into the event processing.
    
    There is no interesting difference between a 'sysdev' and 'device' which
    would justify to roll an entire own subsystem with different userspace
    export semantics. Userspace relies on events and generic sysfs subsystem
    infrastructure from sysdev devices, which are currently not properly
    available.
    
    Every converted sysdev class will create a regular device with the class
    name in /sys/devices/system and all registered devices will becom a children
    of theses devices.
    
    For compatibility reasons, the sysdev class-wide attributes are created
    at this parent device. (Do not copy that logic for anything new, subsystem-
    wide properties belong to the subsystem, not to some fake parent device
    created in /sys/devices.)
    
    Every sysdev driver is implemented as a simple subsystem interface now,
    and no longer called a driver.
    
    After all sysdev classes are ported to regular driver core entities, the
    sysdev implementation will be entirely removed from the kernel.
    Signed-off-by: NKay Sievers <kay.sievers@vrfy.org>
    Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
    ca22e56d
sys.c 9.7 KB