xref: /linux/drivers/platform/cznic/Kconfig (revision 5423a01df8c5cdce58138fae4eef64b4ca5ff9e5)
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	depends on OF
20	select GPIOLIB
21	select GPIOLIB_IRQCHIP
22	select HW_RANDOM
23	select RTC_CLASS
24	select WATCHDOG_CORE
25	help
26	  Say Y here to add support for the features implemented by the
27	  microcontroller on the CZ.NIC's Turris Omnia SOHO router.
28	  The features include:
29	  - board poweroff into true low power mode (with voltage regulators
30	    disabled) and the ability to configure wake up from this mode (via
31	    rtcwake)
32	  - true random number generator (if available on the MCU)
33	  - MCU watchdog
34	  - GPIO pins
35	    - to get front button press events (the front button can be
36	      configured either to generate press events to the CPU or to change
37	      front LEDs panel brightness)
38	    - to enable / disable USB port voltage regulators and to detect
39	      USB overcurrent
40	    - to detect MiniPCIe / mSATA card presence in MiniPCIe port 0
41	    - to configure resets of various peripherals on board revisions 32+
42	    - to enable / disable the VHV voltage regulator to the SOC in order
43	      to be able to program SOC's OTP on board revisions 32+
44	    - to get input from the LED output pins of the WAN ethernet PHY, LAN
45	      switch and MiniPCIe ports
46	  To compile this driver as a module, choose M here; the module will be
47	  called turris-omnia-mcu.
48
49endif # CZNIC_PLATFORMS
50