diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-06-23 12:49:55 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-06-23 12:49:55 -0400 |
commit | 24665cd00dd06c741ef6268515ca9e6d3cda5c57 (patch) | |
tree | d55e925db2b78bc6529965fa6b1df07a76b56610 /include/asm-ppc64 | |
parent | fed2fc18a4567d613cd35115322257c6c6c710e9 (diff) | |
parent | d7152fe14cad075d6dd4ee4194acd131aed0244e (diff) |
Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/paulus/ppc64-2.6
Diffstat (limited to 'include/asm-ppc64')
-rw-r--r-- | include/asm-ppc64/machdep.h | 1 | ||||
-rw-r--r-- | include/asm-ppc64/mmu.h | 5 | ||||
-rw-r--r-- | include/asm-ppc64/nvram.h | 1 | ||||
-rw-r--r-- | include/asm-ppc64/processor.h | 15 | ||||
-rw-r--r-- | include/asm-ppc64/rtas.h | 6 | ||||
-rw-r--r-- | include/asm-ppc64/smp.h | 8 | ||||
-rw-r--r-- | include/asm-ppc64/time.h | 9 |
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 | ||
71 | extern int pSeries_nvram_init(void); | 71 | extern int pSeries_nvram_init(void); |
72 | extern int pmac_nvram_init(void); | 72 | extern int pmac_nvram_init(void); |
73 | extern 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); | |||
186 | extern int rtas_get_power_level(int powerdomain, int *level); | 186 | extern int rtas_get_power_level(int powerdomain, int *level); |
187 | extern int rtas_set_power_level(int powerdomain, int level, int *setlevel); | 187 | extern int rtas_set_power_level(int powerdomain, int level, int *setlevel); |
188 | extern int rtas_set_indicator(int indicator, int index, int new_value); | 188 | extern int rtas_set_indicator(int indicator, int index, int new_value); |
189 | extern void rtas_progress(char *s, unsigned short hex); | ||
189 | extern void rtas_initialize(void); | 190 | extern void rtas_initialize(void); |
190 | 191 | ||
192 | struct rtc_time; | ||
193 | extern void rtas_get_boot_time(struct rtc_time *rtc_time); | ||
194 | extern void rtas_get_rtc_time(struct rtc_time *rtc_time); | ||
195 | extern 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 */ |
192 | unsigned int rtas_extended_busy_delay_time(int status); | 198 | unsigned int rtas_extended_busy_delay_time(int status); |
193 | static inline int rtas_is_extended_busy(int status) | 199 | static 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 | ||
86 | extern struct smp_ops_t *smp_ops; | 86 | extern struct smp_ops_t *smp_ops; |
87 | 87 | ||
88 | #ifdef CONFIG_PPC_PSERIES | ||
89 | void vpa_init(int cpu); | ||
90 | #else | ||
91 | static 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; | |||
34 | extern void to_tm(int tim, struct rtc_time * tm); | 34 | extern void to_tm(int tim, struct rtc_time * tm); |
35 | extern time_t last_rtc_update; | 35 | extern time_t last_rtc_update; |
36 | 36 | ||
37 | void generic_calibrate_decr(void); | ||
38 | void setup_default_decr(void); | ||
39 | |||
40 | /* Some sane defaults: 125 MHz timebase, 1GHz processor */ | ||
41 | extern unsigned long ppc_proc_freq; | ||
42 | #define DEFAULT_PROC_FREQ (DEFAULT_TB_FREQ * 8) | ||
43 | extern 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. |