Devicetree
 help / color / mirror / Atom feed
From: Marek Vasut <marex@denx.de>
To: Guenter Roeck <linux@roeck-us.net>, linux-hwmon@vger.kernel.org
Cc: Conor Dooley <conor+dt@kernel.org>,
	Jean Delvare <jdelvare@suse.com>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Rob Herring <robh@kernel.org>,
	devicetree@vger.kernel.org
Subject: Re: [PATCH 1/2] dt-bindings: hwmon: pwm-fan: Document start from dead stop properties
Date: Wed, 6 Nov 2024 02:28:57 +0100	[thread overview]
Message-ID: <0b32eda6-4071-4707-a8c6-447073638707@denx.de> (raw)
In-Reply-To: <1a8b0024-97db-4c1c-9d04-45057a2ba800@roeck-us.net>

On 11/6/24 1:34 AM, Guenter Roeck wrote:
> On 11/5/24 10:53, Marek Vasut wrote:
>> On 11/5/24 3:11 PM, Guenter Roeck wrote:
>>> On 11/5/24 05:52, Marek Vasut wrote:
>>>> Delta AFC0612DB-F00 fan has to be set to at least 30% PWM duty cycle
>>>> to spin up from a dead stop, and can be afterward throttled down to
>>>> lower PWM duty cycle. Introduce support for operating such fans which
>>>
>>> Doesn't this imply that a minimum pwm value is needed as well ?
>>
>> It depends. For this fan, yes, it does stop at around 8% PWM duty cycle.
>>
>>> Super-IO chips such as the NCT67xx series typically have two separate
>>> registers, one for the pwm start value and one for the minimum pwm 
>>> value.
>>
>> I use plain SoC PWM output to operate the fan. This one needs to be 
>> set to higher PWM duty cycle first, to spin up, and can be reduced to 
>> lower PWM duty cycle afterward without stopping.
>>
> 
> Yes, exactly. That is what many fans require.
> 
>>>> need to start at higher PWM duty cycle first and can slow down next.
>>>>
>>>> Document two new DT properties, "fan-dead-stop-start-percent" and
>>>> "fan-dead-stop-start-usec". The former describes the minimum percent
>>>> of fan RPM at which it will surely spin up from dead stop. This value
>>>> can be found in the fan datasheet and can be converted to PWM duty
>>>> cycle easily. The "fan-dead-stop-start-usec" describes the minimum
>>>> time in microseconds for which the fan has to be set to dead stop
>>>> start RPM for the fan to surely spin up.
>>>>
>>>> Signed-off-by: Marek Vasut <marex@denx.de>
>>>> ---
>>>> Cc: Conor Dooley <conor+dt@kernel.org>
>>>> Cc: Guenter Roeck <linux@roeck-us.net>
>>>> Cc: Jean Delvare <jdelvare@suse.com>
>>>> Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
>>>> Cc: Rob Herring <robh@kernel.org>
>>>> Cc: devicetree@vger.kernel.org
>>>> Cc: linux-hwmon@vger.kernel.org
>>>> ---
>>>>   Documentation/devicetree/bindings/hwmon/pwm-fan.yaml | 11 +++++++++++
>>>>   1 file changed, 11 insertions(+)
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/hwmon/pwm-fan.yaml b/ 
>>>> Documentation/devicetree/bindings/hwmon/pwm-fan.yaml
>>>> index 4e5abf7580cc6..f1042471b5176 100644
>>>> --- a/Documentation/devicetree/bindings/hwmon/pwm-fan.yaml
>>>> +++ b/Documentation/devicetree/bindings/hwmon/pwm-fan.yaml
>>>> @@ -31,6 +31,17 @@ properties:
>>>>         it must be self resetting edge interrupts.
>>>>       maxItems: 1
>>>> +  fan-dead-stop-start-percent:
>>>
>>> Personally I don't think that "dead-stop" in the property name adds 
>>> any value.
>>> On the contrary, I think it leads to confusion. I head to read the 
>>> description
>>> to understand.
>>
>> The documentation refers to this behavior as a "dead stop" , hence the 
>> property name. I can change it to fan-stop-to-start-percent ?
> 
> I do not understand the need for that much complexity in the property name,
> and I don't think it makes sense to name a property based on a specific
> chip documentation. I have seen that before, where different vendors use
> different names for the same functionality. That doesn't mean that the
> vendor-determined name has to make it into the property name.
> 
> As an example, Nuvoton calls the values "Start-Up Value" and "Stop Value".
> ITE calls the start value "start PWM value" (and as far as I can see 
> doesn't
> have a separate stop value). I am sure pretty much every vendor uses a
> different description.
> 
> I am personally not a friend of long property names. Having said that,
> I'll let you use whatever DT maintainers accept. They may have a different
> opinion.
Do you have a different suggestion for the property name ? Else I'll 
just send a V2 .

  reply	other threads:[~2024-11-06  1:28 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-05 13:52 [PATCH 1/2] dt-bindings: hwmon: pwm-fan: Document start from dead stop properties Marek Vasut
2024-11-05 13:52 ` [PATCH 2/2] hwmon: (pwm-fan) Introduce start from dead stop handling Marek Vasut
2024-11-05 14:12   ` Guenter Roeck
2024-11-06  3:18   ` kernel test robot
2024-11-06 18:56   ` kernel test robot
2024-11-05 14:11 ` [PATCH 1/2] dt-bindings: hwmon: pwm-fan: Document start from dead stop properties Guenter Roeck
2024-11-05 18:53   ` Marek Vasut
2024-11-06  0:34     ` Guenter Roeck
2024-11-06  1:28       ` Marek Vasut [this message]
2024-11-06  1:55         ` Guenter Roeck
2024-11-06  2:17           ` Marek Vasut
2024-11-05 18:18 ` Conor Dooley

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=0b32eda6-4071-4707-a8c6-447073638707@denx.de \
    --to=marex@denx.de \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=jdelvare@suse.com \
    --cc=krzk+dt@kernel.org \
    --cc=linux-hwmon@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=robh@kernel.org \
    /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