ACPI / NUMA: move bad_srat() and srat_disabled() to drivers/acpi/numa.c

bad_srat() and srat_disabled() are shared by x86 and follow-on arm64
patches.  Move them to drivers/acpi/numa.c in preparation for arm64
support.

Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
Signed-off-by: Robert Richter <rrichter@cavium.com>
[david.daney@cavium.com moved definitions to drivers/acpi/numa.c]
Signed-off-by: David Daney <david.daney@cavium.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
David Daney 2016-05-24 15:35:39 -07:00 committed by Rafael J. Wysocki
parent 2faeff1d50
commit e84025e274
5 changed files with 17 additions and 15 deletions

View File

@ -145,7 +145,6 @@ static inline void disable_acpi(void) { }
#define ARCH_HAS_POWER_INIT 1 #define ARCH_HAS_POWER_INIT 1
#ifdef CONFIG_ACPI_NUMA #ifdef CONFIG_ACPI_NUMA
extern int acpi_numa;
extern int x86_acpi_numa_init(void); extern int x86_acpi_numa_init(void);
#endif /* CONFIG_ACPI_NUMA */ #endif /* CONFIG_ACPI_NUMA */

View File

@ -1,4 +1,5 @@
/* Common code for 32 and 64-bit NUMA */ /* Common code for 32 and 64-bit NUMA */
#include <linux/acpi.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/string.h> #include <linux/string.h>
@ -15,7 +16,6 @@
#include <asm/e820.h> #include <asm/e820.h>
#include <asm/proto.h> #include <asm/proto.h>
#include <asm/dma.h> #include <asm/dma.h>
#include <asm/acpi.h>
#include <asm/amd_nb.h> #include <asm/amd_nb.h>
#include "numa_internal.h" #include "numa_internal.h"

View File

@ -24,19 +24,6 @@
#include <asm/apic.h> #include <asm/apic.h>
#include <asm/uv/uv.h> #include <asm/uv/uv.h>
int acpi_numa __initdata;
static __init void bad_srat(void)
{
printk(KERN_ERR "SRAT: SRAT not used.\n");
acpi_numa = -1;
}
static __init inline int srat_disabled(void)
{
return acpi_numa < 0;
}
/* Callback for Proximity Domain -> x2APIC mapping */ /* Callback for Proximity Domain -> x2APIC mapping */
void __init void __init
acpi_numa_x2apic_affinity_init(struct acpi_srat_x2apic_cpu_affinity *pa) acpi_numa_x2apic_affinity_init(struct acpi_srat_x2apic_cpu_affinity *pa)

View File

@ -40,6 +40,7 @@ static int node_to_pxm_map[MAX_NUMNODES]
= { [0 ... MAX_NUMNODES - 1] = PXM_INVAL }; = { [0 ... MAX_NUMNODES - 1] = PXM_INVAL };
unsigned char acpi_srat_revision __initdata; unsigned char acpi_srat_revision __initdata;
int acpi_numa __initdata;
int pxm_to_node(int pxm) int pxm_to_node(int pxm)
{ {
@ -197,6 +198,17 @@ static int __init slit_valid(struct acpi_table_slit *slit)
return 1; return 1;
} }
void __init bad_srat(void)
{
pr_err("SRAT: SRAT not used.\n");
acpi_numa = -1;
}
int __init srat_disabled(void)
{
return acpi_numa < 0;
}
#if defined(CONFIG_X86) || defined(CONFIG_ARM64) #if defined(CONFIG_X86) || defined(CONFIG_ARM64)
/* /*
* Callback for SLIT parsing. pxm_to_node() returns NUMA_NO_NODE for * Callback for SLIT parsing. pxm_to_node() returns NUMA_NO_NODE for

View File

@ -15,6 +15,10 @@ extern int pxm_to_node(int);
extern int node_to_pxm(int); extern int node_to_pxm(int);
extern int acpi_map_pxm_to_node(int); extern int acpi_map_pxm_to_node(int);
extern unsigned char acpi_srat_revision; extern unsigned char acpi_srat_revision;
extern int acpi_numa __initdata;
extern void bad_srat(void);
extern int srat_disabled(void);
#endif /* CONFIG_ACPI_NUMA */ #endif /* CONFIG_ACPI_NUMA */
#endif /* __ACP_NUMA_H */ #endif /* __ACP_NUMA_H */