blob: 574e122ae1050b3e5d43fbbfe57e3076189efd4d [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Linus Torvalds1da177e2005-04-16 15:20:36 -07002
Jan Engelhardt0f217122007-04-30 21:37:55 +10003menuconfig MACINTOSH_DRIVERS
4 bool "Macintosh device drivers"
Soeren Sonnenburg45941d02007-02-08 14:20:38 -08005 depends on PPC || MAC || X86
Olaf Heringe2f1f192007-06-23 02:29:24 +02006 default y if (PPC_PMAC || MAC)
Jan Engelhardt06bfb7e2007-08-18 12:56:21 +02007 ---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.
Jan Engelhardt0f217122007-04-30 21:37:55 +100012
13if MACINTOSH_DRIVERS
Linus Torvalds1da177e2005-04-16 15:20:36 -070014
15config ADB
16 bool "Apple Desktop Bus (ADB) support"
Olaf Hering64c74de2005-07-27 11:44:16 -070017 depends on MAC || (PPC_PMAC && PPC32)
Linus Torvalds1da177e2005-04-16 15:20:36 -070018 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
Linus Torvalds1da177e2005-04-16 15:20:36 -070034config 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
Linus Torvalds1da177e2005-04-16 15:20:36 -070043# we want to change this to something like CONFIG_SYSCTRL_CUDA/PMU
44config ADB_CUDA
Finn Thainf74faec2016-12-31 19:56:26 -050045 bool "Support for Cuda/Egret based Macs and PowerMacs"
Linus Torvalds1da177e2005-04-16 15:20:36 -070046 depends on (ADB || PPC_PMAC) && !PPC_PMAC64
47 help
Finn Thainf74faec2016-12-31 19:56:26 -050048 This provides support for Cuda/Egret based Macintosh and
49 Power Macintosh systems. This includes most m68k based Macs,
50 most Old World PowerMacs, the first generation iMacs, the
51 Blue & White G3 and the "Yikes" G4 (PCI Graphics). All later
52 models should use CONFIG_ADB_PMU instead. It is safe to say Y
53 here even if your machine doesn't have a Cuda or Egret device.
Linus Torvalds1da177e2005-04-16 15:20:36 -070054
55 If unsure say Y.
56
57config ADB_PMU
Finn Thainc16a85a2018-07-02 04:21:19 -040058 bool "Support for PMU based PowerMacs and PowerBooks"
Finn Thainebd72222018-07-02 04:21:19 -040059 depends on PPC_PMAC || MAC
Linus Torvalds1da177e2005-04-16 15:20:36 -070060 help
61 On PowerBooks, iBooks, and recent iMacs and Power Macintoshes, the
62 PMU is an embedded microprocessor whose primary function is to
63 control system power, and battery charging on the portable models.
64 The PMU also controls the ADB (Apple Desktop Bus) which connects to
65 the keyboard and mouse on some machines, as well as the non-volatile
66 RAM and the RTC (real time clock) chip. Say Y to enable support for
67 this device; you should do so if your machine is one of those
68 mentioned above.
69
Johannes Berg70c39672006-06-21 12:11:16 +020070config ADB_PMU_LED
71 bool "Support for the Power/iBook front LED"
Finn Thainc2f028b2018-07-02 04:21:19 -040072 depends on PPC_PMAC && ADB_PMU
Paul Mackerras649e8572006-06-28 13:57:16 +100073 select NEW_LEDS
Johannes Berg70c39672006-06-21 12:11:16 +020074 select LEDS_CLASS
75 help
76 Support the front LED on Power/iBooks as a generic LED that can
77 be triggered by any of the supported triggers. To get the
78 behaviour of the old CONFIG_BLK_DEV_IDE_PMAC_BLINK, select this
Stephan Linz83e2c702016-06-10 07:59:58 +020079 and the disk LED trigger and configure appropriately through sysfs.
Johannes Berg70c39672006-06-21 12:11:16 +020080
Stephan Linz83e2c702016-06-10 07:59:58 +020081config ADB_PMU_LED_DISK
82 bool "Use front LED as DISK LED by default"
Johannes Bergd1a8df92006-07-03 14:28:14 +020083 depends on ADB_PMU_LED
Johannes Berg0bae35e2010-12-02 14:31:14 -080084 depends on LEDS_CLASS
Johannes Bergd1a8df92006-07-03 14:28:14 +020085 select LEDS_TRIGGERS
Stephan Linz83e2c702016-06-10 07:59:58 +020086 select LEDS_TRIGGER_DISK
Johannes Bergd1a8df92006-07-03 14:28:14 +020087 help
Stephan Linz83e2c702016-06-10 07:59:58 +020088 This option makes the front LED default to the disk trigger
89 so that it blinks on disk activity.
Johannes Bergd1a8df92006-07-03 14:28:14 +020090
Linus Torvalds1da177e2005-04-16 15:20:36 -070091config PMAC_SMU
92 bool "Support for SMU based PowerMacs"
93 depends on PPC_PMAC64
94 help
95 This option adds support for the newer G5 iMacs and PowerMacs based
96 on the "SMU" system control chip which replaces the old PMU.
97 If you don't know, say Y.
98
Linus Torvalds1da177e2005-04-16 15:20:36 -070099config PMAC_APM_EMU
100 tristate "APM emulation"
Johannes Bergb3028872007-03-20 05:18:02 +1100101 select APM_EMULATION
Johannes Berge358ae42007-06-02 19:13:44 +1000102 depends on ADB_PMU && PM && PPC32
Benjamin Herrenschmidt8c870932005-06-27 14:36:34 -0700103
104config PMAC_MEDIABAY
105 bool "Support PowerBook hotswap media bay"
Alexander Beregalovbcd71fe2009-04-17 00:15:13 +0000106 depends on PPC_PMAC && PPC32 && BLOCK
Benjamin Herrenschmidt8c870932005-06-27 14:36:34 -0700107 help
108 This option adds support for older PowerBook's hotswap media bay
109 that can contains batteries, floppy drives, or IDE devices. PCI
110 devices are not fully supported in the bay as I never had one to
111 try with
Linus Torvalds1da177e2005-04-16 15:20:36 -0700112
Linus Torvalds1da177e2005-04-16 15:20:36 -0700113config PMAC_BACKLIGHT
114 bool "Backlight control for LCD screens"
Finn Thainc2f028b2018-07-02 04:21:19 -0400115 depends on PPC_PMAC && ADB_PMU && FB = y && (BROKEN || !PPC64)
Michael Hanselmanne01af032006-07-10 04:44:45 -0700116 select FB_BACKLIGHT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700117 help
Michael Hanselmann5474c122006-06-25 05:47:08 -0700118 Say Y here to enable Macintosh specific extensions of the generic
119 backlight code. With this enabled, the brightness keys on older
120 PowerBooks will be enabled so you can change the screen brightness.
Frederik Schwarzer0211a9c2008-12-29 22:14:56 +0100121 Newer models should use a userspace daemon like pbbuttonsd.
Michael Hanselmann5474c122006-06-25 05:47:08 -0700122
123config PMAC_BACKLIGHT_LEGACY
124 bool "Provide legacy ioctl's on /dev/pmu for the backlight"
125 depends on PMAC_BACKLIGHT && (BROKEN || !PPC64)
126 help
127 Say Y if you want to enable legacy ioctl's on /dev/pmu. This is for
128 programs which use this old interface. New and updated programs
129 should use the backlight classes in sysfs.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700130
Linus Torvalds1da177e2005-04-16 15:20:36 -0700131config ADB_MACIO
132 bool "Include MacIO (CHRP) ADB driver"
133 depends on ADB && PPC_CHRP && !PPC_PMAC64
134 help
135 Say Y here to include direct support for the ADB controller in the
136 Hydra chip used on PowerPC Macintoshes of the CHRP type. (The Hydra
137 also includes a MESH II SCSI controller, DBDMA controller, VIA chip,
138 OpenPIC controller and two RS422/Geoports.)
139
140config INPUT_ADBHID
141 bool "Support for ADB input devices (keyboard, mice, ...)"
142 depends on ADB && INPUT=y
143 help
144 Say Y here if you want to have ADB (Apple Desktop Bus) HID devices
145 such as keyboards, mice, joysticks, trackpads or graphic tablets
146 handled by the input layer. If you say Y here, make sure to say Y to
Aaro Koskinenf27b86d2015-10-01 22:41:40 +0300147 the corresponding drivers "Mouse Support" (CONFIG_INPUT_MOUSEDEV) and
148 "Event interface support" (CONFIG_INPUT_EVDEV) as well.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700149
150 If unsure, say Y.
151
152config MAC_EMUMOUSEBTN
Dmitry Torokhov429722e2010-01-30 01:44:20 -0800153 tristate "Support for mouse button 2+3 emulation"
154 depends on SYSCTL && INPUT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700155 help
156 This provides generic support for emulating the 2nd and 3rd mouse
157 button with keypresses. If you say Y here, the emulation is still
158 disabled by default. The emulation is controlled by these sysctl
159 entries:
160 /proc/sys/dev/mac_hid/mouse_button_emulation
161 /proc/sys/dev/mac_hid/mouse_button2_keycode
162 /proc/sys/dev/mac_hid/mouse_button3_keycode
163
164 If you have an Apple machine with a 1-button mouse, say Y here.
165
Dmitry Torokhov429722e2010-01-30 01:44:20 -0800166 To compile this driver as a module, choose M here: the
167 module will be called mac_hid.
168
Linus Torvalds1da177e2005-04-16 15:20:36 -0700169config THERM_WINDTUNNEL
170 tristate "Support for thermal management on Windtunnel G4s"
Benjamin Herrenschmidta28d3af2006-01-07 11:35:26 +1100171 depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700172 help
173 This driver provides some thermostat and fan control for the desktop
174 G4 "Windtunnel"
175
176config THERM_ADT746X
177 tristate "Support for thermal mgmnt on laptops with ADT 746x chipset"
Benjamin Herrenschmidta28d3af2006-01-07 11:35:26 +1100178 depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700179 help
180 This driver provides some thermostat and fan control for the
Matt LaPlante09509602006-10-03 22:31:37 +0200181 iBook G4, and the ATI based aluminium PowerBooks, allowing slightly
Linus Torvalds1da177e2005-04-16 15:20:36 -0700182 better fan behaviour by default, and some manual control.
183
Benjamin Herrenschmidt75722d32005-11-07 16:08:17 +1100184config WINDFARM
185 tristate "New PowerMac thermal control infrastructure"
Al Viro6f36d172006-06-23 02:05:03 -0700186 depends on PPC
Benjamin Herrenschmidt75722d32005-11-07 16:08:17 +1100187
188config WINDFARM_PM81
189 tristate "Support for thermal management on iMac G5"
190 depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU
Benjamin Herrenschmidta28d3af2006-01-07 11:35:26 +1100191 select I2C_POWERMAC
Benjamin Herrenschmidt75722d32005-11-07 16:08:17 +1100192 help
193 This driver provides thermal control for the iMacG5
194
Benjamin Herrenschmidt6cd32092012-04-29 15:42:27 +0000195config WINDFARM_PM72
196 tristate "Support for thermal management on PowerMac G5 (AGP)"
197 depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && ADB_PMU
198 select I2C_POWERMAC
199 help
200 This driver provides thermal control for the PowerMac G5
201 "AGP" variants (PowerMac 7,2 and 7,3)
202
203config WINDFARM_RM31
204 tristate "Support for thermal management on Xserve G5"
205 depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && ADB_PMU
206 select I2C_POWERMAC
207 help
208 This driver provides thermal control for the Xserve G5
209 (RackMac3,1)
210
Benjamin Herrenschmidt75722d32005-11-07 16:08:17 +1100211config WINDFARM_PM91
212 tristate "Support for thermal management on PowerMac9,1"
213 depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU
Benjamin Herrenschmidta28d3af2006-01-07 11:35:26 +1100214 select I2C_POWERMAC
Benjamin Herrenschmidt75722d32005-11-07 16:08:17 +1100215 help
216 This driver provides thermal control for the PowerMac9,1
217 which is the recent (SMU based) single CPU desktop G5
218
Benjamin Herrenschmidtac171c42006-02-08 16:42:51 +1100219config WINDFARM_PM112
220 tristate "Support for thermal management on PowerMac11,2"
221 depends on WINDFARM && I2C && PMAC_SMU
Linus Torvaldse5ea0a92006-02-08 07:51:17 -0800222 select I2C_POWERMAC
Benjamin Herrenschmidtac171c42006-02-08 16:42:51 +1100223 help
224 This driver provides thermal control for the PowerMac11,2
225 which are the recent dual and quad G5 machines using the
226 970MP dual-core processor.
Benjamin Herrenschmidt75722d32005-11-07 16:08:17 +1100227
Étienne Bersac80ff9742008-04-29 15:39:55 +1000228config WINDFARM_PM121
229 tristate "Support for thermal management on PowerMac12,1"
230 depends on WINDFARM && I2C && PMAC_SMU
231 select I2C_POWERMAC
232 help
233 This driver provides thermal control for the PowerMac12,1
234 which is the iMac G5 (iSight).
235
Linus Torvalds1da177e2005-04-16 15:20:36 -0700236config ANSLCD
237 tristate "Support for ANS LCD display"
238 depends on ADB_CUDA && PPC_PMAC
239
Benjamin Herrenschmidt3e00a5a2006-11-16 14:03:33 +1100240config PMAC_RACKMETER
241 tristate "Support for Apple XServe front panel LEDs"
242 depends on PPC_PMAC
243 help
David Sterba3dde6ad2007-05-09 07:12:20 +0200244 This driver provides some support to control the front panel
Benjamin Herrenschmidt3e00a5a2006-11-16 14:03:33 +1100245 blue LEDs "vu-meter" of the XServer macs.
246
Jean Delvarebd5f47e2010-10-28 20:31:50 +0200247config SENSORS_AMS
248 tristate "Apple Motion Sensor driver"
Kees Cook80ec2132013-01-16 18:53:42 -0800249 depends on PPC_PMAC && !PPC64 && INPUT && ((ADB_PMU && I2C = y) || (ADB_PMU && !I2C) || I2C)
Jean Delvarebd5f47e2010-10-28 20:31:50 +0200250 select INPUT_POLLDEV
251 help
252 Support for the motion sensor included in PowerBooks. Includes
253 implementations for PMU and I2C.
254
255 This driver can also be built as a module. If so, the module
256 will be called ams.
257
258config SENSORS_AMS_PMU
259 bool "PMU variant"
260 depends on SENSORS_AMS && ADB_PMU
261 default y
262 help
263 PMU variant of motion sensor, found in late 2005 PowerBooks.
264
265config SENSORS_AMS_I2C
266 bool "I2C variant"
267 depends on SENSORS_AMS && I2C
268 default y
269 help
270 I2C variant of motion sensor, found in early 2005 PowerBooks and
271 iBooks.
272
Jan Engelhardt0f217122007-04-30 21:37:55 +1000273endif # MACINTOSH_DRIVERS