Hi, On Sat, 06 Dec 2025 12:10:15 -0800 Ian Eure <[email protected]> wrote:
> Hey there, I recently was given a broken T480, which I was able to > get working again, and put Guix on. I know that these fairly > recently got Libreboot support, and I’m interested in running that > on it. [...] > Does anyone know if LibreBooted for the T480/T480s has [OEM support > for setting battery charging thresholds]? Do you use tpacpi-bat / tp-smapi-module? In both cases "Only the original vendor firmware is supported.". For tp-smapi-module this is mentioned in the package description. For the tp-smapi-module kernel module, it calls the nonfree BIOS at runtime to configure the battery charging. "Only the original vendor firmware is supported." needs to be added to the package description. And while Coreboot reuses a lot of nonfree code for supporting this computer (Intel FSP), the code that tp-smapi depends on is probably separate from all that and probably from Lenovo. That code runs inside SMM (system management mode, a CPU mode more powerful than the kernel mode). Since ultimately, this code is talking to the embedded controller, and that it is relatively easy to talk to that somewhat directly with free software, including under GNU/Linux with simple shell utilities, what remains to be done is to understand what commands the nonfree SMM code sends to the embedded controller. To do that, it might be possible to sniff the bus the embedded controller is connected to on the mainboard, or to somehow try to capture the commands sent to the embedded controller in some other ways (run the code in QEMU, and relay the commands to the hardware somehow, while sniffing them in software, similar to what SerialICe does). Once this is done, the same commands can easily be implemented in shell scripts. And maybe some people may want to pick that work up, to add that in Linux to enable any program (power management utilities, Gnome, KDE, etc) to use that feature. Denis.
pgpsA3iQfSGMA.pgp
Description: OpenPGP digital signature
