aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-ppc64
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-ppc64')
-rw-r--r--include/asm-ppc64/machdep.h1
-rw-r--r--include/asm-ppc64/mmu.h5
-rw-r--r--include/asm-ppc64/nvram.h1
-rw-r--r--include/asm-ppc64/processor.h15
-rw-r--r--include/asm-ppc64/rtas.h6
-rw-r--r--include/asm-ppc64/smp.h8
-rw-r--r--include/asm-ppc64/time.h9
7 files changed, 41 insertions, 4 deletions
diff --git a/include/asm-ppc64/machdep.h b/include/asm-ppc64/machdep.h
index 5d3cd9d042e2..553b2ea23bed 100644
--- a/include/asm-ppc64/machdep.h
+++ b/include/asm-ppc64/machdep.h
@@ -76,6 +76,7 @@ struct machdep_calls {
76 void (*tce_flush)(struct iommu_table *tbl); 76 void (*tce_flush)(struct iommu_table *tbl);
77 void (*iommu_dev_setup)(struct pci_dev *dev); 77 void (*iommu_dev_setup)(struct pci_dev *dev);
78 void (*iommu_bus_setup)(struct pci_bus *bus); 78 void (*iommu_bus_setup)(struct pci_bus *bus);
79 void (*irq_bus_setup)(struct pci_bus *bus);
79 80
80 int (*probe)(int platform); 81 int (*probe)(int platform);
81 void (*setup_arch)(void); 82 void (*setup_arch)(void);
diff --git a/include/asm-ppc64/mmu.h b/include/asm-ppc64/mmu.h
index c78282a67d8e..9d03a98a4fa3 100644
--- a/include/asm-ppc64/mmu.h
+++ b/include/asm-ppc64/mmu.h
@@ -47,9 +47,10 @@
47#define SLB_VSID_KS ASM_CONST(0x0000000000000800) 47#define SLB_VSID_KS ASM_CONST(0x0000000000000800)
48#define SLB_VSID_KP ASM_CONST(0x0000000000000400) 48#define SLB_VSID_KP ASM_CONST(0x0000000000000400)
49#define SLB_VSID_N ASM_CONST(0x0000000000000200) /* no-execute */ 49#define SLB_VSID_N ASM_CONST(0x0000000000000200) /* no-execute */
50#define SLB_VSID_L ASM_CONST(0x0000000000000100) /* largepage 16M */ 50#define SLB_VSID_L ASM_CONST(0x0000000000000100) /* largepage */
51#define SLB_VSID_C ASM_CONST(0x0000000000000080) /* class */ 51#define SLB_VSID_C ASM_CONST(0x0000000000000080) /* class */
52 52#define SLB_VSID_LS ASM_CONST(0x0000000000000070) /* size of largepage */
53
53#define SLB_VSID_KERNEL (SLB_VSID_KP|SLB_VSID_C) 54#define SLB_VSID_KERNEL (SLB_VSID_KP|SLB_VSID_C)
54#define SLB_VSID_USER (SLB_VSID_KP|SLB_VSID_KS) 55#define SLB_VSID_USER (SLB_VSID_KP|SLB_VSID_KS)
55 56
diff --git a/include/asm-ppc64/nvram.h b/include/asm-ppc64/nvram.h
index 4e6dd370d936..dfaa21566c9a 100644
--- a/include/asm-ppc64/nvram.h
+++ b/include/asm-ppc64/nvram.h
@@ -70,6 +70,7 @@ extern struct nvram_partition *nvram_find_partition(int sig, const char *name);
70 70
71extern int pSeries_nvram_init(void); 71extern int pSeries_nvram_init(void);
72extern int pmac_nvram_init(void); 72extern int pmac_nvram_init(void);
73extern int bpa_nvram_init(void);
73 74
74/* PowerMac specific nvram stuffs */ 75/* PowerMac specific nvram stuffs */
75 76
diff --git a/include/asm-ppc64/processor.h b/include/asm-ppc64/processor.h
index 3084099086a8..af28aa55d8c1 100644
--- a/include/asm-ppc64/processor.h
+++ b/include/asm-ppc64/processor.h
@@ -138,8 +138,16 @@
138#define SPRN_NIADORM 0x3F3 /* Hardware Implementation Register 2 */ 138#define SPRN_NIADORM 0x3F3 /* Hardware Implementation Register 2 */
139#define SPRN_HID4 0x3F4 /* 970 HID4 */ 139#define SPRN_HID4 0x3F4 /* 970 HID4 */
140#define SPRN_HID5 0x3F6 /* 970 HID5 */ 140#define SPRN_HID5 0x3F6 /* 970 HID5 */
141#define SPRN_TSC 0x3FD /* Thread switch control */ 141#define SPRN_HID6 0x3F9 /* BE HID 6 */
142#define SPRN_TST 0x3FC /* Thread switch timeout */ 142#define HID6_LB (0x0F<<12) /* Concurrent Large Page Modes */
143#define HID6_DLP (1<<20) /* Disable all large page modes (4K only) */
144#define SPRN_TSCR 0x399 /* Thread switch control on BE */
145#define SPRN_TTR 0x39A /* Thread switch timeout on BE */
146#define TSCR_DEC_ENABLE 0x200000 /* Decrementer Interrupt */
147#define TSCR_EE_ENABLE 0x100000 /* External Interrupt */
148#define TSCR_EE_BOOST 0x080000 /* External Interrupt Boost */
149#define SPRN_TSC 0x3FD /* Thread switch control on others */
150#define SPRN_TST 0x3FC /* Thread switch timeout on others */
143#define SPRN_L2CR 0x3F9 /* Level 2 Cache Control Regsiter */ 151#define SPRN_L2CR 0x3F9 /* Level 2 Cache Control Regsiter */
144#define SPRN_LR 0x008 /* Link Register */ 152#define SPRN_LR 0x008 /* Link Register */
145#define SPRN_PIR 0x3FF /* Processor Identification Register */ 153#define SPRN_PIR 0x3FF /* Processor Identification Register */
@@ -259,6 +267,7 @@
259#define PV_970FX 0x003C 267#define PV_970FX 0x003C
260#define PV_630 0x0040 268#define PV_630 0x0040
261#define PV_630p 0x0041 269#define PV_630p 0x0041
270#define PV_BE 0x0070
262 271
263/* Platforms supported by PPC64 */ 272/* Platforms supported by PPC64 */
264#define PLATFORM_PSERIES 0x0100 273#define PLATFORM_PSERIES 0x0100
@@ -267,6 +276,7 @@
267#define PLATFORM_LPAR 0x0001 276#define PLATFORM_LPAR 0x0001
268#define PLATFORM_POWERMAC 0x0400 277#define PLATFORM_POWERMAC 0x0400
269#define PLATFORM_MAPLE 0x0500 278#define PLATFORM_MAPLE 0x0500
279#define PLATFORM_BPA 0x1000
270 280
271/* Compatibility with drivers coming from PPC32 world */ 281/* Compatibility with drivers coming from PPC32 world */
272#define _machine (systemcfg->platform) 282#define _machine (systemcfg->platform)
@@ -278,6 +288,7 @@
278#define IC_INVALID 0 288#define IC_INVALID 0
279#define IC_OPEN_PIC 1 289#define IC_OPEN_PIC 1
280#define IC_PPC_XIC 2 290#define IC_PPC_XIC 2
291#define IC_BPA_IIC 3
281 292
282#define XGLUE(a,b) a##b 293#define XGLUE(a,b) a##b
283#define GLUE(a,b) XGLUE(a,b) 294#define GLUE(a,b) XGLUE(a,b)
diff --git a/include/asm-ppc64/rtas.h b/include/asm-ppc64/rtas.h
index a8ab0e9db84a..e7d1b5222802 100644
--- a/include/asm-ppc64/rtas.h
+++ b/include/asm-ppc64/rtas.h
@@ -186,8 +186,14 @@ extern int rtas_get_sensor(int sensor, int index, int *state);
186extern int rtas_get_power_level(int powerdomain, int *level); 186extern int rtas_get_power_level(int powerdomain, int *level);
187extern int rtas_set_power_level(int powerdomain, int level, int *setlevel); 187extern int rtas_set_power_level(int powerdomain, int level, int *setlevel);
188extern int rtas_set_indicator(int indicator, int index, int new_value); 188extern int rtas_set_indicator(int indicator, int index, int new_value);
189extern void rtas_progress(char *s, unsigned short hex);
189extern void rtas_initialize(void); 190extern void rtas_initialize(void);
190 191
192struct rtc_time;
193extern void rtas_get_boot_time(struct rtc_time *rtc_time);
194extern void rtas_get_rtc_time(struct rtc_time *rtc_time);
195extern int rtas_set_rtc_time(struct rtc_time *rtc_time);
196
191/* Given an RTAS status code of 9900..9905 compute the hinted delay */ 197/* Given an RTAS status code of 9900..9905 compute the hinted delay */
192unsigned int rtas_extended_busy_delay_time(int status); 198unsigned int rtas_extended_busy_delay_time(int status);
193static inline int rtas_is_extended_busy(int status) 199static inline int rtas_is_extended_busy(int status)
diff --git a/include/asm-ppc64/smp.h b/include/asm-ppc64/smp.h
index 8115ecb8feee..d86f742e9a21 100644
--- a/include/asm-ppc64/smp.h
+++ b/include/asm-ppc64/smp.h
@@ -85,6 +85,14 @@ extern void smp_generic_take_timebase(void);
85 85
86extern struct smp_ops_t *smp_ops; 86extern struct smp_ops_t *smp_ops;
87 87
88#ifdef CONFIG_PPC_PSERIES
89void vpa_init(int cpu);
90#else
91static inline void vpa_init(int cpu)
92{
93}
94#endif /* CONFIG_PPC_PSERIES */
95
88#endif /* __ASSEMBLY__ */ 96#endif /* __ASSEMBLY__ */
89 97
90#endif /* !(_PPC64_SMP_H) */ 98#endif /* !(_PPC64_SMP_H) */
diff --git a/include/asm-ppc64/time.h b/include/asm-ppc64/time.h
index 8d6e3760ee10..c6c762cad8b0 100644
--- a/include/asm-ppc64/time.h
+++ b/include/asm-ppc64/time.h
@@ -34,6 +34,15 @@ struct rtc_time;
34extern void to_tm(int tim, struct rtc_time * tm); 34extern void to_tm(int tim, struct rtc_time * tm);
35extern time_t last_rtc_update; 35extern time_t last_rtc_update;
36 36
37void generic_calibrate_decr(void);
38void setup_default_decr(void);
39
40/* Some sane defaults: 125 MHz timebase, 1GHz processor */
41extern unsigned long ppc_proc_freq;
42#define DEFAULT_PROC_FREQ (DEFAULT_TB_FREQ * 8)
43extern unsigned long ppc_tb_freq;
44#define DEFAULT_TB_FREQ 125000000UL
45
37/* 46/*
38 * By putting all of this stuff into a single struct we 47 * By putting all of this stuff into a single struct we
39 * reduce the number of cache lines touched by do_gettimeofday. 48 * reduce the number of cache lines touched by do_gettimeofday.