• Mike Waychison's avatar
    firmware: Basic dmi-sysfs support · 948af1f0
    Mike Waychison authored
    Introduce a new module "dmi-sysfs" that exports the broken out entries
    of the DMI table through sysfs.
    
    Entries are enumerated via dmi_walk() on module load, and are populated
    as kobjects rooted at /sys/firmware/dmi/entries.
    
    Entries are named "<type>-<instance>", where:
       <type>	: is the type of the entry, and
       <instance>	: is the ordinal count within the DMI table of that
    		  entry type.  This instance is used in lieu the DMI
    		  entry's handle as no assurances are made by the kernel
    		  that handles are unique.
    
    All entries export the following attributes:
       length	: The length of the formatted portion of the entry
       handle	: The handle given to this entry by the firmware
       raw		: The raw bytes of the entire entry, including the
    		  formatted portion, the unformatted (strings) portion,
    		  and the two terminating nul characters.
       type		: The DMI entry type
       instance	: The ordinal instance of this entry given its type.
       position	: The position ordinal of the entry within the table in
    		  its entirety.
    
    Entries in dmi-sysfs are kobject backed members called "struct
    dmi_sysfs_entry" and belong to dmi_kset.  They are threaded through
    entry_list (protected by entry_list_lock) so that we can find them at
    cleanup time.
    Signed-off-by: default avatarMike Waychison <mikew@google.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    948af1f0
dmi-sysfs.c 9.51 KB