Commit d4e883c1 authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] ppc64: Remove pvr from the paca

From: Anton Blanchard <anton@samba.org>

Slowly removing non essential things from the paca
parent eb085eea
...@@ -283,6 +283,10 @@ EXPORT_SYMBOL(machine_halt); ...@@ -283,6 +283,10 @@ EXPORT_SYMBOL(machine_halt);
unsigned long ppc_proc_freq; unsigned long ppc_proc_freq;
unsigned long ppc_tb_freq; unsigned long ppc_tb_freq;
#ifdef CONFIG_SMP
DEFINE_PER_CPU(unsigned int, pvr);
#endif
static int show_cpuinfo(struct seq_file *m, void *v) static int show_cpuinfo(struct seq_file *m, void *v)
{ {
unsigned long cpu_id = (unsigned long)v - 1; unsigned long cpu_id = (unsigned long)v - 1;
...@@ -302,7 +306,7 @@ static int show_cpuinfo(struct seq_file *m, void *v) ...@@ -302,7 +306,7 @@ static int show_cpuinfo(struct seq_file *m, void *v)
return 0; return 0;
#ifdef CONFIG_SMP #ifdef CONFIG_SMP
pvr = paca[cpu_id].pvr; pvr = per_cpu(pvr, cpu_id);
#else #else
pvr = _get_PVR(); pvr = _get_PVR();
#endif #endif
......
...@@ -575,9 +575,11 @@ extern struct gettimeofday_struct do_gtod; ...@@ -575,9 +575,11 @@ extern struct gettimeofday_struct do_gtod;
struct thread_info *current_set[NR_CPUS]; struct thread_info *current_set[NR_CPUS];
DECLARE_PER_CPU(unsigned int, pvr);
static void __devinit smp_store_cpu_info(int id) static void __devinit smp_store_cpu_info(int id)
{ {
paca[id].pvr = _get_PVR(); per_cpu(pvr, id) = _get_PVR();
} }
void __init smp_prepare_cpus(unsigned int max_cpus) void __init smp_prepare_cpus(unsigned int max_cpus)
......
...@@ -64,14 +64,13 @@ struct paca_struct { ...@@ -64,14 +64,13 @@ struct paca_struct {
u16 xHwProcNum; /* Physical processor number 0x1A */ u16 xHwProcNum; /* Physical processor number 0x1A */
u32 default_decr; /* Default decrementer value 0x1c */ u32 default_decr; /* Default decrementer value 0x1c */
u64 xKsave; /* Saved Kernel stack addr or zero 0x20 */ u64 xKsave; /* Saved Kernel stack addr or zero 0x20 */
u64 pvr; /* Processor version register 0x28 */
struct ItLpQueue *lpQueuePtr; /* LpQueue handled by this processor 0x30 */ struct ItLpQueue *lpQueuePtr; /* LpQueue handled by this processor 0x30 */
u64 xTOC; /* Kernel TOC address 0x38 */ u64 xTOC; /* Kernel TOC address 0x38 */
STAB xStab_data; /* Segment table information 0x40,0x48,0x50 */ STAB xStab_data; /* Segment table information 0x40,0x48,0x50 */
u8 *exception_sp; /* 0x58 */ u8 *exception_sp; /* 0x58 */
u8 xProcEnabled; /* 0x59 */ u8 xProcEnabled; /* 0x59 */
u8 prof_enabled; /* 1=iSeries profiling enabled 0x60 */ u8 prof_enabled; /* 1=iSeries profiling enabled 0x60 */
u8 resv1[30]; /* 0x61-0x7F */ u8 resv1[38]; /* 0x61-0x7F */
/*===================================================================================== /*=====================================================================================
* CACHE_LINE_2 0x0080 - 0x00FF * CACHE_LINE_2 0x0080 - 0x00FF
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment