Re: [PATCH v1] platform: arm64: drop the vacuous THERMAL dependency from EC_ASUS_GLYMUR

From: Konrad Dybcio

Date: Thu Oct 29 2026 - 04:08:37 EST


On 10/29/26 3:12 AM, Haiyue Wang wrote:
> 'depends on THERMAL || THERMAL=n' is always true and is semantically a
> no-op, but it couples NEW_LEDS, which is selected here, to THERMAL and
> closes a Kconfig dependency loop. The C tools stay silent because they
> fold the always-true expression to 'y' before running dependency loop
> detection; kconfiglib, used by the Yocto kernel config audit, does not
> fold and rejects the config at parse time.
>
> The loop is easy to expose with the in-tree tools, using the technique
> from commit b33a654a5bd6 ("drm/tiny: Kconfig: Remove always-y THERMAL
> dep. from TINYDRM_REPAPER"),
> https://git.kernel.org/linus/b33a654a5bd6: temporarily make THERMAL
> tristate so the folding stops, then any config target reports it:
>
> $ sed -i 's/bool "Thermal drivers"/tristate "Thermal drivers"/' \
> drivers/thermal/Kconfig
> $ make allnoconfig
> error: recursive dependency detected!
> symbol POWER_SUPPLY is selected by HID_ASUS
> symbol HID_ASUS depends on LEDS_CLASS
> symbol LEDS_CLASS depends on NEW_LEDS
> symbol NEW_LEDS is selected by EC_ASUS_GLYMUR
> symbol EC_ASUS_GLYMUR depends on THERMAL
> symbol THERMAL is selected by AB8500_BM
> symbol AB8500_BM depends on POWER_SUPPLY
>
> Drop the vacuous line to break the loop; the driver still builds both
> with and without THERMAL.
>
> Fixes: db3a9dddab5f ("platform: arm64: Add a driver for the EC found on ASUS Glymur machines")
> Signed-off-by: Haiyue Wang <haiyuewa@xxxxxxx>
> Assisted-by: LLM
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxxxxxxxx>

Konrad