[metadata] version = "1.2.0" updated = "2026-02-26" description = "Hardware and Conflict Database for ember-tune Thermal Engine" # service collision [[conflicts]] id = "tlp_vs_ppd" services = ["tlp.service", "power-profiles-daemon.service"] contention = "ACPI Platform Profile / EPP" severity = "Critical" fix_action = "MaskBoth" help_text = "TLP and Power-Profiles-Daemon fight over power envelopes. Mask both to allow ember-tune deterministic control." [[conflicts]] id = "thermal_logic_collision" services = ["thermald.service", "throttled.service"] contention = "RAPL / MSR / BD-PROCHOT" severity = "High" fix_action = "SuspendService" help_text = "Thermald and Throttled create a 'register ping-pong' loop. Disable throttled; ember-tune will manage RAPL limits." [[conflicts]] id = "freq_scaling_collision" services = ["auto-cpufreq.service"] contention = "CPU Scaling Governor" severity = "Medium" fix_action = "SuspendService" help_text = "Auto-cpufreq interferes with deterministic Silicon Knee identification." [[conflicts]] id = "dell_fan_collision" services = ["i8kmon.service"] contention = "Dell SMM Fan Control" severity = "High" fix_action = "SuspendService" help_text = "i8kmon fights with ember-tune for SMM fan duty cycles. Suspend during benchmark." # manufacturer wide logic [ecosystems.dell] vendor_regex = "(Dell.*|Precision.*|Latitude.*|XPS.*)" polling_cap_ms = 1000 drivers = ["dell_smm_hwmon"] fan_manual_mode_cmd = "dell-bios-fan-control 0" fan_auto_mode_cmd = "dell-bios-fan-control 1" safety_register = "0x1FC" # BD PROCHOT MSR help_text = "Dell systems often require 'SMM Security Mitigation' disabled in BIOS for fan control." [ecosystems.lenovo] vendor_regex = "LENOVO" lap_mode_path = "/sys/devices/platform/thinkpad_acpi/dytc_lapmode" profiles_path = "/sys/firmware/acpi/platform_profile" ec_write_required = false # Varies by model [ecosystems.asus] vendor_regex = "ASUSTeK.*" thermal_policy_path = "/sys/devices/platform/asus-nb-wmi/throttle_thermal_policy" policy_map = { Balanced = 0, Turbo = 1, Silent = 2 } [ecosystems.hp] vendor_regex = "HP" msr_lock_register = "0x610" msr_lock_bit = 63 fan_boost_path = "/sys/devices/platform/hp-wmi/hwmon/hwmon*/pwm1_enable" [ecosystems.framework] vendor_regex = "Framework" ec_tool = "ectool" optimization = "Direct-FFI-SMC" polling_cap_ms = 500 [ecosystems.surface] vendor_regex = "Microsoft Corporation" product_regex = "Surface.*" drivers = ["surface_acpi"] profiles_path = "/sys/bus/platform/devices/surface_performance/platform_profile" # quirks: model quirks and fixes [[quirks]] model_regex = "XPS 13 93.*" id = "dell_bd_prochot_fix" issue = "False Positive 400MHz Lock" monitor_msr = "0x1FC" reset_bit = 0 action = "ClearBitOnSafeTemp" [[quirks]] model_regex = "ThinkPad T14.*" id = "lenovo_lap_throttling" issue = "11W TDP Lock in Lap Mode" trigger_path = "/sys/devices/platform/thinkpad_acpi/dytc_lapmode" trigger_value = "1" action = "AbortOnLapMode" [[quirks]] model_regex = "ROG Zephyrus G14" id = "asus_fan_hex_support" issue = "Custom Hex Curve Interface" target_path = "/sys/devices/platform/asus-nb-wmi/fan_curve" format = "HexPair16" action = "ManualFanControlRequired" [[quirks]] model_regex = "Spectre x360" id = "hp_rapl_lockout" issue = "Hardware MSR Lockout" action = "WarnUserMSRLocked" [[quirks]] model_regex = "Framework.*" id = "framework_prochot_stuck" issue = "BD PROCHOT wedged at 200MHz" monitor_msr = "0x1FC" reset_bit = 0 action = "ClearBitOnSafeTemp" # heuristic discovery [discovery.sensors] temp_labels = ["Package id 0", "Tdie", "Tctl", "CPU Temperature", "Core 0", "Composite"] fan_labels = ["CPU Fan", "GPU Fan", "System Fan", "Processor Fan"] hwmon_priority = ["coretemp", "zenpower", "k10temp", "dell_smm", "thinkpad", "asus"] [discovery.actuators] rapl_paths = ["intel-rapl:0", "package-0", "intel-rapl:1"] amd_energy_paths = ["zenpower/energy1_input", "k10temp/energy1_input"] governor_files = ["energy_performance_preference", "energy_performance_hint", "scaling_governor"] [discovery.configs] throttled = ["/etc/throttled.conf", "/usr/local/etc/throttled.conf", "/etc/lenovo_fix.conf"] i8kmon = ["/etc/i8kmon.conf", "/etc/default/i8kmon"] tlp = ["/etc/tlp.conf", "/etc/default/tlp"] [discovery.tools] dell_fan_ctrl = "dell-bios-fan-control" ectool = "ectool" ryzenadj = "ryzenadj" # env health verification [benchmarking] idle_duration_s = 10 stress_duration_min_s = 15 stress_duration_max_s = 45 cool_down_s = 5 power_steps_watts = [15.0, 20.0, 25.0, 30.0, 35.0] [[preflight_checks]] name = "MSR Write Access" check_cmd = "grep -q 'msr.allow_writes=on' /proc/cmdline" fail_help = "Add 'msr.allow_writes=on' to kernel parameters to allow power limit manipulation." [[preflight_checks]] name = "Kernel Lockdown Status" check_cmd = "cat /sys/kernel/security/lockdown | grep -q '\\[none\\]' || ! [ -f /sys/kernel/security/lockdown ]" fail_help = "Kernel Lockdown is enabled. MMIO/MSR actuators are restricted by the Linux Security Module." [[preflight_checks]] name = "Intel P-State Check" check_cmd = "[ -d /sys/devices/system/cpu/intel_pstate ] || [ -d /sys/devices/system/cpu/cpufreq/policy0 ]" fail_help = "CPU Frequency scaling driver not detected. Ensure intel_pstate or acpi-cpufreq is loaded."