xref: /linux/drivers/platform/cznic/Kconfig (revision 41bb142a4028949a0c8c505f7f4963067b0a739f)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# For a description of the syntax of this configuration file,
4# see Documentation/kbuild/kconfig-language.rst.
5#
6
7menuconfig CZNIC_PLATFORMS
8	bool "Platform support for CZ.NIC's Turris hardware"
9	help
10	  Say Y here to be able to choose driver support for CZ.NIC's Turris
11	  devices. This option alone does not add any kernel code.
12
13if CZNIC_PLATFORMS
14
15config TURRIS_OMNIA_MCU
16	tristate "Turris Omnia MCU driver"
17	depends on MACH_ARMADA_38X || COMPILE_TEST
18	depends on I2C
19	select GPIOLIB
20	select GPIOLIB_IRQCHIP
21	select HW_RANDOM
22	select RTC_CLASS
23	select WATCHDOG_CORE
24	help
25	  Say Y here to add support for the features implemented by the
26	  microcontroller on the CZ.NIC's Turris Omnia SOHO router.
27	  The features include:
28	  - board poweroff into true low power mode (with voltage regulators
29	    disabled) and the ability to configure wake up from this mode (via
30	    rtcwake)
31	  - true random number generator (if available on the MCU)
32	  - MCU watchdog
33	  - GPIO pins
34	    - to get front button press events (the front button can be
35	      configured either to generate press events to the CPU or to change
36	      front LEDs panel brightness)
37	    - to enable / disable USB port voltage regulators and to detect
38	      USB overcurrent
39	    - to detect MiniPCIe / mSATA card presence in MiniPCIe port 0
40	    - to configure resets of various peripherals on board revisions 32+
41	    - to enable / disable the VHV voltage regulator to the SOC in order
42	      to be able to program SOC's OTP on board revisions 32+
43	    - to get input from the LED output pins of the WAN ethernet PHY, LAN
44	      switch and MiniPCIe ports
45	  To compile this driver as a module, choose M here; the module will be
46	  called turris-omnia-mcu.
47
48endif # CZNIC_PLATFORMS
49