Skip to content

Commit 9d8a2b0

Browse files
shankerwangmiaorafaeljw
authored andcommitted
ACPI: introduce acpi_arch_init()
To avoid arch-specific code in general ACPI initialization flow, introduce a weak symbol acpi_arch_init(). Currently, arm64 and riscv can utillize this to insert their arch-specific flow. In the future, other architectures can also have a chance to define their own arch-specific ACPI initialization process if necessary. Reviewed-by: Sunil V L <sunilvl@ventanamicro.com> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> Acked-by: Hanjun Guo <guohanjun@huawei.com> Signed-off-by: Miao Wang <shankerwangmiao@gmail.com> Link: https://patch.msgid.link/20241121-intro-acpi-arch-init-v4-1-b1fb517e7d8b@gmail.com [ rjw: Subject and changelog edits ] Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
1 parent 4e9ad03 commit 9d8a2b0

File tree

4 files changed

+6
-15
lines changed

4 files changed

+6
-15
lines changed

drivers/acpi/arm64/init.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
#include <linux/acpi.h>
33
#include "init.h"
44

5-
void __init acpi_arm_init(void)
5+
void __init acpi_arch_init(void)
66
{
77
if (IS_ENABLED(CONFIG_ACPI_AGDI))
88
acpi_agdi_init();

drivers/acpi/bus.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1434,6 +1434,8 @@ static int __init acpi_bus_init(void)
14341434
struct kobject *acpi_kobj;
14351435
EXPORT_SYMBOL_GPL(acpi_kobj);
14361436

1437+
void __weak __init acpi_arch_init(void) { }
1438+
14371439
static int __init acpi_init(void)
14381440
{
14391441
int result;
@@ -1461,8 +1463,7 @@ static int __init acpi_init(void)
14611463
acpi_viot_early_init();
14621464
acpi_hest_init();
14631465
acpi_ghes_init();
1464-
acpi_arm_init();
1465-
acpi_riscv_init();
1466+
acpi_arch_init();
14661467
acpi_scan_init();
14671468
acpi_ec_init();
14681469
acpi_debugfs_init();

drivers/acpi/riscv/init.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#include <linux/acpi.h>
88
#include "init.h"
99

10-
void __init acpi_riscv_init(void)
10+
void __init acpi_arch_init(void)
1111
{
1212
riscv_acpi_init_gsi_mapping();
1313
}

include/linux/acpi.h

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1530,17 +1530,7 @@ static inline int find_acpi_cpu_topology_hetero_id(unsigned int cpu)
15301530
}
15311531
#endif
15321532

1533-
#ifdef CONFIG_ARM64
1534-
void acpi_arm_init(void);
1535-
#else
1536-
static inline void acpi_arm_init(void) { }
1537-
#endif
1538-
1539-
#ifdef CONFIG_RISCV
1540-
void acpi_riscv_init(void);
1541-
#else
1542-
static inline void acpi_riscv_init(void) { }
1543-
#endif
1533+
void acpi_arch_init(void);
15441534

15451535
#ifdef CONFIG_ACPI_PCC
15461536
void acpi_init_pcc(void);

0 commit comments

Comments
 (0)