power: Replace LenovoWmiTdpLimiter with FirmwareAttributeTdpLimiter

It seems several devices use a firmware-attribute interface to do TDP limiting.
This turns LenovoWmiTdpLimiter into a generic interface that can be configured
to use an arbitrary firmware-attribute name and check for an arbitrary power
profile.
This commit is contained in:
Vicki Pfau 2025-05-13 17:39:13 -07:00
parent a67e911aa7
commit 4eeffda8ef
4 changed files with 223 additions and 24 deletions

View file

@ -1026,6 +1026,7 @@ mod test {
method: TdpLimitingMethod::GpuHwmon,
range: Some(RangeConfig::new(3, 15)),
download_mode_limit: NonZeroU32::new(6),
firmware_attribute: None,
}),
gpu_clocks: Some(RangeConfig::new(200, 1600)),
battery_charge_limit: Some(BatteryChargeLimitConfig {