[PATCH v1 4/6] ACPI: glue: Eliminate acpi_platform_notify()

From: Rafael J. Wysocki
Date: Mon Jul 12 2021 - 13:28:41 EST


From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

Get rid of acpi_platform_notify() which is redundant and
make device_platform_notify() in the driver core call
acpi_device_notify() and acpi_device_notify_remove() directly.

No functional impact.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
---
drivers/acpi/glue.c | 19 ++-----------------
drivers/base/core.c | 7 ++++---
include/linux/acpi.h | 10 ++++------
3 files changed, 10 insertions(+), 26 deletions(-)

Index: linux-pm/drivers/base/core.c
===================================================================
--- linux-pm.orig/drivers/base/core.c
+++ linux-pm/drivers/base/core.c
@@ -2005,9 +2005,10 @@ device_platform_notify(struct device *de
{
int ret;

- ret = acpi_platform_notify(dev, action);
- if (ret)
- return ret;
+ if (action == KOBJ_ADD)
+ acpi_device_notify(dev);
+ else if (action == KOBJ_REMOVE)
+ acpi_device_notify_remove(dev);

ret = software_node_notify(dev, action);
if (ret)
Index: linux-pm/include/linux/acpi.h
===================================================================
--- linux-pm.orig/include/linux/acpi.h
+++ linux-pm/include/linux/acpi.h
@@ -1380,13 +1380,11 @@ static inline int find_acpi_cpu_cache_to
#endif

#ifdef CONFIG_ACPI
-extern int acpi_platform_notify(struct device *dev, enum kobject_action action);
+extern void acpi_device_notify(struct device *dev);
+extern void acpi_device_notify_remove(struct device *dev);
#else
-static inline int
-acpi_platform_notify(struct device *dev, enum kobject_action action)
-{
- return 0;
-}
+static inline void acpi_device_notify(struct device *dev) { }
+static inline void acpi_device_notify_remove(struct device *dev) { }
#endif

#endif /*_LINUX_ACPI_H*/
Index: linux-pm/drivers/acpi/glue.c
===================================================================
--- linux-pm.orig/drivers/acpi/glue.c
+++ linux-pm/drivers/acpi/glue.c
@@ -285,7 +285,7 @@ int acpi_unbind_one(struct device *dev)
}
EXPORT_SYMBOL_GPL(acpi_unbind_one);

-static void acpi_device_notify(struct device *dev)
+void acpi_device_notify(struct device *dev)
{
struct acpi_bus_type *type = acpi_get_bus_type(dev);
struct acpi_device *adev;
@@ -324,7 +324,7 @@ err:
dev_dbg(dev, "No ACPI support\n");
}

-static void acpi_device_notify_remove(struct device *dev)
+void acpi_device_notify_remove(struct device *dev)
{
struct acpi_device *adev = ACPI_COMPANION(dev);
struct acpi_bus_type *type;
@@ -340,18 +340,3 @@ static void acpi_device_notify_remove(st

acpi_unbind_one(dev);
}
-
-int acpi_platform_notify(struct device *dev, enum kobject_action action)
-{
- switch (action) {
- case KOBJ_ADD:
- acpi_device_notify(dev);
- break;
- case KOBJ_REMOVE:
- acpi_device_notify_remove(dev);
- break;
- default:
- break;
- }
- return 0;
-}