[PATCH v2 0/4] thermal/drivers/airoha: Fix AN7583 mux mapping and expose all sensors
From: Vitaliy Sochnev
Date: Tue Sep 15 2026 - 14:20:53 EST
The AN7583 support merged for 7.3-rc1 reads the wrong mux positions: the
mux field names are swapped, and v5 of the series swapped the call
arguments to match them. Patch 1 fixes the field definitions.
Patch 2 serialises mux selection and ADC sampling.
Patches 3 and 4 add one thermal sensor cell for AN7583 and a zone per
sensor.
Tested on a Nokia XG-040G-MF (AN7583) with this driver on a 6.18 kernel
in OpenWrt. Without the series the board powers off 2.6 s into boot.
With it the three zones match direct ADC reads, and concurrent readers
during CPU frequency changes gave no failed read and no shutdown. EN7581
was tested with equivalent changes on a Nokia XG-040G-MD. Build-tested
on arm64 with W=1; the binding passes dt_binding_check.
The EN7581 IRQ ordering reported by sashiko-bot on v1 4/4 predates this
series and is not changed here.
Changes in v2:
- dt-bindings: const: 1 instead of enum: [0, 1]
- Drop the note on device trees without cells from patch 4
- Rebased on thermal/linux-next
v1: https://lore.kernel.org/all/20260913145226.34643-1-sochnev.v.74@xxxxxxxxx/
Vitaliy Sochnev (4):
thermal/drivers/airoha: Fix AN7583 ADC mux field mapping
thermal/drivers/airoha: Serialise access to the shared ADC
dt-bindings: arm: airoha: Use one thermal sensor cell for AN7583
thermal/drivers/airoha: Register a thermal zone per AN7583 sensor
.../bindings/arm/airoha,en7581-chip-scu.yaml | 3 +-
drivers/thermal/airoha_thermal.c | 159 ++++++++++++++----
2 files changed, 126 insertions(+), 36 deletions(-)
base-commit: b115930d716defc3a7daa2bc2ae2465d864b7114
--
2.55.0