Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# SPDX-License-Identifier: GPL-2.0-only

menuconfig CONFIG_MACINTOSH_DRIVERS
	bool "Macintosh device drivers"
	depends on CONFIG_PPC || CONFIG_MAC || CONFIG_X86
	default y if (CONFIG_PPC_PMAC || CONFIG_MAC)
	---help---
	  Say Y here to get to see options for devices used with Macintosh
	  computers. This option alone does not add any kernel code.

	  If you say N, all options in this submenu will be skipped and disabled.

if CONFIG_MACINTOSH_DRIVERS

config CONFIG_ADB
	bool "Apple Desktop Bus (ADB) support"
	depends on CONFIG_MAC || (CONFIG_PPC_PMAC && CONFIG_PPC32)
	help
	  Apple Desktop Bus (CONFIG_ADB) support is for support of devices which
	  are connected to an CONFIG_ADB port.  CONFIG_ADB devices tend to have 4 pins.
	  If you have an Apple Macintosh prior to the iMac, an iBook or
	  PowerBook, or a "Blue and White G3", you probably want to say Y
	  here.  Otherwise say N.

config CONFIG_ADB_MACII
	bool "Include Mac II ADB driver"
	depends on CONFIG_ADB && CONFIG_MAC
	help
	  Say Y here if want your kernel to support Macintosh systems that use
	  the Mac II style CONFIG_ADB.  This includes the II, IIx, IIcx, SE/30, IIci,
	  Quadra 610, Quadra 650, Quadra 700, Quadra 800, Centris 610 and
	  Centris 650.

config CONFIG_ADB_IOP
	bool "Include IOP (IIfx/Quadra 9x0) ADB driver"
	depends on CONFIG_ADB && CONFIG_MAC
	help
	  The I/O Processor (IOP) is an Apple custom IC designed to provide
	  intelligent support for I/O controllers.  It is described at
	  <http://www.angelfire.com/ca2/dev68k/iopdesc.html> to enable direct
	  support for it, say 'Y' here.

# we want to change this to something like CONFIG_SYSCTRL_CUDA/PMU
config CONFIG_ADB_CUDA
	bool "Support for Cuda/Egret based Macs and PowerMacs"
	depends on (CONFIG_ADB || CONFIG_PPC_PMAC) && !CONFIG_PPC_PMAC64
	help
	  This provides support for Cuda/Egret based Macintosh and
	  Power Macintosh systems. This includes most m68k based Macs,
	  most Old World PowerMacs, the first generation iMacs, the
	  Blue & White G3 and the "Yikes" G4 (CONFIG_PCI Graphics). All later
	  models should use CONFIG_ADB_PMU instead. It is safe to say Y
	  here even if your machine doesn't have a Cuda or Egret device.

	  If unsure say Y.

config CONFIG_ADB_PMU
	bool "Support for PMU based PowerMacs and PowerBooks"
	depends on CONFIG_PPC_PMAC || CONFIG_MAC
	help
	  On PowerBooks, iBooks, and recent iMacs and Power Macintoshes, the
	  PMU is an embedded microprocessor whose primary function is to
	  control system power, and battery charging on the portable models.
	  The PMU also controls the CONFIG_ADB (Apple Desktop Bus) which connects to
	  the keyboard and mouse on some machines, as well as the non-volatile
	  RAM and the CONFIG_RTC (real time clock) chip.  Say Y to enable support for
	  this device; you should do so if your machine is one of those
	  mentioned above.

config CONFIG_ADB_PMU_LED
	bool "Support for the Power/iBook front LED"
	depends on CONFIG_PPC_PMAC && CONFIG_ADB_PMU
	select CONFIG_NEW_LEDS
	select CONFIG_LEDS_CLASS
	help
	  Support the front LED on Power/iBooks as a generic LED that can
	  be triggered by any of the supported triggers. To get the
	  behaviour of the old CONFIG_BLK_DEV_IDE_PMAC_BLINK, select this
	  and the disk LED trigger and configure appropriately through sysfs.

config CONFIG_ADB_PMU_LED_DISK
	bool "Use front LED as DISK LED by default"
	depends on CONFIG_ADB_PMU_LED
	depends on CONFIG_LEDS_CLASS
	select CONFIG_LEDS_TRIGGERS
	select CONFIG_LEDS_TRIGGER_DISK
	help
	  This option makes the front LED default to the disk trigger
	  so that it blinks on disk activity.

config CONFIG_PMAC_SMU
	bool "Support for SMU  based PowerMacs"
	depends on CONFIG_PPC_PMAC64
	help
	  This option adds support for the newer G5 iMacs and PowerMacs based
	  on the "SMU" system control chip which replaces the old PMU.
	  If you don't know, say Y.

config CONFIG_PMAC_APM_EMU
	tristate "APM emulation"
	select CONFIG_APM_EMULATION
	depends on CONFIG_ADB_PMU && CONFIG_PM && CONFIG_PPC32

config CONFIG_PMAC_MEDIABAY
	bool "Support PowerBook hotswap media bay"
	depends on CONFIG_PPC_PMAC && CONFIG_PPC32 && CONFIG_BLOCK
	help
	  This option adds support for older PowerBook's hotswap media bay
	  that can contains batteries, floppy drives, or CONFIG_IDE devices. CONFIG_PCI
	  devices are not fully supported in the bay as I never had one to
	  try with

config CONFIG_PMAC_BACKLIGHT
	bool "Backlight control for LCD screens"
	depends on CONFIG_PPC_PMAC && CONFIG_ADB_PMU && CONFIG_FB = y && (CONFIG_BROKEN || !CONFIG_PPC64)
	select CONFIG_FB_BACKLIGHT
	help
	  Say Y here to enable Macintosh specific extensions of the generic
	  backlight code. With this enabled, the brightness keys on older
	  PowerBooks will be enabled so you can change the screen brightness.
	  Newer models should use a userspace daemon like pbbuttonsd.

config CONFIG_PMAC_BACKLIGHT_LEGACY
	bool "Provide legacy ioctl's on /dev/pmu for the backlight"
	depends on CONFIG_PMAC_BACKLIGHT && (CONFIG_BROKEN || !CONFIG_PPC64)
	help
	  Say Y if you want to enable legacy ioctl's on /dev/pmu. This is for
	  programs which use this old interface. New and updated programs
	  should use the backlight classes in sysfs.

config CONFIG_ADB_MACIO
	bool "Include MacIO (CHRP) ADB driver"
	depends on CONFIG_ADB && CONFIG_PPC_CHRP && !CONFIG_PPC_PMAC64
	help
	  Say Y here to include direct support for the CONFIG_ADB controller in the
	  Hydra chip used on PowerPC Macintoshes of the CHRP type.  (The Hydra
	  also includes a MESH II CONFIG_SCSI controller, DBDMA controller, VIA chip,
	  OpenPIC controller and two RS422/Geoports.)

config CONFIG_INPUT_ADBHID
	bool "Support for ADB input devices (keyboard, mice, ...)"
	depends on CONFIG_ADB && CONFIG_INPUT=y
	help
	  Say Y here if you want to have CONFIG_ADB (Apple Desktop Bus) CONFIG_HID devices
	  such as keyboards, mice, joysticks, trackpads  or graphic tablets
	  handled by the input layer.  If you say Y here, make sure to say Y to
	  the corresponding drivers "Mouse Support" (CONFIG_INPUT_MOUSEDEV) and
	  "Event interface support" (CONFIG_INPUT_EVDEV) as well.

	  If unsure, say Y.

config CONFIG_MAC_EMUMOUSEBTN
	tristate "Support for mouse button 2+3 emulation"
	depends on CONFIG_SYSCTL && CONFIG_INPUT
	help
	  This provides generic support for emulating the 2nd and 3rd mouse
	  button with keypresses.  If you say Y here, the emulation is still
	  disabled by default.  The emulation is controlled by these sysctl
	  entries:
	  /proc/sys/dev/mac_hid/mouse_button_emulation
	  /proc/sys/dev/mac_hid/mouse_button2_keycode
	  /proc/sys/dev/mac_hid/mouse_button3_keycode

	  If you have an Apple machine with a 1-button mouse, say Y here.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called mac_hid.

config CONFIG_THERM_WINDTUNNEL
	tristate "Support for thermal management on Windtunnel G4s"
	depends on CONFIG_I2C && CONFIG_I2C_POWERMAC && CONFIG_PPC_PMAC && !CONFIG_PPC_PMAC64
	help
	  This driver provides some thermostat and fan control for the desktop
	  G4 "Windtunnel"

config CONFIG_THERM_ADT746X
	tristate "Support for thermal mgmnt on laptops with ADT 746x chipset"
	depends on CONFIG_I2C && CONFIG_I2C_POWERMAC && CONFIG_PPC_PMAC && !CONFIG_PPC_PMAC64
	help
	  This driver provides some thermostat and fan control for the
          iBook G4, and the ATI based aluminium PowerBooks, allowing slightly
	  better fan behaviour by default, and some manual control.

config CONFIG_WINDFARM
	tristate "New PowerMac thermal control infrastructure"
	depends on CONFIG_PPC

config CONFIG_WINDFARM_PM81
	tristate "Support for thermal management on iMac G5"
	depends on CONFIG_WINDFARM && CONFIG_I2C && CONFIG_CPU_FREQ_PMAC64 && CONFIG_PMAC_SMU
	select CONFIG_I2C_POWERMAC
	help
	  This driver provides thermal control for the iMacG5

config CONFIG_WINDFARM_PM72
	tristate "Support for thermal management on PowerMac G5 (AGP)"
	depends on CONFIG_WINDFARM && CONFIG_I2C && CONFIG_CPU_FREQ_PMAC64 && CONFIG_ADB_PMU
	select CONFIG_I2C_POWERMAC
	help
	  This driver provides thermal control for the PowerMac G5
	  "AGP" variants (PowerMac 7,2 and 7,3)

config CONFIG_WINDFARM_RM31
	tristate "Support for thermal management on Xserve G5"
	depends on CONFIG_WINDFARM && CONFIG_I2C && CONFIG_CPU_FREQ_PMAC64 && CONFIG_ADB_PMU
	select CONFIG_I2C_POWERMAC
	help
	  This driver provides thermal control for the Xserve G5
	  (RackMac3,1)

config CONFIG_WINDFARM_PM91
	tristate "Support for thermal management on PowerMac9,1"
	depends on CONFIG_WINDFARM && CONFIG_I2C && CONFIG_CPU_FREQ_PMAC64 && CONFIG_PMAC_SMU
	select CONFIG_I2C_POWERMAC
	help
	  This driver provides thermal control for the PowerMac9,1
          which is the recent (SMU based) single CPU desktop G5

config CONFIG_WINDFARM_PM112
	tristate "Support for thermal management on PowerMac11,2"
	depends on CONFIG_WINDFARM && CONFIG_I2C && CONFIG_PMAC_SMU
	select CONFIG_I2C_POWERMAC
	help
	  This driver provides thermal control for the PowerMac11,2
	  which are the recent dual and quad G5 machines using the
	  970MP dual-core processor.

config CONFIG_WINDFARM_PM121
	tristate "Support for thermal management on PowerMac12,1"
	depends on CONFIG_WINDFARM && CONFIG_I2C && CONFIG_PMAC_SMU
	select CONFIG_I2C_POWERMAC
	help
	  This driver provides thermal control for the PowerMac12,1
	  which is the iMac G5 (iSight).

config CONFIG_ANSLCD
	tristate "Support for ANS LCD display"
	depends on CONFIG_ADB_CUDA && CONFIG_PPC_PMAC

config CONFIG_PMAC_RACKMETER
	tristate "Support for Apple XServe front panel LEDs"
	depends on CONFIG_PPC_PMAC
	help
	  This driver provides some support to control the front panel
          blue LEDs "vu-meter" of the XServer macs.

config CONFIG_SENSORS_AMS
	tristate "Apple Motion Sensor driver"
	depends on CONFIG_PPC_PMAC && !CONFIG_PPC64 && CONFIG_INPUT && ((CONFIG_ADB_PMU && CONFIG_I2C = y) || (CONFIG_ADB_PMU && !CONFIG_I2C) || CONFIG_I2C)
	select CONFIG_INPUT_POLLDEV
	help
	  Support for the motion sensor included in PowerBooks. Includes
	  implementations for PMU and CONFIG_I2C.

	  This driver can also be built as a module. If so, the module
	  will be called ams.

config CONFIG_SENSORS_AMS_PMU
	bool "PMU variant"
	depends on CONFIG_SENSORS_AMS && CONFIG_ADB_PMU
	default y
	help
	  PMU variant of motion sensor, found in late 2005 PowerBooks.

config CONFIG_SENSORS_AMS_I2C
	bool "I2C variant"
	depends on CONFIG_SENSORS_AMS && CONFIG_I2C
	default y
	help
	  CONFIG_I2C variant of motion sensor, found in early 2005 PowerBooks and
	  iBooks.

endif # CONFIG_MACINTOSH_DRIVERS