aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHarry Schmalzb <freebsd@omnilan.de>2026-07-13 05:29:34 +0000
committerShengYi Hung <aokblast@FreeBSD.org>2026-07-19 13:36:00 +0000
commitbdc0f7678257eaa739b9c816285504470e71e3de (patch)
tree5b06d9bc07cfca8f1a3a5969e3a925dcb19b134d
parent02f174179a538f89185d275b4e64277baf3acc50 (diff)
-rw-r--r--sys/x86/cpufreq/hwpstate_intel.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/x86/cpufreq/hwpstate_intel.c b/sys/x86/cpufreq/hwpstate_intel.c
index 59d7a155fda8..56a33fa88e66 100644
--- a/sys/x86/cpufreq/hwpstate_intel.c
+++ b/sys/x86/cpufreq/hwpstate_intel.c
@@ -352,13 +352,19 @@ intel_hwpstate_hybrid_cb(void *ctx)
{
uint32_t *small_cores = ctx;
+#ifdef __i386__
+ (void)small_cores;
+#else
atomic_add_32(small_cores, PCPU_GET(small_core));
+#endif
}
void
intel_hwpstate_identify(driver_t *driver, device_t parent)
{
+#ifndef __i386__
uint32_t small_cores = 0;
+#endif
if (device_find_child(parent, "hwpstate_intel", DEVICE_UNIT_ANY) != NULL)
return;
@@ -379,6 +385,7 @@ intel_hwpstate_identify(driver_t *driver, device_t parent)
if ((cpu_power_eax & CPUTPM1_HWP) == 0)
return;
+#ifndef __i386__
/*
* On hybrid-core systems, package-level control cannot be used.
* It may cause all cores to run at the E-core frequency because
@@ -389,6 +396,7 @@ intel_hwpstate_identify(driver_t *driver, device_t parent)
intel_hwpstate_hybrid_cb, smp_no_rendezvous_barrier, &small_cores);
if (small_cores > 0 && small_cores < mp_ncores)
hwpstate_pkg_ctrl_enable = false;
+#endif
if (BUS_ADD_CHILD(parent, 10, "hwpstate_intel", device_get_unit(parent))
== NULL)