18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_cimenuconfig MACINTOSH_DRIVERS
48c2ecf20Sopenharmony_ci	bool "Macintosh device drivers"
58c2ecf20Sopenharmony_ci	depends on PPC || MAC || X86
68c2ecf20Sopenharmony_ci	default y if (PPC_PMAC || MAC)
78c2ecf20Sopenharmony_ci	help
88c2ecf20Sopenharmony_ci	  Say Y here to get to see options for devices used with Macintosh
98c2ecf20Sopenharmony_ci	  computers. This option alone does not add any kernel code.
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci	  If you say N, all options in this submenu will be skipped and disabled.
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ciif MACINTOSH_DRIVERS
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciconfig ADB
168c2ecf20Sopenharmony_ci	bool "Apple Desktop Bus (ADB) support"
178c2ecf20Sopenharmony_ci	depends on MAC || (PPC_PMAC && PPC32)
188c2ecf20Sopenharmony_ci	help
198c2ecf20Sopenharmony_ci	  Apple Desktop Bus (ADB) support is for support of devices which
208c2ecf20Sopenharmony_ci	  are connected to an ADB port.  ADB devices tend to have 4 pins.
218c2ecf20Sopenharmony_ci	  If you have an Apple Macintosh prior to the iMac, an iBook or
228c2ecf20Sopenharmony_ci	  PowerBook, or a "Blue and White G3", you probably want to say Y
238c2ecf20Sopenharmony_ci	  here.  Otherwise say N.
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciconfig ADB_MACII
268c2ecf20Sopenharmony_ci	bool "Include Mac II ADB driver"
278c2ecf20Sopenharmony_ci	depends on ADB && MAC
288c2ecf20Sopenharmony_ci	help
298c2ecf20Sopenharmony_ci	  Say Y here if want your kernel to support Macintosh systems that use
308c2ecf20Sopenharmony_ci	  the Mac II style ADB.  This includes the II, IIx, IIcx, SE/30, IIci,
318c2ecf20Sopenharmony_ci	  Quadra 610, Quadra 650, Quadra 700, Quadra 800, Centris 610 and
328c2ecf20Sopenharmony_ci	  Centris 650.
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ciconfig ADB_IOP
358c2ecf20Sopenharmony_ci	bool "Include IOP (IIfx/Quadra 9x0) ADB driver"
368c2ecf20Sopenharmony_ci	depends on ADB && MAC
378c2ecf20Sopenharmony_ci	help
388c2ecf20Sopenharmony_ci	  The I/O Processor (IOP) is an Apple custom IC designed to provide
398c2ecf20Sopenharmony_ci	  intelligent support for I/O controllers.  It is described at
408c2ecf20Sopenharmony_ci	  <http://www.angelfire.com/ca2/dev68k/iopdesc.html> to enable direct
418c2ecf20Sopenharmony_ci	  support for it, say 'Y' here.
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ci# we want to change this to something like CONFIG_SYSCTRL_CUDA/PMU
448c2ecf20Sopenharmony_ciconfig ADB_CUDA
458c2ecf20Sopenharmony_ci	bool "Support for Cuda/Egret based Macs and PowerMacs"
468c2ecf20Sopenharmony_ci	depends on (ADB || PPC_PMAC) && !PPC_PMAC64
478c2ecf20Sopenharmony_ci	select RTC_LIB
488c2ecf20Sopenharmony_ci	help
498c2ecf20Sopenharmony_ci	  This provides support for Cuda/Egret based Macintosh and
508c2ecf20Sopenharmony_ci	  Power Macintosh systems. This includes most m68k based Macs,
518c2ecf20Sopenharmony_ci	  most Old World PowerMacs, the first generation iMacs, the
528c2ecf20Sopenharmony_ci	  Blue & White G3 and the "Yikes" G4 (PCI Graphics). All later
538c2ecf20Sopenharmony_ci	  models should use CONFIG_ADB_PMU instead. It is safe to say Y
548c2ecf20Sopenharmony_ci	  here even if your machine doesn't have a Cuda or Egret device.
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ci	  If unsure say Y.
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ciconfig ADB_PMU
598c2ecf20Sopenharmony_ci	bool "Support for PMU based PowerMacs and PowerBooks"
608c2ecf20Sopenharmony_ci	depends on PPC_PMAC || MAC
618c2ecf20Sopenharmony_ci	select RTC_LIB
628c2ecf20Sopenharmony_ci	help
638c2ecf20Sopenharmony_ci	  On PowerBooks, iBooks, and recent iMacs and Power Macintoshes, the
648c2ecf20Sopenharmony_ci	  PMU is an embedded microprocessor whose primary function is to
658c2ecf20Sopenharmony_ci	  control system power, and battery charging on the portable models.
668c2ecf20Sopenharmony_ci	  The PMU also controls the ADB (Apple Desktop Bus) which connects to
678c2ecf20Sopenharmony_ci	  the keyboard and mouse on some machines, as well as the non-volatile
688c2ecf20Sopenharmony_ci	  RAM and the RTC (real time clock) chip.  Say Y to enable support for
698c2ecf20Sopenharmony_ci	  this device; you should do so if your machine is one of those
708c2ecf20Sopenharmony_ci	  mentioned above.
718c2ecf20Sopenharmony_ci
728c2ecf20Sopenharmony_ciconfig ADB_PMU_EVENT
738c2ecf20Sopenharmony_ci	def_bool y
748c2ecf20Sopenharmony_ci	depends on ADB_PMU && INPUT=y
758c2ecf20Sopenharmony_ci
768c2ecf20Sopenharmony_ciconfig ADB_PMU_LED
778c2ecf20Sopenharmony_ci	bool "Support for the Power/iBook front LED"
788c2ecf20Sopenharmony_ci	depends on PPC_PMAC && ADB_PMU
798c2ecf20Sopenharmony_ci	select NEW_LEDS
808c2ecf20Sopenharmony_ci	select LEDS_CLASS
818c2ecf20Sopenharmony_ci	help
828c2ecf20Sopenharmony_ci	  Support the front LED on Power/iBooks as a generic LED that can
838c2ecf20Sopenharmony_ci	  be triggered by any of the supported triggers. To get the
848c2ecf20Sopenharmony_ci	  behaviour of the old CONFIG_BLK_DEV_IDE_PMAC_BLINK, select this
858c2ecf20Sopenharmony_ci	  and the disk LED trigger and configure appropriately through sysfs.
868c2ecf20Sopenharmony_ci
878c2ecf20Sopenharmony_ciconfig ADB_PMU_LED_DISK
888c2ecf20Sopenharmony_ci	bool "Use front LED as DISK LED by default"
898c2ecf20Sopenharmony_ci	depends on ATA
908c2ecf20Sopenharmony_ci	depends on ADB_PMU_LED
918c2ecf20Sopenharmony_ci	depends on LEDS_CLASS
928c2ecf20Sopenharmony_ci	select LEDS_TRIGGERS
938c2ecf20Sopenharmony_ci	select LEDS_TRIGGER_DISK
948c2ecf20Sopenharmony_ci	help
958c2ecf20Sopenharmony_ci	  This option makes the front LED default to the disk trigger
968c2ecf20Sopenharmony_ci	  so that it blinks on disk activity.
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ciconfig PMAC_SMU
998c2ecf20Sopenharmony_ci	bool "Support for SMU  based PowerMacs"
1008c2ecf20Sopenharmony_ci	depends on PPC_PMAC64
1018c2ecf20Sopenharmony_ci	help
1028c2ecf20Sopenharmony_ci	  This option adds support for the newer G5 iMacs and PowerMacs based
1038c2ecf20Sopenharmony_ci	  on the "SMU" system control chip which replaces the old PMU.
1048c2ecf20Sopenharmony_ci	  If you don't know, say Y.
1058c2ecf20Sopenharmony_ci
1068c2ecf20Sopenharmony_ciconfig PMAC_APM_EMU
1078c2ecf20Sopenharmony_ci	tristate "APM emulation"
1088c2ecf20Sopenharmony_ci	select APM_EMULATION
1098c2ecf20Sopenharmony_ci	depends on ADB_PMU && PM && PPC32
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ciconfig PMAC_MEDIABAY
1128c2ecf20Sopenharmony_ci	bool "Support PowerBook hotswap media bay"
1138c2ecf20Sopenharmony_ci	depends on PPC_PMAC && PPC32 && BLOCK
1148c2ecf20Sopenharmony_ci	help
1158c2ecf20Sopenharmony_ci	  This option adds support for older PowerBook's hotswap media bay
1168c2ecf20Sopenharmony_ci	  that can contains batteries, floppy drives, or IDE devices. PCI
1178c2ecf20Sopenharmony_ci	  devices are not fully supported in the bay as I never had one to
1188c2ecf20Sopenharmony_ci	  try with
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ciconfig PMAC_BACKLIGHT
1218c2ecf20Sopenharmony_ci	bool "Backlight control for LCD screens"
1228c2ecf20Sopenharmony_ci	depends on PPC_PMAC && ADB_PMU && FB = y && (BROKEN || !PPC64)
1238c2ecf20Sopenharmony_ci	select FB_BACKLIGHT
1248c2ecf20Sopenharmony_ci	help
1258c2ecf20Sopenharmony_ci	  Say Y here to enable Macintosh specific extensions of the generic
1268c2ecf20Sopenharmony_ci	  backlight code. With this enabled, the brightness keys on older
1278c2ecf20Sopenharmony_ci	  PowerBooks will be enabled so you can change the screen brightness.
1288c2ecf20Sopenharmony_ci	  Newer models should use a userspace daemon like pbbuttonsd.
1298c2ecf20Sopenharmony_ci
1308c2ecf20Sopenharmony_ciconfig PMAC_BACKLIGHT_LEGACY
1318c2ecf20Sopenharmony_ci	bool "Provide legacy ioctl's on /dev/pmu for the backlight"
1328c2ecf20Sopenharmony_ci	depends on PMAC_BACKLIGHT && (BROKEN || !PPC64)
1338c2ecf20Sopenharmony_ci	help
1348c2ecf20Sopenharmony_ci	  Say Y if you want to enable legacy ioctl's on /dev/pmu. This is for
1358c2ecf20Sopenharmony_ci	  programs which use this old interface. New and updated programs
1368c2ecf20Sopenharmony_ci	  should use the backlight classes in sysfs.
1378c2ecf20Sopenharmony_ci
1388c2ecf20Sopenharmony_ciconfig ADB_MACIO
1398c2ecf20Sopenharmony_ci	bool "Include MacIO (CHRP) ADB driver"
1408c2ecf20Sopenharmony_ci	depends on ADB && PPC_CHRP && !PPC_PMAC64
1418c2ecf20Sopenharmony_ci	help
1428c2ecf20Sopenharmony_ci	  Say Y here to include direct support for the ADB controller in the
1438c2ecf20Sopenharmony_ci	  Hydra chip used on PowerPC Macintoshes of the CHRP type.  (The Hydra
1448c2ecf20Sopenharmony_ci	  also includes a MESH II SCSI controller, DBDMA controller, VIA chip,
1458c2ecf20Sopenharmony_ci	  OpenPIC controller and two RS422/Geoports.)
1468c2ecf20Sopenharmony_ci
1478c2ecf20Sopenharmony_ciconfig INPUT_ADBHID
1488c2ecf20Sopenharmony_ci	bool "Support for ADB input devices (keyboard, mice, ...)"
1498c2ecf20Sopenharmony_ci	depends on ADB && INPUT=y
1508c2ecf20Sopenharmony_ci	help
1518c2ecf20Sopenharmony_ci	  Say Y here if you want to have ADB (Apple Desktop Bus) HID devices
1528c2ecf20Sopenharmony_ci	  such as keyboards, mice, joysticks, trackpads  or graphic tablets
1538c2ecf20Sopenharmony_ci	  handled by the input layer.  If you say Y here, make sure to say Y to
1548c2ecf20Sopenharmony_ci	  the corresponding drivers "Mouse Support" (CONFIG_INPUT_MOUSEDEV) and
1558c2ecf20Sopenharmony_ci	  "Event interface support" (CONFIG_INPUT_EVDEV) as well.
1568c2ecf20Sopenharmony_ci
1578c2ecf20Sopenharmony_ci	  If unsure, say Y.
1588c2ecf20Sopenharmony_ci
1598c2ecf20Sopenharmony_ciconfig MAC_EMUMOUSEBTN
1608c2ecf20Sopenharmony_ci	tristate "Support for mouse button 2+3 emulation"
1618c2ecf20Sopenharmony_ci	depends on SYSCTL && INPUT
1628c2ecf20Sopenharmony_ci	help
1638c2ecf20Sopenharmony_ci	  This provides generic support for emulating the 2nd and 3rd mouse
1648c2ecf20Sopenharmony_ci	  button with keypresses.  If you say Y here, the emulation is still
1658c2ecf20Sopenharmony_ci	  disabled by default.  The emulation is controlled by these sysctl
1668c2ecf20Sopenharmony_ci	  entries:
1678c2ecf20Sopenharmony_ci	  /proc/sys/dev/mac_hid/mouse_button_emulation
1688c2ecf20Sopenharmony_ci	  /proc/sys/dev/mac_hid/mouse_button2_keycode
1698c2ecf20Sopenharmony_ci	  /proc/sys/dev/mac_hid/mouse_button3_keycode
1708c2ecf20Sopenharmony_ci
1718c2ecf20Sopenharmony_ci	  If you have an Apple machine with a 1-button mouse, say Y here.
1728c2ecf20Sopenharmony_ci
1738c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here: the
1748c2ecf20Sopenharmony_ci	  module will be called mac_hid.
1758c2ecf20Sopenharmony_ci
1768c2ecf20Sopenharmony_ciconfig THERM_WINDTUNNEL
1778c2ecf20Sopenharmony_ci	tristate "Support for thermal management on Windtunnel G4s"
1788c2ecf20Sopenharmony_ci	depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64
1798c2ecf20Sopenharmony_ci	help
1808c2ecf20Sopenharmony_ci	  This driver provides some thermostat and fan control for the desktop
1818c2ecf20Sopenharmony_ci	  G4 "Windtunnel"
1828c2ecf20Sopenharmony_ci
1838c2ecf20Sopenharmony_ciconfig THERM_ADT746X
1848c2ecf20Sopenharmony_ci	tristate "Support for thermal mgmnt on laptops with ADT 746x chipset"
1858c2ecf20Sopenharmony_ci	depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64
1868c2ecf20Sopenharmony_ci	help
1878c2ecf20Sopenharmony_ci	  This driver provides some thermostat and fan control for the
1888c2ecf20Sopenharmony_ci	  iBook G4, and the ATI based aluminium PowerBooks, allowing slightly
1898c2ecf20Sopenharmony_ci	  better fan behaviour by default, and some manual control.
1908c2ecf20Sopenharmony_ci
1918c2ecf20Sopenharmony_ciconfig WINDFARM
1928c2ecf20Sopenharmony_ci	tristate "New PowerMac thermal control infrastructure"
1938c2ecf20Sopenharmony_ci	depends on PPC
1948c2ecf20Sopenharmony_ci
1958c2ecf20Sopenharmony_ciconfig WINDFARM_PM81
1968c2ecf20Sopenharmony_ci	tristate "Support for thermal management on iMac G5"
1978c2ecf20Sopenharmony_ci	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU
1988c2ecf20Sopenharmony_ci	select I2C_POWERMAC
1998c2ecf20Sopenharmony_ci	help
2008c2ecf20Sopenharmony_ci	  This driver provides thermal control for the iMacG5
2018c2ecf20Sopenharmony_ci
2028c2ecf20Sopenharmony_ciconfig WINDFARM_PM72
2038c2ecf20Sopenharmony_ci	tristate "Support for thermal management on PowerMac G5 (AGP)"
2048c2ecf20Sopenharmony_ci	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && ADB_PMU
2058c2ecf20Sopenharmony_ci	select I2C_POWERMAC
2068c2ecf20Sopenharmony_ci	help
2078c2ecf20Sopenharmony_ci	  This driver provides thermal control for the PowerMac G5
2088c2ecf20Sopenharmony_ci	  "AGP" variants (PowerMac 7,2 and 7,3)
2098c2ecf20Sopenharmony_ci
2108c2ecf20Sopenharmony_ciconfig WINDFARM_RM31
2118c2ecf20Sopenharmony_ci	tristate "Support for thermal management on Xserve G5"
2128c2ecf20Sopenharmony_ci	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && ADB_PMU
2138c2ecf20Sopenharmony_ci	select I2C_POWERMAC
2148c2ecf20Sopenharmony_ci	help
2158c2ecf20Sopenharmony_ci	  This driver provides thermal control for the Xserve G5
2168c2ecf20Sopenharmony_ci	  (RackMac3,1)
2178c2ecf20Sopenharmony_ci
2188c2ecf20Sopenharmony_ciconfig WINDFARM_PM91
2198c2ecf20Sopenharmony_ci	tristate "Support for thermal management on PowerMac9,1"
2208c2ecf20Sopenharmony_ci	depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU
2218c2ecf20Sopenharmony_ci	select I2C_POWERMAC
2228c2ecf20Sopenharmony_ci	help
2238c2ecf20Sopenharmony_ci	  This driver provides thermal control for the PowerMac9,1
2248c2ecf20Sopenharmony_ci	  which is the recent (SMU based) single CPU desktop G5
2258c2ecf20Sopenharmony_ci
2268c2ecf20Sopenharmony_ciconfig WINDFARM_PM112
2278c2ecf20Sopenharmony_ci	tristate "Support for thermal management on PowerMac11,2"
2288c2ecf20Sopenharmony_ci	depends on WINDFARM && I2C && PMAC_SMU
2298c2ecf20Sopenharmony_ci	select I2C_POWERMAC
2308c2ecf20Sopenharmony_ci	help
2318c2ecf20Sopenharmony_ci	  This driver provides thermal control for the PowerMac11,2
2328c2ecf20Sopenharmony_ci	  which are the recent dual and quad G5 machines using the
2338c2ecf20Sopenharmony_ci	  970MP dual-core processor.
2348c2ecf20Sopenharmony_ci
2358c2ecf20Sopenharmony_ciconfig WINDFARM_PM121
2368c2ecf20Sopenharmony_ci	tristate "Support for thermal management on PowerMac12,1"
2378c2ecf20Sopenharmony_ci	depends on WINDFARM && I2C && PMAC_SMU
2388c2ecf20Sopenharmony_ci	select I2C_POWERMAC
2398c2ecf20Sopenharmony_ci	help
2408c2ecf20Sopenharmony_ci	  This driver provides thermal control for the PowerMac12,1
2418c2ecf20Sopenharmony_ci	  which is the iMac G5 (iSight).
2428c2ecf20Sopenharmony_ci
2438c2ecf20Sopenharmony_ciconfig ANSLCD
2448c2ecf20Sopenharmony_ci	tristate "Support for ANS LCD display"
2458c2ecf20Sopenharmony_ci	depends on ADB_CUDA && PPC_PMAC
2468c2ecf20Sopenharmony_ci
2478c2ecf20Sopenharmony_ciconfig PMAC_RACKMETER
2488c2ecf20Sopenharmony_ci	tristate "Support for Apple XServe front panel LEDs"
2498c2ecf20Sopenharmony_ci	depends on PPC_PMAC
2508c2ecf20Sopenharmony_ci	help
2518c2ecf20Sopenharmony_ci	  This driver provides some support to control the front panel
2528c2ecf20Sopenharmony_ci	  blue LEDs "vu-meter" of the XServer macs.
2538c2ecf20Sopenharmony_ci
2548c2ecf20Sopenharmony_ciconfig SENSORS_AMS
2558c2ecf20Sopenharmony_ci	tristate "Apple Motion Sensor driver"
2568c2ecf20Sopenharmony_ci	depends on PPC_PMAC && !PPC64 && INPUT && ((ADB_PMU && I2C = y) || (ADB_PMU && !I2C) || I2C)
2578c2ecf20Sopenharmony_ci	help
2588c2ecf20Sopenharmony_ci	  Support for the motion sensor included in PowerBooks. Includes
2598c2ecf20Sopenharmony_ci	  implementations for PMU and I2C.
2608c2ecf20Sopenharmony_ci
2618c2ecf20Sopenharmony_ci	  This driver can also be built as a module. If so, the module
2628c2ecf20Sopenharmony_ci	  will be called ams.
2638c2ecf20Sopenharmony_ci
2648c2ecf20Sopenharmony_ciconfig SENSORS_AMS_PMU
2658c2ecf20Sopenharmony_ci	bool "PMU variant"
2668c2ecf20Sopenharmony_ci	depends on SENSORS_AMS && ADB_PMU
2678c2ecf20Sopenharmony_ci	default y
2688c2ecf20Sopenharmony_ci	help
2698c2ecf20Sopenharmony_ci	  PMU variant of motion sensor, found in late 2005 PowerBooks.
2708c2ecf20Sopenharmony_ci
2718c2ecf20Sopenharmony_ciconfig SENSORS_AMS_I2C
2728c2ecf20Sopenharmony_ci	bool "I2C variant"
2738c2ecf20Sopenharmony_ci	depends on SENSORS_AMS && I2C
2748c2ecf20Sopenharmony_ci	default y
2758c2ecf20Sopenharmony_ci	help
2768c2ecf20Sopenharmony_ci	  I2C variant of motion sensor, found in early 2005 PowerBooks and
2778c2ecf20Sopenharmony_ci	  iBooks.
2788c2ecf20Sopenharmony_ci
2798c2ecf20Sopenharmony_ciendif # MACINTOSH_DRIVERS
280