update_turbo_limits(9)
π update_turbo_limits(9) β like, the Kernel API Manual entry, bestie π
okay so you found the update_turbo_limits(9) page in the Kernel API Manual and you're like "what is this" β don't worry, I got you. this one's short but it's so important, so let's get into it π«Ά
β¨ NAME β¨
update_turbo_limits β literally the function that gets various limits & settings from regs. that's it, that's the whole vibe. π
π¦ SYNOPSIS π¦
void update_turbo_limits (struct ips_driver *ips );
no return value, no cap β it's a void, she does her work and leaves. β
π ARGUMENTS π
ipsβ the IPS driver struct. that's the whole argument list, one (1) struct, she's low maintenance. π
πΈ DESCRIPTION πΈ
so here's the tea π β this function updates the IPS power & temp limits, along with the turbo enable flags, based on the latest register contents. like, it reads the regs and goes "okay bestie, here's where we're at now" and refreshes everything accordingly. β¨
it's used at init time, and also for runtime BIOS support β and that part is the key detail: runtime BIOS support requires polling the regs for updates. for example, as a result of an AC->DC transition. yes, literally when you unplug your laptop, this is part of the chain of events that cares about it. πβ‘οΈπ
LOCKING: the caller must hold turbo_status_lock β but outside of init. so at init you're fine, at runtime you need that lock, no exceptions, periodt. π
π₯ SEE ALSO π₯
- the kernel file:
./drivers/platform/x86/intel_ips.c ips_cpu_busy(9)ips_cpu_raise(9)ips_cpu_lower(9)do_enable_cpu_turbo(9)ips_enable_cpu_turbo(9)do_disable_cpu_turbo(9)ips_disable_cpu_turbo(9)ips_gpu_busy(9)ips_gpu_raise(9)ips_gpu_lower(9)ips_enable_gpu_turbo(9)ips_disable_gpu_turbo(9)mcp_exceeded(9)cpu_exceeded(9)mch_exceeded(9)verify_limits(9)ips_adjust(9)ips_monitor(9)ips_irq_handler(9)ips_detect_cpu(9)ips_get_i915_syms(9)
like damn, that's a whole friend group π but fr fr, go read them, iykyk. π
that's the whole page, bestie β go forth and turbo responsibly π β¨
cute lil sign-off: this one lives over in ./drivers/platform/x86, dated October 2026. mwah, bye! ππ¦πΈ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms