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