From: Guenter Roeck <linux@roeck-us.net>
To: Troy Mitchell <troy.mitchell@linux.dev>
Cc: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Paul Walmsley <pjw@kernel.org>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Alexandre Ghiti <alex@ghiti.fr>, Yixun Lan <dlan@kernel.org>,
Jonathan Corbet <corbet@lwn.net>,
Shuah Khan <skhan@linuxfoundation.org>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-hwmon@vger.kernel.org, linux-riscv@lists.infradead.org,
spacemit@lists.linux.dev, linux-doc@vger.kernel.org,
Jean Delvare <jdelvare@suse.de>
Subject: Re: [PATCH v3 4/6] hwmon: (lm63) Add Sensylink CTF2301 support
Date: Thu, 6 Aug 2026 12:30:59 -0700 [thread overview]
Message-ID: <977654fc-d5e1-4d23-8ab3-286acd2dc372@roeck-us.net> (raw)
In-Reply-To: <20260805-ctl2301-v3-4-b86c75d1c552@linux.dev>
On Wed, Aug 05, 2026 at 02:00:54AM -0700, Troy Mitchell wrote:
> Add Sensylink CTF2301 support to the LM63 driver. CTF2301 follows
> the LM63-style temperature, tachometer, and PWM register layout,
> while using a 12-bit local temperature register and requiring the
> ALERT/TACH pin to be configured for tachometer input.
>
> Register an optional thermal cooling device when the device tree
> node provides #cooling-cells, allowing thermal zones to control
> the fan through the existing PWM path without changing behavior
> for existing LM63-family users.
>
> Signed-off-by: Troy Mitchell <troy.mitchell@linux.dev>
> ---
> Documentation/hwmon/lm63.rst | 22 +++
> drivers/hwmon/Kconfig | 8 +-
> drivers/hwmon/lm63.c | 414 +++++++++++++++++++++++++++++++++++--------
> 3 files changed, 366 insertions(+), 78 deletions(-)
>
> diff --git a/Documentation/hwmon/lm63.rst b/Documentation/hwmon/lm63.rst
> index 9e27367d7405..c40bd0dfe591 100644
> --- a/Documentation/hwmon/lm63.rst
> +++ b/Documentation/hwmon/lm63.rst
> @@ -33,6 +33,16 @@ Supported chips:
>
> http://www.national.com/pf/LM/LM96163.html
>
> + * Sensylink CTF2301
> +
> + Prefix: 'ctf2301'
> +
> + Addresses scanned: none
> +
> + Datasheet: https://www.sensylink.com/upload/1/net.sensylink.portal/1689557281035.pdf
> +
> + Register description: https://github.com/TroyMitchell911/ctf2301-datasheet
> +
>
> Author: Jean Delvare <jdelvare@suse.de>
>
> @@ -62,6 +72,8 @@ value have to be masked out. The value is still 16 bit in width.
>
> All temperature values are given in degrees Celsius. Resolution is 1.0
> degree for the local temperature, 0.125 degree for the remote temperature.
> +The CTF2301 local temperature input and limit have a resolution of 0.0625
> +degree.
>
> The fan speed is measured using a tachometer. Contrary to most chips which
> store the value in an 8-bit register and have a selectable clock divider
> @@ -93,3 +105,13 @@ support these GPIO lines at present.
> The LM96163 is an enhanced version of LM63 with improved temperature accuracy
> and better PWM resolution. For LM96163, the external temperature sensor type is
> configurable as CPU embedded diode(1) or 3904 transistor(2).
> +
> +The CTF2301 is register-compatible with the LM63 family and provides 12 fan
> +control lookup table entries. It supports 8-bit PWM resolution when configured
> +for a 22.5 kHz PWM frequency.
> +
> +Device tree nodes may declare ``#cooling-cells`` to register the fan controller
> +with the thermal framework. The cooling state is mapped to the existing
> +``pwm1`` range from 0 to 255. The driver keeps the current automatic or manual
> +fan control mode during probe and switches to manual control when the thermal
> +framework first requests a cooling state.
> diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig
> index 2bfbcc033d59..abb1af8664fb 100644
> --- a/drivers/hwmon/Kconfig
> +++ b/drivers/hwmon/Kconfig
> @@ -1501,10 +1501,10 @@ config SENSORS_LM63
> depends on I2C
This seems to be missing the THERMAL dependency as suggested by Sashiko.
...
> -enum chips { lm63, lm64, lm96163 };
> +enum chips { lm63, lm64, lm96163, ctf2301 };
Alphabetic order, please.
> + if (data->kind == ctf2301) {
> + msb = i2c_smbus_read_byte_data(client,
> + LM63_REG_LOCAL_TEMP);
> + lsb = i2c_smbus_read_byte_data(client,
> + CTF2301_REG_LOCAL_TEMP_LSB);
> + if (msb >= 0 && lsb >= 0) {
> + data->temp8[0] = msb;
Why keep the assignments to data->temp8[0] and data->temp8[1] ?
Thanks,
Guenter
next prev parent reply other threads:[~2026-08-06 19:31 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-05 8:52 [PATCH v3 0/6] hwmon: (lm63) Add Sensylink CTF2301 support Troy Mitchell
2026-08-05 9:00 ` [PATCH v3 1/6] dt-bindings: vendor-prefixes: Add Sensylink Troy Mitchell
2026-08-05 9:27 ` sashiko-bot
2026-08-06 8:00 ` Krzysztof Kozlowski
2026-08-05 9:00 ` [PATCH v3 2/6] dt-bindings: hwmon: Move LM63 family to a dedicated binding Troy Mitchell
2026-08-05 9:35 ` sashiko-bot
2026-08-06 8:02 ` Krzysztof Kozlowski
2026-08-05 9:00 ` [PATCH v3 3/6] dt-bindings: hwmon: Add Sensylink CTF2301 Troy Mitchell
2026-08-05 9:30 ` sashiko-bot
2026-08-06 8:02 ` Krzysztof Kozlowski
2026-08-05 9:00 ` [PATCH v3 4/6] hwmon: (lm63) Add Sensylink CTF2301 support Troy Mitchell
2026-08-05 9:40 ` sashiko-bot
2026-08-06 19:30 ` Guenter Roeck [this message]
2026-08-05 9:00 ` [PATCH v3 5/6] riscv: dts: spacemit: Add K3 I2C6 pinctrl state Troy Mitchell
2026-08-05 9:32 ` sashiko-bot
2026-08-05 9:00 ` [PATCH v3 6/6] riscv: dts: spacemit: Add CTF2301 on K3 CoM260 Troy Mitchell
2026-08-05 9:30 ` sashiko-bot
2026-08-05 13:41 ` Yixun Lan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=977654fc-d5e1-4d23-8ab3-286acd2dc372@roeck-us.net \
--to=linux@roeck-us.net \
--cc=alex@ghiti.fr \
--cc=aou@eecs.berkeley.edu \
--cc=conor+dt@kernel.org \
--cc=corbet@lwn.net \
--cc=devicetree@vger.kernel.org \
--cc=dlan@kernel.org \
--cc=jdelvare@suse.de \
--cc=krzk+dt@kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-hwmon@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=palmer@dabbelt.com \
--cc=pjw@kernel.org \
--cc=robh@kernel.org \
--cc=skhan@linuxfoundation.org \
--cc=spacemit@lists.linux.dev \
--cc=troy.mitchell@linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox