• spiiroin's avatar
    Implement configurable generic thermal backend · 8536793b
    spiiroin authored
    Previously thermal policy was driven by choosing which plugins dsme should
    use. As the plugins are platform dependant this makes it impossible to use
    the same dsme build in multiple platforms. In practice this has meant
    that lately the thermal policy has been working only in Jolla phone.
    Implement generic thermal sensor plugin that is fully configuration data
    driven and can be used to monitor any number of thermal sensors that show
    up as text files on for example /sys or /proc filesystems.
    The configuration file format is documented at:
    Move legacy dbus queries from platform specific plugins to thermal manager.
    If suitable thermal objects have been registered, the temperatures can be
    queried just like before. Also use dbus constants defined in libdsme
    instead of hardcoding method and state names.
    Thermal manager now uses polling periods defined in configuration file for
    the generic thermal object, but also implements thermal status specific
    fallback strategy.
    A graphviz diagram is provided to clarify control flow between the thermal
    manager and sensor plugins.
    Thermal objects can now be safely unregistered when/if needed. This has
    not been a big issue while unregistering has happened only during dsme
    exit, but fixing it allows development of features like configuration
    reload without restarting dsme.
    Drop Jolla phone hw temperature plugins. The functionality can be
    implemented via platform specific configuration files.
    Drop N9 surface temperature object and battery temperature plugins.
    The battery temperature is used only for estimating the device surface
    temperature and compiling it requires build-dependency to libbmeipc.
    If/when this is needed battery temperature plugin should be build
    separately from N9 specific adaptation repository after which the
    surface temperature object can be implemeted as configuration entry.
    Drop N9 memory temperature object and omap temperature plugins. Since
    memory temperature can be read from sysfs file, it can be implemented
    as configuration entry if/when needed.
    While the thermalobject.c is a new source file, it contains code/logic
    copied from the old implementation. For this reason also the relevant
    author and copyright information has been copied over from older sources.
    [dsme] Implement configurable generic thermal backend. Fixes JB#25904
Last commit
Last update
thermal_sensor_config_files.txt Loading commit data...