Re: [RFC Patch v1 1/6] acpi_pad: simplify notify handler by using acpi_drv_ops->notify
From: Jiang Liu
Date: Wed Feb 19 2014 - 00:45:38 EST
Thanks, Rafael. I will drop this patch then.
On 2014/2/18 9:06, Rafael J. Wysocki wrote:
> On Monday, February 17, 2014 01:02:48 PM Jiang Liu wrote:
>> Use callback acpi_drv_ops->notify to simplify acpi_pad driver's
>> notification handling code.
>>
>> Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
>
> There is a plan to move away from using struct acpi_driver objects and
> this change will need to be reverted then. I'm not sure if that's really
> useful?
>
>> ---
>> drivers/acpi/acpi_pad.c | 25 +++++--------------------
>> 1 file changed, 5 insertions(+), 20 deletions(-)
>>
>> diff --git a/drivers/acpi/acpi_pad.c b/drivers/acpi/acpi_pad.c
>> index df96a0f..1e3ce76 100644
>> --- a/drivers/acpi/acpi_pad.c
>> +++ b/drivers/acpi/acpi_pad.c
>> @@ -443,14 +443,11 @@ static void acpi_pad_handle_notify(acpi_handle handle)
>> mutex_unlock(&isolated_cpus_lock);
>> }
>>
>> -static void acpi_pad_notify(acpi_handle handle, u32 event,
>> - void *data)
>> +static void acpi_pad_notify(struct acpi_device *device, u32 event)
>> {
>> - struct acpi_device *device = data;
>> -
>> switch (event) {
>> case ACPI_PROCESSOR_AGGREGATOR_NOTIFY:
>> - acpi_pad_handle_notify(handle);
>> + acpi_pad_handle_notify(device->handle);
>> acpi_bus_generate_netlink_event(device->pnp.device_class,
>> dev_name(&device->dev), event, 0);
>> break;
>> @@ -462,22 +459,10 @@ static void acpi_pad_notify(acpi_handle handle, u32 event,
>>
>> static int acpi_pad_add(struct acpi_device *device)
>> {
>> - acpi_status status;
>> -
>> strcpy(acpi_device_name(device), ACPI_PROCESSOR_AGGREGATOR_DEVICE_NAME);
>> strcpy(acpi_device_class(device), ACPI_PROCESSOR_AGGREGATOR_CLASS);
>>
>> - if (acpi_pad_add_sysfs(device))
>> - return -ENODEV;
>> -
>> - status = acpi_install_notify_handler(device->handle,
>> - ACPI_DEVICE_NOTIFY, acpi_pad_notify, device);
>> - if (ACPI_FAILURE(status)) {
>> - acpi_pad_remove_sysfs(device);
>> - return -ENODEV;
>> - }
>> -
>> - return 0;
>> + return acpi_pad_add_sysfs(device);
>> }
>>
>> static int acpi_pad_remove(struct acpi_device *device)
>> @@ -486,9 +471,8 @@ static int acpi_pad_remove(struct acpi_device *device)
>> acpi_pad_idle_cpus(0);
>> mutex_unlock(&isolated_cpus_lock);
>>
>> - acpi_remove_notify_handler(device->handle,
>> - ACPI_DEVICE_NOTIFY, acpi_pad_notify);
>> acpi_pad_remove_sysfs(device);
>> +
>> return 0;
>> }
>>
>> @@ -505,6 +489,7 @@ static struct acpi_driver acpi_pad_driver = {
>> .ops = {
>> .add = acpi_pad_add,
>> .remove = acpi_pad_remove,
>> + .notify = acpi_pad_notify,
>> },
>> };
>>
>>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/