Skip to content

Commit 76866c9

Browse files
committed
ACPI: driver: Avoid using pnp.device_class for netlink handling
Update several core ACPI device drivers that use acpi_bus_generate_netlink_event() for generating netlink messages to pass a string literal as its first argument instead of a pointer to pnp.device_class in a given struct acpi_device, which will allow them to avoid initializing the pnp.device_class field in the future. The ACPI button driver that uses different acpi_device_class() values for different button types will still pass it to acpi_bus_generate_netlink_event(), but update it to use the acpi_device_class() macro instead of open coding the pointer access path. No intentional functional impact. Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Link: https://patch.msgid.link/7944022.EvYhyI6sBW@rafael.j.wysocki
1 parent 69652f3 commit 76866c9

6 files changed

Lines changed: 18 additions & 24 deletions

File tree

drivers/acpi/ac.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -130,9 +130,9 @@ static void acpi_ac_notify(acpi_handle handle, u32 event, void *data)
130130
msleep(ac_sleep_before_get_state_ms);
131131

132132
acpi_ac_get_state(ac);
133-
acpi_bus_generate_netlink_event(adev->pnp.device_class,
134-
dev_name(&adev->dev), event,
135-
(u32) ac->state);
133+
acpi_bus_generate_netlink_event(ACPI_AC_CLASS,
134+
dev_name(&adev->dev), event,
135+
ac->state);
136136
acpi_notifier_call_chain(ACPI_AC_CLASS, acpi_device_bid(adev),
137137
event, ac->state);
138138
power_supply_changed(ac->charger);

drivers/acpi/acpi_pad.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -413,8 +413,8 @@ static void acpi_pad_notify(acpi_handle handle, u32 event, void *data)
413413
switch (event) {
414414
case ACPI_PROCESSOR_AGGREGATOR_NOTIFY:
415415
acpi_pad_handle_notify(handle);
416-
acpi_bus_generate_netlink_event(adev->pnp.device_class,
417-
dev_name(&adev->dev), event, 0);
416+
acpi_bus_generate_netlink_event(ACPI_PROCESSOR_AGGREGATOR_CLASS,
417+
dev_name(&adev->dev), event, 0);
418418
break;
419419
default:
420420
pr_warn("Unsupported event [0x%x]\n", event);

drivers/acpi/battery.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1078,7 +1078,7 @@ static void acpi_battery_notify(acpi_handle handle, u32 event, void *data)
10781078
if (event == ACPI_BATTERY_NOTIFY_INFO)
10791079
acpi_battery_refresh(battery);
10801080
acpi_battery_update(battery, false);
1081-
acpi_bus_generate_netlink_event(device->pnp.device_class,
1081+
acpi_bus_generate_netlink_event(ACPI_BATTERY_CLASS,
10821082
dev_name(&device->dev), event,
10831083
acpi_battery_present(battery));
10841084
acpi_notifier_call_chain(ACPI_BATTERY_CLASS, acpi_device_bid(device),

drivers/acpi/button.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -468,7 +468,7 @@ static void acpi_button_notify(acpi_handle handle, u32 event, void *data)
468468
input_report_key(input, keycode, 0);
469469
input_sync(input);
470470

471-
acpi_bus_generate_netlink_event(device->pnp.device_class,
471+
acpi_bus_generate_netlink_event(acpi_device_class(device),
472472
dev_name(&device->dev),
473473
event, ++button->pushed);
474474
}

drivers/acpi/processor_driver.c

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ static void acpi_processor_notify(acpi_handle handle, u32 event, void *data)
5353
{
5454
struct acpi_device *device = data;
5555
struct acpi_processor *pr;
56-
int saved;
56+
int saved, ev_data = 0;
5757

5858
if (device->handle != handle)
5959
return;
@@ -66,33 +66,27 @@ static void acpi_processor_notify(acpi_handle handle, u32 event, void *data)
6666
case ACPI_PROCESSOR_NOTIFY_PERFORMANCE:
6767
saved = pr->performance_platform_limit;
6868
acpi_processor_ppc_has_changed(pr, 1);
69-
if (saved == pr->performance_platform_limit)
70-
break;
71-
acpi_bus_generate_netlink_event(device->pnp.device_class,
72-
dev_name(&device->dev), event,
73-
pr->performance_platform_limit);
69+
ev_data = pr->performance_platform_limit;
70+
if (saved == ev_data)
71+
return;
72+
7473
break;
7574
case ACPI_PROCESSOR_NOTIFY_POWER:
7675
acpi_processor_power_state_has_changed(pr);
77-
acpi_bus_generate_netlink_event(device->pnp.device_class,
78-
dev_name(&device->dev), event, 0);
7976
break;
8077
case ACPI_PROCESSOR_NOTIFY_THROTTLING:
8178
acpi_processor_tstate_has_changed(pr);
82-
acpi_bus_generate_netlink_event(device->pnp.device_class,
83-
dev_name(&device->dev), event, 0);
8479
break;
8580
case ACPI_PROCESSOR_NOTIFY_HIGEST_PERF_CHANGED:
8681
cpufreq_update_limits(pr->id);
87-
acpi_bus_generate_netlink_event(device->pnp.device_class,
88-
dev_name(&device->dev), event, 0);
8982
break;
9083
default:
9184
acpi_handle_debug(handle, "Unsupported event [0x%x]\n", event);
92-
break;
85+
return;
9386
}
9487

95-
return;
88+
acpi_bus_generate_netlink_event(ACPI_PROCESSOR_CLASS,
89+
dev_name(&device->dev), event, ev_data);
9690
}
9791

9892
static int __acpi_processor_start(struct acpi_device *device);

drivers/acpi/thermal.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,7 @@ static void acpi_thermal_trips_update(struct acpi_thermal *tz, u32 event)
340340
thermal_zone_for_each_trip(tz->thermal_zone,
341341
acpi_thermal_adjust_trip, &atd);
342342
acpi_queue_thermal_check(tz);
343-
acpi_bus_generate_netlink_event(adev->pnp.device_class,
343+
acpi_bus_generate_netlink_event(ACPI_THERMAL_CLASS,
344344
dev_name(&adev->dev), event, 0);
345345
}
346346

@@ -542,7 +542,7 @@ static void acpi_thermal_zone_device_hot(struct thermal_zone_device *thermal)
542542
{
543543
struct acpi_thermal *tz = thermal_zone_device_priv(thermal);
544544

545-
acpi_bus_generate_netlink_event(tz->device->pnp.device_class,
545+
acpi_bus_generate_netlink_event(ACPI_THERMAL_CLASS,
546546
dev_name(&tz->device->dev),
547547
ACPI_THERMAL_NOTIFY_HOT, 1);
548548
}
@@ -551,7 +551,7 @@ static void acpi_thermal_zone_device_critical(struct thermal_zone_device *therma
551551
{
552552
struct acpi_thermal *tz = thermal_zone_device_priv(thermal);
553553

554-
acpi_bus_generate_netlink_event(tz->device->pnp.device_class,
554+
acpi_bus_generate_netlink_event(ACPI_THERMAL_CLASS,
555555
dev_name(&tz->device->dev),
556556
ACPI_THERMAL_NOTIFY_CRITICAL, 1);
557557

0 commit comments

Comments
 (0)