Re: [PATCH v2] platform/x86: int3472: Use actual clock frequency for DSM method

From: Sergey Lebedev

Date: Sun Oct 25 2026 - 12:26:44 EST


Hi Fernando, Hao,

On 25/10/2026 15:50, Fernando Rimoli wrote:
> I cannot tell from here whether the Alder Lake _DSM takes a different
> value for 24 MHz or only produces 19.2 MHz. If you know of a way to ask
> it, I can test it.

The Surface Pro 9 DSDT in linux-surface/acpidumps (surface_pro_9_intel,
a 2022 dump) suggests it takes 0. Its _DSM calls ICLK.CLKC with the
enable, which goes into bit 1, and then ICLK.CLKF with Arg3[2], which
does

CLKx = (CLKx & ~1) | Arg1

That is the Tiger Lake and Alder Lake layout in coreboot
(src/soc/intel/alderlake/acpi/camera_clock_ctl.asl), where bit 0 is
"0: 24MHz, 1: 19.2MHz". So 3 sets bit 0, which is 19.2 MHz, and bit 1,
the enable. On disable, CLKC clears bit 1 and CLKF sets it again, so
with v2 the clock would never be switched off either.

On the Surface Pro 11 (Lunar Lake), CLKF writes Arg1 & 3 to bits 1:0
and the enable is bit 2. That is the Meteor Lake layout, where 3 is
"24 IMG" and 0 and 2 are 19.2 MHz from other sources. It fits both
Hao's oscilloscope reading (0 and 2 do not change the clock) and 3
working on the Surface Pro 11.

Fernando, a run with 0 in place of 3 would tell, and your own DSDT
whether it still matches the dump. If it gives 59.14 fps at 396 MHz,
the value depends on the generation, and v3 would need to pick it per
platform.

Sergey