[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250613-b4-amc6821-cooling-device-support-v4-0-a8fc063c55de@toradex.com>
Date: Fri, 13 Jun 2025 10:42:37 -0300
From: João Paulo Gonçalves <jpaulo.silvagoncalves@...il.com>
To: Jean Delvare <jdelvare@...e.com>, Guenter Roeck <linux@...ck-us.net>,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Farouk Bouabid <farouk.bouabid@...rry.de>,
Quentin Schulz <quentin.schulz@...rry.de>
Cc: linux-hwmon@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org,
João Paulo Gonçalves <joao.goncalves@...adex.com>
Subject: [PATCH v4 0/3] hwmon: (amc6821) Add cooling device support
Add support for using the AMC6821 as a cooling device. The AMC6821
registers with the thermal framework only if the `cooling-levels`
property is present in the fan device tree child node. If this property
is present, the driver assumes the fan will operate in open-loop, and
the kernel will control it directly. In this case, the driver will
change the AMC6821 mode to manual (software DCY) and set the initial PWM
duty cycle to the maximum fan cooling state level as defined in the DT.
It is worth mentioning that the cooling device is registered on the
child fan node, not on the fan controller node. Existing behavior is
unchanged, so the AMC6821 can still be used without the thermal
framework (hwmon only).
Signed-off-by: João Paulo Gonçalves <joao.goncalves@...adex.com>
---
v4:
- Fix uninitialized variable `err` on probe()
v3: https://lore.kernel.org/r/20250612-b4-amc6821-cooling-device-support-v3-0-360681a7652c@toradex.com/
- Fix using fan node after of_node_put() with scope based free
- Add setting the pwm duty cycle to max fan cooling state level on
initialization
v2: https://lore.kernel.org/lkml/20250603-b4-amc6821-cooling-device-support-v2-0-74943c889a2d@toradex.com/
- Remove devm_action on release and call of_node_put() manually
- Change of_pwm_polarity to store resulting pwm polarity on driver
private data
v1: https://lore.kernel.org/lkml/20250530-b4-v1-amc6821-cooling-device-support-b4-v1-0-7bb98496c969@toradex.com/
---
João Paulo Gonçalves (3):
dt-bindings: hwmon: amc6821: Add cooling levels
hwmon: (amc6821) Move reading fan data from OF to a function
hwmon: (amc6821) Add cooling device support
.../devicetree/bindings/hwmon/ti,amc6821.yaml | 6 +
drivers/hwmon/amc6821.c | 130 +++++++++++++++++++--
2 files changed, 127 insertions(+), 9 deletions(-)
---
base-commit: 78ca360f14d17f2c4dd4f3a1c9381b1c3451f4c8
change-id: 20250602-b4-amc6821-cooling-device-support-c03b0a899357
Best regards,
--
João Paulo Gonçalves <joao.goncalves@...adex.com>
Powered by blists - more mailing lists