[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8ac7f4b6-525f-4394-a4e7-36640359ea17@gmx.de>
Date: Wed, 6 Nov 2024 21:58:22 +0100
From: Armin Wolf <W_Armin@....de>
To: Mario Limonciello <mario.limonciello@....com>,
Hans de Goede <hdegoede@...hat.com>,
Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>
Cc: "Rafael J . Wysocki" <rafael@...nel.org>, Len Brown <lenb@...nel.org>,
Maximilian Luz <luzmaximilian@...il.com>, Lee Chun-Yi <jlee@...e.com>,
Shyam Sundar S K <Shyam-sundar.S-k@....com>,
Corentin Chary <corentin.chary@...il.com>, "Luke D . Jones"
<luke@...nes.dev>, Ike Panhc <ike.pan@...onical.com>,
Henrique de Moraes Holschuh <hmh@....eng.br>,
Alexis Belmonte <alexbelm48@...il.com>,
Uwe Kleine-König <u.kleine-koenig@...gutronix.de>,
Ai Chao <aichao@...inos.cn>, Gergo Koteles <soyer@....hu>,
open list <linux-kernel@...r.kernel.org>,
"open list:ACPI" <linux-acpi@...r.kernel.org>,
"open list:MICROSOFT SURFACE PLATFORM PROFILE DRIVER"
<platform-driver-x86@...r.kernel.org>,
"open list:THINKPAD ACPI EXTRAS DRIVER"
<ibm-acpi-devel@...ts.sourceforge.net>,
Mark Pearson <mpearson-lenovo@...ebb.ca>,
Matthew Schwartz <matthew.schwartz@...ux.dev>
Subject: Re: [PATCH v4 13/20] ACPI: platform_profile: Notify change events on
register and unregister
Am 06.11.24 um 20:44 schrieb Mario Limonciello:
> On 11/6/2024 13:40, Armin Wolf wrote:
>> Am 05.11.24 um 16:33 schrieb Mario Limonciello:
>>
>>> As multiple platform profile handlers may come and go, send a
>>> notification
>>> to userspace each time that a platform profile handler is registered or
>>> unregistered.
>>>
>>> Tested-by: Matthew Schwartz <matthew.schwartz@...ux.dev>
>>> Reviewed-by: Mark Pearson <mpearson-lenovo@...ebb.ca>
>>> Signed-off-by: Mario Limonciello <mario.limonciello@....com>
>>> ---
>>> drivers/acpi/platform_profile.c | 5 ++++-
>>> 1 file changed, 4 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/acpi/platform_profile.c b/drivers/acpi/
>>> platform_profile.c
>>> index 79083d0bb22e3..c9917daf683cb 100644
>>> --- a/drivers/acpi/platform_profile.c
>>> +++ b/drivers/acpi/platform_profile.c
>>> @@ -404,6 +404,7 @@ int platform_profile_register(struct
>>> platform_profile_handler *pprof)
>>> if (IS_ERR(pprof->class_dev))
>>> return PTR_ERR(pprof->class_dev);
>>> dev_set_drvdata(pprof->class_dev, pprof);
>>> + sysfs_notify(acpi_kobj, NULL, "platform_profile");
>>>
>>> cur_profile = pprof;
>>> return 0;
>>> @@ -419,7 +420,9 @@ int platform_profile_remove(struct
>>> platform_profile_handler *pprof)
>>> {
>>> guard(mutex)(&profile_lock);
>>>
>>> - sysfs_remove_group(acpi_kobj, &platform_profile_group);
>>
>> When do we remove platform_profile_group now?
>>
>
> When incorporating your other feedback I noticed this was still there
> and it will be removed for the next revision.
>
> The idea will be as soon as a class registers the legacy interface is
> created and will stay for the lifetime of the boot.
>
> If all drivers are unloaded it will return -EINVAL until a new driver
> is loaded.
And what happens when the platform profile core itself is unloaded?
Thanks,
Armin Wolf
>
>> Thanks,
>> Armin Wolf
>>
>>> + cur_profile = NULL;
>>> +
>>> + sysfs_notify(acpi_kobj, NULL, "platform_profile");
>>>
>>> device_destroy(&platform_profile_class, MKDEV(0, pprof->minor));
>>>
>
>
Powered by blists - more mailing lists