[PATCH v7 09/16] arm64: acpi: Move get_cpu_for_acpi_id() to a header
Jonathan Cameron
Jonathan.Cameron at Huawei.com
Mon Apr 22 03:46:39 PDT 2024
On Thu, 18 Apr 2024 14:54:05 +0100
Jonathan Cameron <Jonathan.Cameron at huawei.com> wrote:
> From: James Morse <james.morse at arm.com>
>
> ACPI identifies CPUs by UID. get_cpu_for_acpi_id() maps the ACPI UID
> to the Linux CPU number.
>
> The helper to retrieve this mapping is only available in arm64's NUMA
> code.
>
> Move it to live next to get_acpi_id_for_cpu().
>
> Signed-off-by: James Morse <james.morse at arm.com>
> Reviewed-by: Jonathan Cameron <Jonathan.Cameron at huawei.com>
> Reviewed-by: Gavin Shan <gshan at redhat.com>
> Tested-by: Miguel Luis <miguel.luis at oracle.com>
> Tested-by: Vishnu Pajjuri <vishnu at os.amperecomputing.com>
> Tested-by: Jianyong Wu <jianyong.wu at arm.com>
> Signed-off-by: Russell King (Oracle) <rmk+kernel at armlinux.org.uk>
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron at huawei.com>
Another one where we'd been focused on the general ACPI aspects so long
the CC list didn't include relevant maintainers.
+CC Lorenzo, Hanjun and Sudeep.
> ---
> v7: No change
> ---
> arch/arm64/include/asm/acpi.h | 11 +++++++++++
> arch/arm64/kernel/acpi_numa.c | 11 -----------
> 2 files changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/arch/arm64/include/asm/acpi.h b/arch/arm64/include/asm/acpi.h
> index 6792a1f83f2a..bc9a6656fc0c 100644
> --- a/arch/arm64/include/asm/acpi.h
> +++ b/arch/arm64/include/asm/acpi.h
> @@ -119,6 +119,17 @@ static inline u32 get_acpi_id_for_cpu(unsigned int cpu)
> return acpi_cpu_get_madt_gicc(cpu)->uid;
> }
>
> +static inline int get_cpu_for_acpi_id(u32 uid)
> +{
> + int cpu;
> +
> + for (cpu = 0; cpu < nr_cpu_ids; cpu++)
> + if (uid == get_acpi_id_for_cpu(cpu))
> + return cpu;
> +
> + return -EINVAL;
> +}
> +
> static inline void arch_fix_phys_package_id(int num, u32 slot) { }
> void __init acpi_init_cpus(void);
> int apei_claim_sea(struct pt_regs *regs);
> diff --git a/arch/arm64/kernel/acpi_numa.c b/arch/arm64/kernel/acpi_numa.c
> index e51535a5f939..0c036a9a3c33 100644
> --- a/arch/arm64/kernel/acpi_numa.c
> +++ b/arch/arm64/kernel/acpi_numa.c
> @@ -34,17 +34,6 @@ int __init acpi_numa_get_nid(unsigned int cpu)
> return acpi_early_node_map[cpu];
> }
>
> -static inline int get_cpu_for_acpi_id(u32 uid)
> -{
> - int cpu;
> -
> - for (cpu = 0; cpu < nr_cpu_ids; cpu++)
> - if (uid == get_acpi_id_for_cpu(cpu))
> - return cpu;
> -
> - return -EINVAL;
> -}
> -
> static int __init acpi_parse_gicc_pxm(union acpi_subtable_headers *header,
> const unsigned long end)
> {
More information about the linux-arm-kernel
mailing list