• Vladimir Lebedev's avatar
    ACPI: Cache battery status instead of re-evaluating AML · b6ce4083
    Vladimir Lebedev authored
    /proc exports _BST in a single file, and _BST is re-evaulated
    whenever that file is read.
    
    Sometimes user-space reads this file frequently, and on some
    systems _BST takes a long time to evaluate due to a slow EC.
    
    Further, when we move to sysfs, the values returned from _BST
    will be in multiple files, and evaluating _BST for each
    file read would make matters worse.
    
    Here code is added to support caching the results of _BST.
    A new module parameter "update_time" tells how many seconds the
    cached _BST should be used before it is re-evaluated.
    Currently, update_time defaults to 0, and so the
    existing behaviour of re-evaluating on each read retained.
    Signed-off-by: default avatarVladimir Lebedev <vladimir.p.lebedev@intel.com>
    Signed-off-by: default avatarLen Brown <len.brown@intel.com>
    b6ce4083
battery.c 26.4 KB