aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/genx2apic_cluster.c
diff options
context:
space:
mode:
authorYinghai Lu <yhlu.kernel@gmail.com>2008-07-12 04:01:20 -0400
committerIngo Molnar <mingo@elte.hu>2008-07-13 02:27:46 -0400
commitf910a9dc7c865896815e2a95fe33363e9522f277 (patch)
treea4d1361f7d38dd358da62a1c14191cdbf6011d98 /arch/x86/kernel/genx2apic_cluster.c
parent4c9961d56ec20c27ec5d02e49fd7427748312741 (diff)
x86: make 64bit have get_apic_id
generalize the x2apic code some more. let read_apic_id become a macro (later on a function/inline) GET_APIC_ID(apic_read(APIC_ID)) +#define read_apic_id() (GET_APIC_ID(apic_read(APIC_ID))) instead of this weird construct: -#define read_apic_id (genapic->read_apic_id) Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com> Cc: Suresh Siddha <suresh.b.siddha@intel.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/genx2apic_cluster.c')
-rw-r--r--arch/x86/kernel/genx2apic_cluster.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/arch/x86/kernel/genx2apic_cluster.c b/arch/x86/kernel/genx2apic_cluster.c
index ed0fdede800a..40bc0140d89f 100644
--- a/arch/x86/kernel/genx2apic_cluster.c
+++ b/arch/x86/kernel/genx2apic_cluster.c
@@ -94,6 +94,22 @@ static unsigned int x2apic_cpu_mask_to_apicid(cpumask_t cpumask)
94 return BAD_APICID; 94 return BAD_APICID;
95} 95}
96 96
97static unsigned int get_apic_id(unsigned long x)
98{
99 unsigned int id;
100
101 id = x;
102 return id;
103}
104
105static unsigned long set_apic_id(unsigned int id)
106{
107 unsigned long x;
108
109 x = id;
110 return x;
111}
112
97static unsigned int x2apic_read_id(void) 113static unsigned int x2apic_read_id(void)
98{ 114{
99 return apic_read(APIC_ID); 115 return apic_read(APIC_ID);
@@ -131,5 +147,7 @@ struct genapic apic_x2apic_cluster = {
131 .send_IPI_self = x2apic_send_IPI_self, 147 .send_IPI_self = x2apic_send_IPI_self,
132 .cpu_mask_to_apicid = x2apic_cpu_mask_to_apicid, 148 .cpu_mask_to_apicid = x2apic_cpu_mask_to_apicid,
133 .phys_pkg_id = phys_pkg_id, 149 .phys_pkg_id = phys_pkg_id,
134 .read_apic_id = x2apic_read_id, 150 .get_apic_id = get_apic_id,
151 .set_apic_id = set_apic_id,
152 .apic_id_mask = (0xFFFFFFFFu),
135}; 153};