xref: /linux/drivers/macintosh/Kconfig (revision af215c980c1fbf1ca01675b128b0dd194745b880)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
21da177e4SLinus Torvalds
30f21712dSJan Engelhardtmenuconfig MACINTOSH_DRIVERS
40f21712dSJan Engelhardt	bool "Macintosh device drivers"
545941d04SSoeren Sonnenburg	depends on PPC || MAC || X86
6e2f1f192SOlaf Hering	default y if (PPC_PMAC || MAC)
7a7f7f624SMasahiro Yamada	help
806bfb7ebSJan Engelhardt	  Say Y here to get to see options for devices used with Macintosh
906bfb7ebSJan Engelhardt	  computers. This option alone does not add any kernel code.
1006bfb7ebSJan Engelhardt
1106bfb7ebSJan Engelhardt	  If you say N, all options in this submenu will be skipped and disabled.
120f21712dSJan Engelhardt
130f21712dSJan Engelhardtif MACINTOSH_DRIVERS
141da177e4SLinus Torvalds
151da177e4SLinus Torvaldsconfig ADB
161da177e4SLinus Torvalds	bool "Apple Desktop Bus (ADB) support"
1764c74de7SOlaf Hering	depends on MAC || (PPC_PMAC && PPC32)
181da177e4SLinus Torvalds	help
191da177e4SLinus Torvalds	  Apple Desktop Bus (ADB) support is for support of devices which
201da177e4SLinus Torvalds	  are connected to an ADB port.  ADB devices tend to have 4 pins.
211da177e4SLinus Torvalds	  If you have an Apple Macintosh prior to the iMac, an iBook or
221da177e4SLinus Torvalds	  PowerBook, or a "Blue and White G3", you probably want to say Y
231da177e4SLinus Torvalds	  here.  Otherwise say N.
241da177e4SLinus Torvalds
251da177e4SLinus Torvaldsconfig ADB_MACII
261da177e4SLinus Torvalds	bool "Include Mac II ADB driver"
271da177e4SLinus Torvalds	depends on ADB && MAC
281da177e4SLinus Torvalds	help
291da177e4SLinus Torvalds	  Say Y here if want your kernel to support Macintosh systems that use
301da177e4SLinus Torvalds	  the Mac II style ADB.  This includes the II, IIx, IIcx, SE/30, IIci,
311da177e4SLinus Torvalds	  Quadra 610, Quadra 650, Quadra 700, Quadra 800, Centris 610 and
321da177e4SLinus Torvalds	  Centris 650.
331da177e4SLinus Torvalds
341da177e4SLinus Torvaldsconfig ADB_IOP
351da177e4SLinus Torvalds	bool "Include IOP (IIfx/Quadra 9x0) ADB driver"
361da177e4SLinus Torvalds	depends on ADB && MAC
371da177e4SLinus Torvalds	help
381da177e4SLinus Torvalds	  The I/O Processor (IOP) is an Apple custom IC designed to provide
391da177e4SLinus Torvalds	  intelligent support for I/O controllers.  It is described at
401da177e4SLinus Torvalds	  <http://www.angelfire.com/ca2/dev68k/iopdesc.html> to enable direct
411da177e4SLinus Torvalds	  support for it, say 'Y' here.
421da177e4SLinus Torvalds
431da177e4SLinus Torvalds# we want to change this to something like CONFIG_SYSCTRL_CUDA/PMU
441da177e4SLinus Torvaldsconfig ADB_CUDA
45f74faec6SFinn Thain	bool "Support for Cuda/Egret based Macs and PowerMacs"
461da177e4SLinus Torvalds	depends on (ADB || PPC_PMAC) && !PPC_PMAC64
479a9c5ff5SRandy Dunlap	select RTC_LIB
481da177e4SLinus Torvalds	help
49f74faec6SFinn Thain	  This provides support for Cuda/Egret based Macintosh and
50f74faec6SFinn Thain	  Power Macintosh systems. This includes most m68k based Macs,
51f74faec6SFinn Thain	  most Old World PowerMacs, the first generation iMacs, the
52f74faec6SFinn Thain	  Blue & White G3 and the "Yikes" G4 (PCI Graphics). All later
53f74faec6SFinn Thain	  models should use CONFIG_ADB_PMU instead. It is safe to say Y
54f74faec6SFinn Thain	  here even if your machine doesn't have a Cuda or Egret device.
551da177e4SLinus Torvalds
561da177e4SLinus Torvalds	  If unsure say Y.
571da177e4SLinus Torvalds
581da177e4SLinus Torvaldsconfig ADB_PMU
59c16a85a5SFinn Thain	bool "Support for PMU based PowerMacs and PowerBooks"
60ebd72227SFinn Thain	depends on PPC_PMAC || MAC
619a9c5ff5SRandy Dunlap	select RTC_LIB
621da177e4SLinus Torvalds	help
631da177e4SLinus Torvalds	  On PowerBooks, iBooks, and recent iMacs and Power Macintoshes, the
641da177e4SLinus Torvalds	  PMU is an embedded microprocessor whose primary function is to
651da177e4SLinus Torvalds	  control system power, and battery charging on the portable models.
661da177e4SLinus Torvalds	  The PMU also controls the ADB (Apple Desktop Bus) which connects to
671da177e4SLinus Torvalds	  the keyboard and mouse on some machines, as well as the non-volatile
681da177e4SLinus Torvalds	  RAM and the RTC (real time clock) chip.  Say Y to enable support for
691da177e4SLinus Torvalds	  this device; you should do so if your machine is one of those
701da177e4SLinus Torvalds	  mentioned above.
711da177e4SLinus Torvalds
7286ce436eSFinn Thainconfig ADB_PMU_EVENT
7386ce436eSFinn Thain	def_bool y
7486ce436eSFinn Thain	depends on ADB_PMU && INPUT=y
7586ce436eSFinn Thain
7670c3967dSJohannes Bergconfig ADB_PMU_LED
7770c3967dSJohannes Berg	bool "Support for the Power/iBook front LED"
78c2f028b6SFinn Thain	depends on PPC_PMAC && ADB_PMU
79649e8579SPaul Mackerras	select NEW_LEDS
8070c3967dSJohannes Berg	select LEDS_CLASS
8170c3967dSJohannes Berg	help
8270c3967dSJohannes Berg	  Support the front LED on Power/iBooks as a generic LED that can
8370c3967dSJohannes Berg	  be triggered by any of the supported triggers. To get the
8470c3967dSJohannes Berg	  behaviour of the old CONFIG_BLK_DEV_IDE_PMAC_BLINK, select this
8583e2c70eSStephan Linz	  and the disk LED trigger and configure appropriately through sysfs.
8670c3967dSJohannes Berg
8783e2c70eSStephan Linzconfig ADB_PMU_LED_DISK
8883e2c70eSStephan Linz	bool "Use front LED as DISK LED by default"
8905dce4baSRandy Dunlap	depends on ATA
90d1a8df91SJohannes Berg	depends on ADB_PMU_LED
910bae35e1SJohannes Berg	depends on LEDS_CLASS
92d1a8df91SJohannes Berg	select LEDS_TRIGGERS
9383e2c70eSStephan Linz	select LEDS_TRIGGER_DISK
94d1a8df91SJohannes Berg	help
9583e2c70eSStephan Linz	  This option makes the front LED default to the disk trigger
9683e2c70eSStephan Linz	  so that it blinks on disk activity.
97d1a8df91SJohannes Berg
981da177e4SLinus Torvaldsconfig PMAC_SMU
991da177e4SLinus Torvalds	bool "Support for SMU  based PowerMacs"
1001da177e4SLinus Torvalds	depends on PPC_PMAC64
1011da177e4SLinus Torvalds	help
1021da177e4SLinus Torvalds	  This option adds support for the newer G5 iMacs and PowerMacs based
1031da177e4SLinus Torvalds	  on the "SMU" system control chip which replaces the old PMU.
1041da177e4SLinus Torvalds	  If you don't know, say Y.
1051da177e4SLinus Torvalds
1061da177e4SLinus Torvaldsconfig PMAC_APM_EMU
1071da177e4SLinus Torvalds	tristate "APM emulation"
108b3028878SJohannes Berg	select APM_EMULATION
109e358ae4dSJohannes Berg	depends on ADB_PMU && PM && PPC32
1108c870933SBenjamin Herrenschmidt
1118c870933SBenjamin Herrenschmidtconfig PMAC_MEDIABAY
1128c870933SBenjamin Herrenschmidt	bool "Support PowerBook hotswap media bay"
113bcd71fe6SAlexander Beregalov	depends on PPC_PMAC && PPC32 && BLOCK
1148c870933SBenjamin Herrenschmidt	help
1158c870933SBenjamin Herrenschmidt	  This option adds support for older PowerBook's hotswap media bay
1168c870933SBenjamin Herrenschmidt	  that can contains batteries, floppy drives, or IDE devices. PCI
1178c870933SBenjamin Herrenschmidt	  devices are not fully supported in the bay as I never had one to
1188c870933SBenjamin Herrenschmidt	  try with
1191da177e4SLinus Torvalds
1201da177e4SLinus Torvaldsconfig PMAC_BACKLIGHT
1211da177e4SLinus Torvalds	bool "Backlight control for LCD screens"
122c2f028b6SFinn Thain	depends on PPC_PMAC && ADB_PMU && FB = y && (BROKEN || !PPC64)
123*8fc38062SThomas Zimmermann	depends on BACKLIGHT_CLASS_DEVICE=y
124e01af038SMichael Hanselmann	select FB_BACKLIGHT
1251da177e4SLinus Torvalds	help
1265474c120SMichael Hanselmann	  Say Y here to enable Macintosh specific extensions of the generic
1275474c120SMichael Hanselmann	  backlight code. With this enabled, the brightness keys on older
1285474c120SMichael Hanselmann	  PowerBooks will be enabled so you can change the screen brightness.
1290211a9c8SFrederik Schwarzer	  Newer models should use a userspace daemon like pbbuttonsd.
1305474c120SMichael Hanselmann
1315474c120SMichael Hanselmannconfig PMAC_BACKLIGHT_LEGACY
1325474c120SMichael Hanselmann	bool "Provide legacy ioctl's on /dev/pmu for the backlight"
1335474c120SMichael Hanselmann	depends on PMAC_BACKLIGHT && (BROKEN || !PPC64)
1345474c120SMichael Hanselmann	help
1355474c120SMichael Hanselmann	  Say Y if you want to enable legacy ioctl's on /dev/pmu. This is for
1365474c120SMichael Hanselmann	  programs which use this old interface. New and updated programs
1375474c120SMichael Hanselmann	  should use the backlight classes in sysfs.
1381da177e4SLinus Torvalds
1391da177e4SLinus Torvaldsconfig ADB_MACIO
1401da177e4SLinus Torvalds	bool "Include MacIO (CHRP) ADB driver"
1411da177e4SLinus Torvalds	depends on ADB && PPC_CHRP && !PPC_PMAC64
1421da177e4SLinus Torvalds	help
1431da177e4SLinus Torvalds	  Say Y here to include direct support for the ADB controller in the
1441da177e4SLinus Torvalds	  Hydra chip used on PowerPC Macintoshes of the CHRP type.  (The Hydra
1451da177e4SLinus Torvalds	  also includes a MESH II SCSI controller, DBDMA controller, VIA chip,
1461da177e4SLinus Torvalds	  OpenPIC controller and two RS422/Geoports.)
1471da177e4SLinus Torvalds
1481da177e4SLinus Torvaldsconfig INPUT_ADBHID
1491da177e4SLinus Torvalds	bool "Support for ADB input devices (keyboard, mice, ...)"
1501da177e4SLinus Torvalds	depends on ADB && INPUT=y
1511da177e4SLinus Torvalds	help
1521da177e4SLinus Torvalds	  Say Y here if you want to have ADB (Apple Desktop Bus) HID devices
1531da177e4SLinus Torvalds	  such as keyboards, mice, joysticks, trackpads  or graphic tablets
1541da177e4SLinus Torvalds	  handled by the input layer.  If you say Y here, make sure to say Y to
155f27b86dcSAaro Koskinen	  the corresponding drivers "Mouse Support" (CONFIG_INPUT_MOUSEDEV) and
156f27b86dcSAaro Koskinen	  "Event interface support" (CONFIG_INPUT_EVDEV) as well.
1571da177e4SLinus Torvalds
1581da177e4SLinus Torvalds	  If unsure, say Y.
1591da177e4SLinus Torvalds
1601da177e4SLinus Torvaldsconfig MAC_EMUMOUSEBTN
161429722e1SDmitry Torokhov	tristate "Support for mouse button 2+3 emulation"
162429722e1SDmitry Torokhov	depends on SYSCTL && INPUT
1631da177e4SLinus Torvalds	help
1641da177e4SLinus Torvalds	  This provides generic support for emulating the 2nd and 3rd mouse
1651da177e4SLinus Torvalds	  button with keypresses.  If you say Y here, the emulation is still
1661da177e4SLinus Torvalds	  disabled by default.  The emulation is controlled by these sysctl
1671da177e4SLinus Torvalds	  entries:
1681da177e4SLinus Torvalds	  /proc/sys/dev/mac_hid/mouse_button_emulation
1691da177e4SLinus Torvalds	  /proc/sys/dev/mac_hid/mouse_button2_keycode
1701da177e4SLinus Torvalds	  /proc/sys/dev/mac_hid/mouse_button3_keycode
1711da177e4SLinus Torvalds
1721da177e4SLinus Torvalds	  If you have an Apple machine with a 1-button mouse, say Y here.
1731da177e4SLinus Torvalds
174429722e1SDmitry Torokhov	  To compile this driver as a module, choose M here: the
175429722e1SDmitry Torokhov	  module will be called mac_hid.
176429722e1SDmitry Torokhov
1771da177e4SLinus Torvaldsconfig THERM_WINDTUNNEL
1781da177e4SLinus Torvalds	tristate "Support for thermal management on Windtunnel G4s"
179a28d3af2SBenjamin Herrenschmidt	depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64
1801da177e4SLinus Torvalds	help
1811da177e4SLinus Torvalds	  This driver provides some thermostat and fan control for the desktop
1821da177e4SLinus Torvalds	  G4 "Windtunnel"
1831da177e4SLinus Torvalds
1841da177e4SLinus Torvaldsconfig THERM_ADT746X
1851da177e4SLinus Torvalds	tristate "Support for thermal mgmnt on laptops with ADT 746x chipset"
186a28d3af2SBenjamin Herrenschmidt	depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64
1871da177e4SLinus Torvalds	help
1881da177e4SLinus Torvalds	  This driver provides some thermostat and fan control for the
18909509603SMatt LaPlante	  iBook G4, and the ATI based aluminium PowerBooks, allowing slightly
1901da177e4SLinus Torvalds	  better fan behaviour by default, and some manual control.
1911da177e4SLinus Torvalds
19275722d39SBenjamin Herrenschmidtconfig WINDFARM
19375722d39SBenjamin Herrenschmidt	tristate "New PowerMac thermal control infrastructure"
1946f36d17aSAl Viro	depends on PPC
19575722d39SBenjamin Herrenschmidt
19675722d39SBenjamin Herrenschmidtconfig WINDFARM_PM81
19775722d39SBenjamin Herrenschmidt	tristate "Support for thermal management on iMac G5"
19875722d39SBenjamin Herrenschmidt	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU
199a28d3af2SBenjamin Herrenschmidt	select I2C_POWERMAC
20075722d39SBenjamin Herrenschmidt	help
20175722d39SBenjamin Herrenschmidt	  This driver provides thermal control for the iMacG5
20275722d39SBenjamin Herrenschmidt
2036cd32099SBenjamin Herrenschmidtconfig WINDFARM_PM72
2046cd32099SBenjamin Herrenschmidt	tristate "Support for thermal management on PowerMac G5 (AGP)"
2056cd32099SBenjamin Herrenschmidt	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && ADB_PMU
2066cd32099SBenjamin Herrenschmidt	select I2C_POWERMAC
2076cd32099SBenjamin Herrenschmidt	help
2086cd32099SBenjamin Herrenschmidt	  This driver provides thermal control for the PowerMac G5
2096cd32099SBenjamin Herrenschmidt	  "AGP" variants (PowerMac 7,2 and 7,3)
2106cd32099SBenjamin Herrenschmidt
2116cd32099SBenjamin Herrenschmidtconfig WINDFARM_RM31
2126cd32099SBenjamin Herrenschmidt	tristate "Support for thermal management on Xserve G5"
2136cd32099SBenjamin Herrenschmidt	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && ADB_PMU
2146cd32099SBenjamin Herrenschmidt	select I2C_POWERMAC
2156cd32099SBenjamin Herrenschmidt	help
2166cd32099SBenjamin Herrenschmidt	  This driver provides thermal control for the Xserve G5
2176cd32099SBenjamin Herrenschmidt	  (RackMac3,1)
2186cd32099SBenjamin Herrenschmidt
21975722d39SBenjamin Herrenschmidtconfig WINDFARM_PM91
22075722d39SBenjamin Herrenschmidt	tristate "Support for thermal management on PowerMac9,1"
22175722d39SBenjamin Herrenschmidt	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU
222a28d3af2SBenjamin Herrenschmidt	select I2C_POWERMAC
22375722d39SBenjamin Herrenschmidt	help
22475722d39SBenjamin Herrenschmidt	  This driver provides thermal control for the PowerMac9,1
22575722d39SBenjamin Herrenschmidt	  which is the recent (SMU based) single CPU desktop G5
22675722d39SBenjamin Herrenschmidt
227ac171c46SBenjamin Herrenschmidtconfig WINDFARM_PM112
228ac171c46SBenjamin Herrenschmidt	tristate "Support for thermal management on PowerMac11,2"
229ac171c46SBenjamin Herrenschmidt	depends on WINDFARM && I2C && PMAC_SMU
230e5ea0a9fSLinus Torvalds	select I2C_POWERMAC
231ac171c46SBenjamin Herrenschmidt	help
232ac171c46SBenjamin Herrenschmidt	  This driver provides thermal control for the PowerMac11,2
233ac171c46SBenjamin Herrenschmidt	  which are the recent dual and quad G5 machines using the
234ac171c46SBenjamin Herrenschmidt	  970MP dual-core processor.
23575722d39SBenjamin Herrenschmidt
23680ff974dSÉtienne Bersacconfig WINDFARM_PM121
23780ff974dSÉtienne Bersac	tristate "Support for thermal management on PowerMac12,1"
23880ff974dSÉtienne Bersac	depends on WINDFARM && I2C && PMAC_SMU
23980ff974dSÉtienne Bersac	select I2C_POWERMAC
24080ff974dSÉtienne Bersac	help
24180ff974dSÉtienne Bersac	  This driver provides thermal control for the PowerMac12,1
24280ff974dSÉtienne Bersac	  which is the iMac G5 (iSight).
24380ff974dSÉtienne Bersac
2441da177e4SLinus Torvaldsconfig ANSLCD
2451da177e4SLinus Torvalds	tristate "Support for ANS LCD display"
2461da177e4SLinus Torvalds	depends on ADB_CUDA && PPC_PMAC
2471da177e4SLinus Torvalds
2483e00a5aeSBenjamin Herrenschmidtconfig PMAC_RACKMETER
2493e00a5aeSBenjamin Herrenschmidt	tristate "Support for Apple XServe front panel LEDs"
2503e00a5aeSBenjamin Herrenschmidt	depends on PPC_PMAC
2513e00a5aeSBenjamin Herrenschmidt	help
2523dde6ad8SDavid Sterba	  This driver provides some support to control the front panel
2533e00a5aeSBenjamin Herrenschmidt	  blue LEDs "vu-meter" of the XServer macs.
2543e00a5aeSBenjamin Herrenschmidt
255bd5f47ecSJean Delvareconfig SENSORS_AMS
256bd5f47ecSJean Delvare	tristate "Apple Motion Sensor driver"
25780ec2135SKees Cook	depends on PPC_PMAC && !PPC64 && INPUT && ((ADB_PMU && I2C = y) || (ADB_PMU && !I2C) || I2C)
258bd5f47ecSJean Delvare	help
259bd5f47ecSJean Delvare	  Support for the motion sensor included in PowerBooks. Includes
260bd5f47ecSJean Delvare	  implementations for PMU and I2C.
261bd5f47ecSJean Delvare
262bd5f47ecSJean Delvare	  This driver can also be built as a module. If so, the module
263bd5f47ecSJean Delvare	  will be called ams.
264bd5f47ecSJean Delvare
265bd5f47ecSJean Delvareconfig SENSORS_AMS_PMU
266bc8744c6SMichael Ellerman	bool "PMU variant" if SENSORS_AMS_I2C
267bd5f47ecSJean Delvare	depends on SENSORS_AMS && ADB_PMU
268bd5f47ecSJean Delvare	default y
269bd5f47ecSJean Delvare	help
270bd5f47ecSJean Delvare	  PMU variant of motion sensor, found in late 2005 PowerBooks.
271bd5f47ecSJean Delvare
272bd5f47ecSJean Delvareconfig SENSORS_AMS_I2C
273bd5f47ecSJean Delvare	bool "I2C variant"
274bd5f47ecSJean Delvare	depends on SENSORS_AMS && I2C
275bd5f47ecSJean Delvare	default y
276bd5f47ecSJean Delvare	help
277bd5f47ecSJean Delvare	  I2C variant of motion sensor, found in early 2005 PowerBooks and
278bd5f47ecSJean Delvare	  iBooks.
279bd5f47ecSJean Delvare
2800f21712dSJan Engelhardtendif # MACINTOSH_DRIVERS
281