[PATCH 0/8] Extend Qualcomm reference device EC driver with fan LUT, profile and SoC Tj support

From: Anvesh Jain P

Date: Tue Jul 28 2026 - 14:21:52 EST


This series extends the EC driver for Qualcomm reference devices
introduced in the earlier series to support auto-scaling of fan speed
based on the average SoC junction temperature. The commands added in
this series exist to facilitate that: querying fan RPM and programming
the fan speed LUT, switching between fan profiles, and periodically
reporting the SoC junction temperature to the EC.

Fan profile switching is driven by a power supply notifier that
selects best performance on AC and better battery on battery. The
fan LUT is programmed on probe and on each profile switch using
board-specific configurations for hamoa (16 entries) and glymur
(8 entries).

SoC Tj temperature reporting averages readings across the
thermal-sensors listed for the EC node and sends the result to the
EC every 125ms, paused during suspend. Glymur does not send this
temperature to the EC, since the EC on glymur is capable of obtaining
it itself.

EC command reads and writes are retried a bounded number of times
on NACK, since the EC NACKs the bus instead of clock-stretching
while busy.

---
Anvesh Jain P (8):
dt-bindings: embedded-controller: qcom,hamoa-crd-ec: Add qcom,tsens
platform: arm64: qcom-hamoa-ec: Add SoC junction temperature reporting
platform: arm64: qcom-hamoa-ec: Switch fan profile based on power supply state
platform: arm64: qcom-hamoa-ec: Add fan RPM query and LUT calibration
platform: arm64: qcom-hamoa-ec: Verify required I2C adapter functionality
platform: arm64: qcom-hamoa-ec: Retry I2C transfers on NACK
arm64: dts: qcom: x1p42100-crd: Add qcom,tsens for EC fan thermal management
arm64: dts: qcom: x1e80100-crd: Add qcom,tsens for EC fan thermal management

.../embedded-controller/qcom,hamoa-crd-ec.yaml | 31 +
arch/arm64/boot/dts/qcom/x1e80100-crd.dts | 6 +
arch/arm64/boot/dts/qcom/x1p42100-crd.dts | 6 +
drivers/platform/arm64/qcom-hamoa-ec.c | 1014 +++++++++++++++++++-
4 files changed, 1020 insertions(+), 37 deletions(-)
---
base-commit: 8e9685d3c41c35dd1b37df70d854137abcb2fbac
change-id: 20260507-ec_add_more_commands-9a6513363375
prerequisite-message-id: <20260703-ec_support_for_purwa_evk-v2-0-c59aac5c6aac@xxxxxxxxxxxxxxxx>
prerequisite-patch-id: f5031e367e940109367f5fff1a679ea5ee453a8b
prerequisite-patch-id: 890ce0b8b86b3027b3bca383c85e9861398e6dc5

Best regards,
--
Anvesh Jain P <anvesh.p@xxxxxxxxxxxxxxxx>