Merge tag 'for-6.4-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave...
[platform/kernel/linux-rpi.git] / drivers / macintosh / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2
3 menuconfig 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
13 if MACINTOSH_DRIVERS
14
15 config 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
25 config 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
34 config 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
44 config 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
58 config 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
72 config ADB_PMU_EVENT
73         def_bool y
74         depends on ADB_PMU && INPUT=y
75
76 config 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
87 config 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
98 config 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
106 config PMAC_APM_EMU
107         tristate "APM emulation"
108         select APM_EMULATION
109         depends on ADB_PMU && PM && PPC32
110
111 config 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
120 config PMAC_BACKLIGHT
121         bool "Backlight control for LCD screens"
122         depends on PPC_PMAC && ADB_PMU && FB = y && (BROKEN || !PPC64)
123         select FB_BACKLIGHT
124         help
125           Say Y here to enable Macintosh specific extensions of the generic
126           backlight code. With this enabled, the brightness keys on older
127           PowerBooks will be enabled so you can change the screen brightness.
128           Newer models should use a userspace daemon like pbbuttonsd.
129
130 config PMAC_BACKLIGHT_LEGACY
131         bool "Provide legacy ioctl's on /dev/pmu for the backlight"
132         depends on PMAC_BACKLIGHT && (BROKEN || !PPC64)
133         help
134           Say Y if you want to enable legacy ioctl's on /dev/pmu. This is for
135           programs which use this old interface. New and updated programs
136           should use the backlight classes in sysfs.
137
138 config ADB_MACIO
139         bool "Include MacIO (CHRP) ADB driver"
140         depends on ADB && PPC_CHRP && !PPC_PMAC64
141         help
142           Say Y here to include direct support for the ADB controller in the
143           Hydra chip used on PowerPC Macintoshes of the CHRP type.  (The Hydra
144           also includes a MESH II SCSI controller, DBDMA controller, VIA chip,
145           OpenPIC controller and two RS422/Geoports.)
146
147 config INPUT_ADBHID
148         bool "Support for ADB input devices (keyboard, mice, ...)"
149         depends on ADB && INPUT=y
150         help
151           Say Y here if you want to have ADB (Apple Desktop Bus) HID devices
152           such as keyboards, mice, joysticks, trackpads  or graphic tablets
153           handled by the input layer.  If you say Y here, make sure to say Y to
154           the corresponding drivers "Mouse Support" (CONFIG_INPUT_MOUSEDEV) and
155           "Event interface support" (CONFIG_INPUT_EVDEV) as well.
156
157           If unsure, say Y.
158
159 config MAC_EMUMOUSEBTN
160         tristate "Support for mouse button 2+3 emulation"
161         depends on SYSCTL && INPUT
162         help
163           This provides generic support for emulating the 2nd and 3rd mouse
164           button with keypresses.  If you say Y here, the emulation is still
165           disabled by default.  The emulation is controlled by these sysctl
166           entries:
167           /proc/sys/dev/mac_hid/mouse_button_emulation
168           /proc/sys/dev/mac_hid/mouse_button2_keycode
169           /proc/sys/dev/mac_hid/mouse_button3_keycode
170
171           If you have an Apple machine with a 1-button mouse, say Y here.
172
173           To compile this driver as a module, choose M here: the
174           module will be called mac_hid.
175
176 config THERM_WINDTUNNEL
177         tristate "Support for thermal management on Windtunnel G4s"
178         depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64
179         help
180           This driver provides some thermostat and fan control for the desktop
181           G4 "Windtunnel"
182
183 config THERM_ADT746X
184         tristate "Support for thermal mgmnt on laptops with ADT 746x chipset"
185         depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64
186         help
187           This driver provides some thermostat and fan control for the
188           iBook G4, and the ATI based aluminium PowerBooks, allowing slightly
189           better fan behaviour by default, and some manual control.
190
191 config WINDFARM
192         tristate "New PowerMac thermal control infrastructure"
193         depends on PPC
194
195 config WINDFARM_PM81
196         tristate "Support for thermal management on iMac G5"
197         depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU
198         select I2C_POWERMAC
199         help
200           This driver provides thermal control for the iMacG5
201
202 config WINDFARM_PM72
203         tristate "Support for thermal management on PowerMac G5 (AGP)"
204         depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && ADB_PMU
205         select I2C_POWERMAC
206         help
207           This driver provides thermal control for the PowerMac G5
208           "AGP" variants (PowerMac 7,2 and 7,3)
209
210 config WINDFARM_RM31
211         tristate "Support for thermal management on Xserve G5"
212         depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && ADB_PMU
213         select I2C_POWERMAC
214         help
215           This driver provides thermal control for the Xserve G5
216           (RackMac3,1)
217
218 config WINDFARM_PM91
219         tristate "Support for thermal management on PowerMac9,1"
220         depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU
221         select I2C_POWERMAC
222         help
223           This driver provides thermal control for the PowerMac9,1
224           which is the recent (SMU based) single CPU desktop G5
225
226 config WINDFARM_PM112
227         tristate "Support for thermal management on PowerMac11,2"
228         depends on WINDFARM && I2C && PMAC_SMU
229         select I2C_POWERMAC
230         help
231           This driver provides thermal control for the PowerMac11,2
232           which are the recent dual and quad G5 machines using the
233           970MP dual-core processor.
234
235 config WINDFARM_PM121
236         tristate "Support for thermal management on PowerMac12,1"
237         depends on WINDFARM && I2C && PMAC_SMU
238         select I2C_POWERMAC
239         help
240           This driver provides thermal control for the PowerMac12,1
241           which is the iMac G5 (iSight).
242
243 config ANSLCD
244         tristate "Support for ANS LCD display"
245         depends on ADB_CUDA && PPC_PMAC
246
247 config PMAC_RACKMETER
248         tristate "Support for Apple XServe front panel LEDs"
249         depends on PPC_PMAC
250         help
251           This driver provides some support to control the front panel
252           blue LEDs "vu-meter" of the XServer macs.
253
254 config SENSORS_AMS
255         tristate "Apple Motion Sensor driver"
256         depends on PPC_PMAC && !PPC64 && INPUT && ((ADB_PMU && I2C = y) || (ADB_PMU && !I2C) || I2C)
257         help
258           Support for the motion sensor included in PowerBooks. Includes
259           implementations for PMU and I2C.
260
261           This driver can also be built as a module. If so, the module
262           will be called ams.
263
264 config SENSORS_AMS_PMU
265         bool "PMU variant"
266         depends on SENSORS_AMS && ADB_PMU
267         default y
268         help
269           PMU variant of motion sensor, found in late 2005 PowerBooks.
270
271 config SENSORS_AMS_I2C
272         bool "I2C variant"
273         depends on SENSORS_AMS && I2C
274         default y
275         help
276           I2C variant of motion sensor, found in early 2005 PowerBooks and
277           iBooks.
278
279 endif # MACINTOSH_DRIVERS