I wonder if this can help with the extremely irritating bug (intentional?) on the X270 where if you give it a third party 9-cell battery, it will raise CPU_PROCHOT all the damn time, and my processor would drop to below 1Ghz clock speeds.<p>Back when I used to have an X270 I had a shell script that ran on boot which poked a register to disable thermal throttling handling. Not at all ideal, but it made the machine usable in the absence of official Lenovo batteries which they stopped manufacturing pretty damn quickly.
You can use ThrottleStop[1] to disable PROCHOT on non-standard battery. I encountered similar issue with throttling on my Dell Precision laptop when I was charging it via 60 W USB-C charger instead of proprietary barrel-type 130 W plug. The system triggered a warning about low power charger and initiated aggressive cpu frequency scaling. By using ThrottleStop, I was able to use type-c 60W charger on lightweight tasks (such as web browsing, older games) just fine.<p>[1]: <a href="https://www.techpowerup.com/download/techpowerup-throttlestop/" rel="nofollow">https://www.techpowerup.com/download/techpowerup-throttlesto...</a>
<i>>You can use ThrottleStop[1] to disable PROCHOT </i><p>Dell disables that tinkering on some models of XPS in BIOS/EC so ThrottleStop won't to jack.
Dell likes to pull this stunt on other devices too. Like their 1L desktops in the OptiPlex line that I managed for many years. Even though we were using genuine Dell power adapters, if they became slightly unplugged but remained powered, they would enable PROCHOT.<p>This was fine until the machines randomly started setting PROCHOT on genuine power adapters that were fully plugged in. Eventually I just deployed a configuration with PDQ to all the machines that ran ThrottleStop in the background with a configuration that disabled PROCHOT on login.<p>Unfortunately, I couldn't get it to consistently disable PROCHOT pre-login, so students and teachers in my labs would consistently wait 3-4 minutes while the machines chugged along at 700 MHz as they prepared their accounts.
On my non Thinkpad lenovo yoga (Whiskey Lake) disabling bd_prochot leads to crash.
I was the happy owner of ThinkPad X1 Extreme g1. It had that bug out of the box, new original battery. Once it thermal throttles, it never goes back to full GHz. It throttled pretty soon, cause big CPU small chassis. Yes, I had a script like that.<p>It is still somewhere on a shelf, so maybe its day will come again.
Nice to finally know what was happening to my x270 after so many years. Well good thing it doesn't happen when connected to power nowadays is my home server
Yeah, I wrote a similar script. Run it once I see the clock going to 400, but wait for eternity for the sudo prompt emerge before running it.
I wonder now if a similar problem is present in the A285 which is a cousin of the x270
Oh almost certainly. PROCHOT is programmable.
Possibly. Usually this is handled by the embedded controller, and not sure if that was reversed or not. You may be able to tristate the GPIO line that tells the CPU that a pin means PROCHOT, which would allow you to ignore the ECs attempts to do this.
Thinkpads do same thing when detecting 65W supply instead of 90W despite you only need 90W if running full tilt while charging.
Do you think it could also be due to an ACPI table?
Not sure if battery issue is fully related but...<p>As a former owner of a T470, Lenovo included a pretty beefy component from intel that was supposed to be feature complete by itself for dynamically managing thermals, including funky ideas like detecting if you were potentially using the laptop on your legs etc. and reducing thermals then, but giving full power when running plugged on the desk.<p>Time comes for delivery, Lenovo finds out that intel did a half-assed job (not the first time, compare Rapid Start "hibernation" driver earlier) and the result is kabylake T470 (and X270 which share most of the design) having broken thermals when running anything other than windows without special intel driver, thus leading to funny tools that run in a loop picking at an MSR in the CPU in a constant whack-a-mole with piece of code deep in firmware.
Its possible. I know from the BIOS revision changelogs that the T470 did get a patch to fix this, but the X270 never did.