[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <367acd5f-9130-f071-7146-21212b578043@roeck-us.net>
Date: Mon, 2 May 2022 16:43:41 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Armin Wolf <W_Armin@....de>, LABBE Corentin <clabbe@...libre.com>
Cc: jdelvare@...e.com, linux-hwmon@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/2] hwmon: acpi_power_meter: convert to
hwmon_device_register_with_info
On 5/2/22 14:00, Armin Wolf wrote:
> Am 02.05.22 um 22:42 schrieb Guenter Roeck:
>> On 5/2/22 13:31, Armin Wolf wrote:
>>> Am 02.05.22 um 20:59 schrieb LABBE Corentin:
>>>
>>>> Le Mon, May 02, 2022 at 06:34:44AM -0700, Guenter Roeck a écrit :
>>>>> On 5/2/22 05:42, Corentin Labbe wrote:
>>>>>> Booting lead to a hwmon_device_register() is deprecated. Please
>>>>>> convert the driver to use hwmon_device_register_with_info().
>>>>>> So let's convert the driver to use hwmon_device_register_with_info().
>>>>>>
>>>>>> Signed-off-by: Corentin Labbe <clabbe@...libre.com>
>>>>>> ---
>>>>>> drivers/hwmon/acpi_power_meter.c | 5 ++++-
>>>>>> 1 file changed, 4 insertions(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/drivers/hwmon/acpi_power_meter.c
>>>>>> b/drivers/hwmon/acpi_power_meter.c
>>>>>> index d2545a1be9fc..98293727f980 100644
>>>>>> --- a/drivers/hwmon/acpi_power_meter.c
>>>>>> +++ b/drivers/hwmon/acpi_power_meter.c
>>>>>> @@ -891,7 +891,10 @@ static int acpi_power_meter_add(struct
>>>>>> acpi_device *device)
>>>>>> if (res)
>>>>>> goto exit_free_capability;
>>>>>>
>>>>>> - resource->hwmon_dev = hwmon_device_register(&device->dev);
>>>>>> + resource->hwmon_dev =
>>>>>> hwmon_device_register_with_info(&device->dev,
>>>>>> + ACPI_POWER_METER_DEVICE_NAME,
>>>>>> + NULL, NULL,
>>>>>> + NULL);
>>>>> NACK. That isn't a conversion to the new API, it just abuses the fact
>>>>> that the new API has to accept a NULL info pointer for historic
>>>>> reasons.
>>>>>
>>>> Hello
>>>>
>>>> I am sorry, I found a driver doing it, so I believed it was okay.
>>>> Converting seems not to hard but, by using the new API, how can I
>>>> convert power1_model_number/power1_is_battery attribute ?
>>>> There are the remaining attributes I dont find how to convert.
>>>>
>>>> Regards
>>>
>>> Hi,
>>>
>>> for allowing the driver to provide nonstandard attributes,
>>> hwmon_device_register_with_info()
>>> has the argument "extra_groups" which is an pointer to a list of
>>> sysfs attribute groups.
>>> There are some drivers which are using this functionality, maybe you
>>> can use them as an
>>> inspiration.
>>>
>>> Just a question: what is the name of the driver you originally used
>>> as an inspiration?
>>>
>>
>> Originally it was for drivers/thermal/thermal_hwmon.c. Now there is also
>> drivers/platform/mips/cpu_hwmon.c which is clearly an abuse. I may have
>> missed others.
>>
>> Guenter
> Should we notify the maintainers of cpu_hwmon.c about that?
> This could potentially prevent such incidents from happening again.
>
I am more inclined to create a special API for thermal, call it from
the thermal code, and issue a warning with backtrace if anyone else
calls hwmon_device_register_with_info() with NULL info pointer.
And explain all that in detail in the API documentation.
Guenter
Powered by blists - more mailing lists