Messages in this thread | ![/](/images/icornerl.gif) | | Date | Mon, 18 Mar 2024 16:54:52 +0700 | From | Chanh Nguyen <> | Subject | Re: [PATCH 3/3] dt-bindings: hwmon: max31790: Add pwmout-pin-as-tach-input property |
| |
On 12/03/2024 00:52, Guenter Roeck wrote: > On 3/11/24 10:34, Rob Herring wrote: >> On Mon, Mar 11, 2024 at 06:13:47PM +0700, Chanh Nguyen wrote: >>> Add pwmout-pin-as-tach-input property. >>> >>> Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com> >>> --- >>> Documentation/devicetree/bindings/hwmon/max31790.yaml | 11 +++++++++++ >>> 1 file changed, 11 insertions(+) >>> >>> diff --git a/Documentation/devicetree/bindings/hwmon/max31790.yaml >>> b/Documentation/devicetree/bindings/hwmon/max31790.yaml >>> index 5a93e6bdebda..447cac17053a 100644 >>> --- a/Documentation/devicetree/bindings/hwmon/max31790.yaml >>> +++ b/Documentation/devicetree/bindings/hwmon/max31790.yaml >>> @@ -25,6 +25,16 @@ properties: >>> reg: >>> maxItems: 1 >>> + pwmout-pin-as-tach-input: >>> + description: | >>> + An array of six integers responds to six PWM channels for >>> + configuring the pwm to tach mode. >>> + When set to 0, the associated PWMOUT produces a PWM waveform for >>> + control of fan speed. When set to 1, PWMOUT becomes a TACH input >>> + $ref: /schemas/types.yaml#/definitions/uint8-array >>> + maxItems: 6 >>> + minItems: 6 >> >> Seems incomplete. For example, fan tachs have different number of >> pulses per revolution, don't you need to know that too? >> > > Per Documentation/ABI/testing/sysfs-class-hwmon: > > What: /sys/class/hwmon/hwmonX/fanY_pulses > Description: > Number of tachometer pulses per fan revolution. > > Integer value, typically between 1 and 4. > > RW > > This value is a characteristic of the fan connected to the > device's input, so it has to be set in accordance with > the fan > model. > > Should only be created if the chip has a register to > configure > the number of pulses. In the absence of such a register > (and > thus attribute) the value assumed by all devices is 2 > pulses > per fan revolution. > > We only expect the property (and attribute) to exist if the controller > supports it. > > Guenter >
Hi Guenter and Rob, Most general-purpose brushless DC fans produce two tachometer pulses per revolution. My fan devices also produce two tachometer pulses per revolution.
In max31790.c, I saw the formula that is used to calculate TACH Count Registers, which defines the pulses per revolution as 2
#define RPM_TO_REG(rpm, sr) ((60 * (sr) * 8192) / ((rpm) * 2))
Do you think we should support the pulses-per-revolution property in this case?
| ![\](/images/icornerr.gif) |