• Eric Miao's avatar
    platform: introduce module id table for platform devices · 57fee4a5
    Eric Miao authored
    Now platform_device is being widely used on SoC processors where the
    peripherals are attached to the system bus, which is simple enough.
    
    However, silicon IPs for these SoCs are usually shared heavily across
    a family of processors, even products from different companies.  This
    makes the original simple driver name based matching insufficient, or
    simply not straight-forward.
    
    Introduce a module id table for platform devices, and makes it clear
    that a platform driver is able to support some shared IP and handle
    slight differences across different platforms (by 'driver_data').
    Module alias is handled automatically when a MODULE_DEVICE_TABLE()
    is defined.
    
    To not disturb the current platform drivers too much, the matched id
    entry is recorded and can be retrieved by platform_get_device_id().
    Signed-off-by: default avatarEric Miao <eric.miao@marvell.com>
    Cc: Kay Sievers <kay.sievers@vrfy.org>
    Cc: Ben Dooks <ben-linux@fluff.org>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    57fee4a5
platform.c 23.5 KB