xref: /linux/drivers/macintosh/Kconfig (revision af215c980c1fbf1ca01675b128b0dd194745b880)
1# SPDX-License-Identifier: GPL-2.0-only
2
3menuconfig MACINTOSH_DRIVERS
4	bool "Macintosh device drivers"
5	depends on PPC || MAC || X86
6	default y if (PPC_PMAC || MAC)
7	help
8	  Say Y here to get to see options for devices used with Macintosh
9	  computers. This option alone does not add any kernel code.
10
11	  If you say N, all options in this submenu will be skipped and disabled.
12
13if MACINTOSH_DRIVERS
14
15config ADB
16	bool "Apple Desktop Bus (ADB) support"
17	depends on MAC || (PPC_PMAC && PPC32)
18	help
19	  Apple Desktop Bus (ADB) support is for support of devices which
20	  are connected to an ADB port.  ADB devices tend to have 4 pins.
21	  If you have an Apple Macintosh prior to the iMac, an iBook or
22	  PowerBook, or a "Blue and White G3", you probably want to say Y
23	  here.  Otherwise say N.
24
25config ADB_MACII
26	bool "Include Mac II ADB driver"
27	depends on ADB && MAC
28	help
29	  Say Y here if want your kernel to support Macintosh systems that use
30	  the Mac II style ADB.  This includes the II, IIx, IIcx, SE/30, IIci,
31	  Quadra 610, Quadra 650, Quadra 700, Quadra 800, Centris 610 and
32	  Centris 650.
33
34config ADB_IOP
35	bool "Include IOP (IIfx/Quadra 9x0) ADB driver"
36	depends on ADB && MAC
37	help
38	  The I/O Processor (IOP) is an Apple custom IC designed to provide
39	  intelligent support for I/O controllers.  It is described at
40	  <http://www.angelfire.com/ca2/dev68k/iopdesc.html> to enable direct
41	  support for it, say 'Y' here.
42
43# we want to change this to something like CONFIG_SYSCTRL_CUDA/PMU
44config ADB_CUDA
45	bool "Support for Cuda/Egret based Macs and PowerMacs"
46	depends on (ADB || PPC_PMAC) && !PPC_PMAC64
47	select RTC_LIB
48	help
49	  This provides support for Cuda/Egret based Macintosh and
50	  Power Macintosh systems. This includes most m68k based Macs,
51	  most Old World PowerMacs, the first generation iMacs, the
52	  Blue & White G3 and the "Yikes" G4 (PCI Graphics). All later
53	  models should use CONFIG_ADB_PMU instead. It is safe to say Y
54	  here even if your machine doesn't have a Cuda or Egret device.
55
56	  If unsure say Y.
57
58config ADB_PMU
59	bool "Support for PMU based PowerMacs and PowerBooks"
60	depends on PPC_PMAC || MAC
61	select RTC_LIB
62	help
63	  On PowerBooks, iBooks, and recent iMacs and Power Macintoshes, the
64	  PMU is an embedded microprocessor whose primary function is to
65	  control system power, and battery charging on the portable models.
66	  The PMU also controls the ADB (Apple Desktop Bus) which connects to
67	  the keyboard and mouse on some machines, as well as the non-volatile
68	  RAM and the RTC (real time clock) chip.  Say Y to enable support for
69	  this device; you should do so if your machine is one of those
70	  mentioned above.
71
72config ADB_PMU_EVENT
73	def_bool y
74	depends on ADB_PMU && INPUT=y
75
76config ADB_PMU_LED
77	bool "Support for the Power/iBook front LED"
78	depends on PPC_PMAC && ADB_PMU
79	select NEW_LEDS
80	select LEDS_CLASS
81	help
82	  Support the front LED on Power/iBooks as a generic LED that can
83	  be triggered by any of the supported triggers. To get the
84	  behaviour of the old CONFIG_BLK_DEV_IDE_PMAC_BLINK, select this
85	  and the disk LED trigger and configure appropriately through sysfs.
86
87config ADB_PMU_LED_DISK
88	bool "Use front LED as DISK LED by default"
89	depends on ATA
90	depends on ADB_PMU_LED
91	depends on LEDS_CLASS
92	select LEDS_TRIGGERS
93	select LEDS_TRIGGER_DISK
94	help
95	  This option makes the front LED default to the disk trigger
96	  so that it blinks on disk activity.
97
98config PMAC_SMU
99	bool "Support for SMU  based PowerMacs"
100	depends on PPC_PMAC64
101	help
102	  This option adds support for the newer G5 iMacs and PowerMacs based
103	  on the "SMU" system control chip which replaces the old PMU.
104	  If you don't know, say Y.
105
106config PMAC_APM_EMU
107	tristate "APM emulation"
108	select APM_EMULATION
109	depends on ADB_PMU && PM && PPC32
110
111config PMAC_MEDIABAY
112	bool "Support PowerBook hotswap media bay"
113	depends on PPC_PMAC && PPC32 && BLOCK
114	help
115	  This option adds support for older PowerBook's hotswap media bay
116	  that can contains batteries, floppy drives, or IDE devices. PCI
117	  devices are not fully supported in the bay as I never had one to
118	  try with
119
120config PMAC_BACKLIGHT
121	bool "Backlight control for LCD screens"
122	depends on PPC_PMAC && ADB_PMU && FB = y && (BROKEN || !PPC64)
123	depends on BACKLIGHT_CLASS_DEVICE=y
124	select FB_BACKLIGHT
125	help
126	  Say Y here to enable Macintosh specific extensions of the generic
127	  backlight code. With this enabled, the brightness keys on older
128	  PowerBooks will be enabled so you can change the screen brightness.
129	  Newer models should use a userspace daemon like pbbuttonsd.
130
131config PMAC_BACKLIGHT_LEGACY
132	bool "Provide legacy ioctl's on /dev/pmu for the backlight"
133	depends on PMAC_BACKLIGHT && (BROKEN || !PPC64)
134	help
135	  Say Y if you want to enable legacy ioctl's on /dev/pmu. This is for
136	  programs which use this old interface. New and updated programs
137	  should use the backlight classes in sysfs.
138
139config ADB_MACIO
140	bool "Include MacIO (CHRP) ADB driver"
141	depends on ADB && PPC_CHRP && !PPC_PMAC64
142	help
143	  Say Y here to include direct support for the ADB controller in the
144	  Hydra chip used on PowerPC Macintoshes of the CHRP type.  (The Hydra
145	  also includes a MESH II SCSI controller, DBDMA controller, VIA chip,
146	  OpenPIC controller and two RS422/Geoports.)
147
148config INPUT_ADBHID
149	bool "Support for ADB input devices (keyboard, mice, ...)"
150	depends on ADB && INPUT=y
151	help
152	  Say Y here if you want to have ADB (Apple Desktop Bus) HID devices
153	  such as keyboards, mice, joysticks, trackpads  or graphic tablets
154	  handled by the input layer.  If you say Y here, make sure to say Y to
155	  the corresponding drivers "Mouse Support" (CONFIG_INPUT_MOUSEDEV) and
156	  "Event interface support" (CONFIG_INPUT_EVDEV) as well.
157
158	  If unsure, say Y.
159
160config MAC_EMUMOUSEBTN
161	tristate "Support for mouse button 2+3 emulation"
162	depends on SYSCTL && INPUT
163	help
164	  This provides generic support for emulating the 2nd and 3rd mouse
165	  button with keypresses.  If you say Y here, the emulation is still
166	  disabled by default.  The emulation is controlled by these sysctl
167	  entries:
168	  /proc/sys/dev/mac_hid/mouse_button_emulation
169	  /proc/sys/dev/mac_hid/mouse_button2_keycode
170	  /proc/sys/dev/mac_hid/mouse_button3_keycode
171
172	  If you have an Apple machine with a 1-button mouse, say Y here.
173
174	  To compile this driver as a module, choose M here: the
175	  module will be called mac_hid.
176
177config THERM_WINDTUNNEL
178	tristate "Support for thermal management on Windtunnel G4s"
179	depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64
180	help
181	  This driver provides some thermostat and fan control for the desktop
182	  G4 "Windtunnel"
183
184config THERM_ADT746X
185	tristate "Support for thermal mgmnt on laptops with ADT 746x chipset"
186	depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64
187	help
188	  This driver provides some thermostat and fan control for the
189	  iBook G4, and the ATI based aluminium PowerBooks, allowing slightly
190	  better fan behaviour by default, and some manual control.
191
192config WINDFARM
193	tristate "New PowerMac thermal control infrastructure"
194	depends on PPC
195
196config WINDFARM_PM81
197	tristate "Support for thermal management on iMac G5"
198	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU
199	select I2C_POWERMAC
200	help
201	  This driver provides thermal control for the iMacG5
202
203config WINDFARM_PM72
204	tristate "Support for thermal management on PowerMac G5 (AGP)"
205	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && ADB_PMU
206	select I2C_POWERMAC
207	help
208	  This driver provides thermal control for the PowerMac G5
209	  "AGP" variants (PowerMac 7,2 and 7,3)
210
211config WINDFARM_RM31
212	tristate "Support for thermal management on Xserve G5"
213	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && ADB_PMU
214	select I2C_POWERMAC
215	help
216	  This driver provides thermal control for the Xserve G5
217	  (RackMac3,1)
218
219config WINDFARM_PM91
220	tristate "Support for thermal management on PowerMac9,1"
221	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU
222	select I2C_POWERMAC
223	help
224	  This driver provides thermal control for the PowerMac9,1
225	  which is the recent (SMU based) single CPU desktop G5
226
227config WINDFARM_PM112
228	tristate "Support for thermal management on PowerMac11,2"
229	depends on WINDFARM && I2C && PMAC_SMU
230	select I2C_POWERMAC
231	help
232	  This driver provides thermal control for the PowerMac11,2
233	  which are the recent dual and quad G5 machines using the
234	  970MP dual-core processor.
235
236config WINDFARM_PM121
237	tristate "Support for thermal management on PowerMac12,1"
238	depends on WINDFARM && I2C && PMAC_SMU
239	select I2C_POWERMAC
240	help
241	  This driver provides thermal control for the PowerMac12,1
242	  which is the iMac G5 (iSight).
243
244config ANSLCD
245	tristate "Support for ANS LCD display"
246	depends on ADB_CUDA && PPC_PMAC
247
248config PMAC_RACKMETER
249	tristate "Support for Apple XServe front panel LEDs"
250	depends on PPC_PMAC
251	help
252	  This driver provides some support to control the front panel
253	  blue LEDs "vu-meter" of the XServer macs.
254
255config SENSORS_AMS
256	tristate "Apple Motion Sensor driver"
257	depends on PPC_PMAC && !PPC64 && INPUT && ((ADB_PMU && I2C = y) || (ADB_PMU && !I2C) || I2C)
258	help
259	  Support for the motion sensor included in PowerBooks. Includes
260	  implementations for PMU and I2C.
261
262	  This driver can also be built as a module. If so, the module
263	  will be called ams.
264
265config SENSORS_AMS_PMU
266	bool "PMU variant" if SENSORS_AMS_I2C
267	depends on SENSORS_AMS && ADB_PMU
268	default y
269	help
270	  PMU variant of motion sensor, found in late 2005 PowerBooks.
271
272config SENSORS_AMS_I2C
273	bool "I2C variant"
274	depends on SENSORS_AMS && I2C
275	default y
276	help
277	  I2C variant of motion sensor, found in early 2005 PowerBooks and
278	  iBooks.
279
280endif # MACINTOSH_DRIVERS
281