[PATCH v3 1/2] hwmon: (pmbus) Add Delta AHE-50DC fan control module driver
Guenter Roeck
linux at roeck-us.net
Wed Dec 8 11:54:11 AEDT 2021
On 12/7/21 4:41 PM, Zev Weiss wrote:
> On Tue, Dec 07, 2021 at 03:15:18PM PST, Guenter Roeck wrote:
>> On 12/7/21 1:53 PM, Zev Weiss wrote:
>>> On Tue, Dec 07, 2021 at 11:44:01AM PST, Guenter Roeck wrote:
>>>> On 12/7/21 11:22 AM, Zev Weiss wrote:
>>>>> On Tue, Dec 07, 2021 at 09:50:15AM PST, Guenter Roeck wrote:
>>>>>> On Mon, Dec 06, 2021 at 11:15:20PM -0800, Zev Weiss wrote:
>>>>>>> This device is an integrated module of the Delta AHE-50DC Open19 power
>>>>>>> shelf. For lack of proper documentation, this driver has been developed
>>>>>>> referencing an existing (GPL) driver that was included in a code release
>>>>>>> from LinkedIn [1]. It provides four fan speeds, four temperatures, and
>>>>>>> one voltage reading, as well as a handful of warning and fault
>>>>>>> indicators.
>>>>>>>
>>>>>>> [1] https://github.com/linkedin/o19-bmc-firmware/blob/master/meta-openbmc/meta-linkedin/meta-deltapower/recipes-kernel/fancontrol-mod/files/fancontrol.c
>>>>>>>
>>>>>>
>>>>>> Hmm, that reference isn't really accurate anymore. I think it would be
>>>>>> better to just say that the device was found to be PMBus compliant.
>>>>>
>>>>> Sure, will do.
>>>>>
>>>>
>>>> Makes me wonder: How do you know that the referenced driver is for Delta AHE-50DC ?
>>>
>>> We'd been waiting for the source code for the software it ships with for a while, and were finally provided with that repo; everything I've observed from the factory software is consistent with the code in that driver. A sampling:
>>>
>>
>> I assume you mean "Delta AHE-50DC" when you refer to "it".
>>
>
> Yes.
>
>> [ ... ]
>>>> Can you check this with real hardware, by any chance ?
>>>>
>>>
>>> If you mean running that code on it, yes -- here's the userspace utility that invokes that library routine:
>>>
>>> root at bmc-oob:~# fan-util.sh
>>> fan1 speed: 7860 RPM
>>> fan2 speed: 7860 RPM
>>> fan3 speed: 7620 RPM
>>> fan4 speed: 7560 RPM
>>> temperature1: 29.20 C
>>> temperature2: 27.80 C
>>> temperature3: 28.50 C
>>> temperature4: 30.20 C
>>> vin_undervolt_fault: no
>>> overtemperature_warning: no
>>> fan_fault: no
>>> fan_warning: no
>>> fan_status: ok
>>>
>>
>> That doesn't really tell me anything in the context of the driver you submitted.
>> Would it be possible to install your driver and provide the output from the
>> "sensors" command ? It should match the information from the proprietary
>> driver/tool.
>>
>
> Thanks, in doing so I realized I'd neglected to prevent reads from unsupported registers in the read_word_data function, which was leading to the driver producing sysfs files for meaningless sensor limits that the device doesn't actually support. With that fix (which I'll include in v4):
>
What a surprise. See drivers/hwmon/pmbus/dps920ab.c; that seems to be
a common theme for devices from Delta. I would suggest to add a similar
comment.
Guenter
More information about the openbmc
mailing list