161ab797ad4c8dba338b1396b511b834ec733116
[powerpc.git] / arch / powerpc / platforms / Kconfig
1 menu "Platform support"
2         depends on PPC64 || CLASSIC32
3
4 choice
5         prompt "Machine type"
6         default PPC_MULTIPLATFORM
7
8 config PPC_MULTIPLATFORM
9         bool "Generic desktop/server/laptop"
10         help
11           Select this option if configuring for an IBM pSeries or
12           RS/6000 machine, an Apple machine, or a PReP, CHRP,
13           Maple or Cell-based machine.
14
15 config EMBEDDED6xx
16         bool "Embedded 6xx/7xx/7xxx-based board"
17         depends on PPC32 && (BROKEN||BROKEN_ON_SMP)
18
19 config APUS
20         bool "Amiga-APUS"
21         depends on PPC32 && BROKEN
22         help
23           Select APUS if configuring for a PowerUP Amiga.
24           More information is available at:
25           <http://linux-apus.sourceforge.net/>.
26 endchoice
27
28 config QUICC_ENGINE
29         bool
30         help
31           The QUICC Engine (QE) is a new generation of communications
32           coprocessors on Freescale embedded CPUs (akin to CPM in older chips).
33           Selecting this option means that you wish to build a kernel
34           for a machine with a QE coprocessor.
35
36 source "arch/powerpc/platforms/pseries/Kconfig"
37 source "arch/powerpc/platforms/iseries/Kconfig"
38 source "arch/powerpc/platforms/chrp/Kconfig"
39 source "arch/powerpc/platforms/52xx/Kconfig"
40 source "arch/powerpc/platforms/powermac/Kconfig"
41 source "arch/powerpc/platforms/prep/Kconfig"
42 source "arch/powerpc/platforms/maple/Kconfig"
43 source "arch/powerpc/platforms/pasemi/Kconfig"
44 source arch/powerpc/platforms/celleb/Kconfig
45 source arch/powerpc/platforms/ps3/Kconfig
46 source arch/powerpc/platforms/cell/Kconfig
47
48 config PPC_NATIVE
49         bool
50         depends on PPC_MULTIPLATFORM
51         help
52           Support for running natively on the hardware, i.e. without
53           a hypervisor. This option is not user-selectable but should
54           be selected by all platforms that need it.
55
56 config UDBG_RTAS_CONSOLE
57         bool "RTAS based debug console"
58         depends on PPC_RTAS
59         default n
60
61 config PPC_UDBG_BEAT
62         bool "BEAT based debug console"
63         depends on PPC_CELLEB
64         default n
65
66 config XICS
67         depends on PPC_PSERIES
68         bool
69         default y
70
71 config U3_DART
72         bool
73         depends on PPC_MULTIPLATFORM && PPC64
74         default n
75
76 config PPC_RTAS
77         bool
78         default n
79
80 config RTAS_ERROR_LOGGING
81         bool
82         depends on PPC_RTAS
83         default n
84
85 config RTAS_PROC
86         bool "Proc interface to RTAS"
87         depends on PPC_RTAS
88         default y
89
90 config RTAS_FLASH
91         tristate "Firmware flash interface"
92         depends on PPC64 && RTAS_PROC
93
94 config PPC_PMI
95         tristate "Support for PMI"
96         depends PPC_IBM_CELL_BLADE
97         help
98           PMI (Platform Management Interrupt) is a way to
99           communicate with the BMC (Baseboard Mangement Controller).
100           It is used in some IBM Cell blades.
101         default m
102
103 config MMIO_NVRAM
104         bool
105         default n
106
107 config MPIC_BROKEN_U3
108         bool
109         depends on PPC_MAPLE
110         default y
111
112 config IBMVIO
113         depends on PPC_PSERIES || PPC_ISERIES
114         bool
115         default y
116
117 config IBMEBUS
118         depends on PPC_PSERIES
119         bool "Support for GX bus based adapters"
120         help
121           Bus device driver for GX bus based adapters.
122
123 config PPC_MPC106
124         bool
125         default n
126
127 config PPC_970_NAP
128         bool
129         default n
130
131 config PPC_INDIRECT_IO
132         bool
133         select GENERIC_IOMAP
134         default n
135
136 config GENERIC_IOMAP
137         bool
138         default n
139
140 source "drivers/cpufreq/Kconfig"
141
142 config CPU_FREQ_PMAC
143         bool "Support for Apple PowerBooks"
144         depends on CPU_FREQ && ADB_PMU && PPC32
145         select CPU_FREQ_TABLE
146         help
147           This adds support for frequency switching on Apple PowerBooks,
148           this currently includes some models of iBook & Titanium
149           PowerBook.
150
151 config CPU_FREQ_PMAC64
152         bool "Support for some Apple G5s"
153         depends on CPU_FREQ && PPC64
154         select CPU_FREQ_TABLE
155         help
156           This adds support for frequency switching on Apple iMac G5,
157           and some of the more recent desktop G5 machines as well.
158
159 config PPC601_SYNC_FIX
160         bool "Workarounds for PPC601 bugs"
161         depends on 6xx && (PPC_PREP || PPC_PMAC)
162         help
163           Some versions of the PPC601 (the first PowerPC chip) have bugs which
164           mean that extra synchronization instructions are required near
165           certain instructions, typically those that make major changes to the
166           CPU state.  These extra instructions reduce performance slightly.
167           If you say N here, these extra instructions will not be included,
168           resulting in a kernel which will run faster but may not run at all
169           on some systems with the PPC601 chip.
170
171           If in doubt, say Y here.
172
173 config TAU
174         bool "On-chip CPU temperature sensor support"
175         depends on 6xx
176         help
177           G3 and G4 processors have an on-chip temperature sensor called the
178           'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die
179           temperature within 2-4 degrees Celsius. This option shows the current
180           on-die temperature in /proc/cpuinfo if the cpu supports it.
181
182           Unfortunately, on some chip revisions, this sensor is very inaccurate
183           and in many cases, does not work at all, so don't assume the cpu
184           temp is actually what /proc/cpuinfo says it is.
185
186 config TAU_INT
187         bool "Interrupt driven TAU driver (DANGEROUS)"
188         depends on TAU
189         ---help---
190           The TAU supports an interrupt driven mode which causes an interrupt
191           whenever the temperature goes out of range. This is the fastest way
192           to get notified the temp has exceeded a range. With this option off,
193           a timer is used to re-check the temperature periodically.
194
195           However, on some cpus it appears that the TAU interrupt hardware
196           is buggy and can cause a situation which would lead unexplained hard
197           lockups.
198
199           Unless you are extending the TAU driver, or enjoy kernel/hardware
200           debugging, leave this option off.
201
202 config TAU_AVERAGE
203         bool "Average high and low temp"
204         depends on TAU
205         ---help---
206           The TAU hardware can compare the temperature to an upper and lower
207           bound.  The default behavior is to show both the upper and lower
208           bound in /proc/cpuinfo. If the range is large, the temperature is
209           either changing a lot, or the TAU hardware is broken (likely on some
210           G4's). If the range is small (around 4 degrees), the temperature is
211           relatively stable.  If you say Y here, a single temperature value,
212           halfway between the upper and lower bounds, will be reported in
213           /proc/cpuinfo.
214
215           If in doubt, say N here.
216
217 endmenu