xref: /linux/drivers/platform/cznic/Kconfig (revision 019f87f1ef967c5a5b263f21ad100f46c874505a)
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	depends on GPIOLIB
21	depends on HW_RANDOM
22	depends on RTC_CLASS
23	select GPIOLIB_IRQCHIP
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	  - GPIO pins
33	    - to get front button press events (the front button can be
34	      configured either to generate press events to the CPU or to change
35	      front LEDs panel brightness)
36	    - to enable / disable USB port voltage regulators and to detect
37	      USB overcurrent
38	    - to detect MiniPCIe / mSATA card presence in MiniPCIe port 0
39	    - to configure resets of various peripherals on board revisions 32+
40	    - to enable / disable the VHV voltage regulator to the SOC in order
41	      to be able to program SOC's OTP on board revisions 32+
42	    - to get input from the LED output pins of the WAN ethernet PHY, LAN
43	      switch and MiniPCIe ports
44	  Other features can be enabled by subsequent config options.
45	  To compile this driver as a module, choose M here; the module will be
46	  called turris-omnia-mcu.
47
48if TURRIS_OMNIA_MCU
49
50config TURRIS_OMNIA_MCU_WATCHDOG
51	bool "Turris Omnia MCU watchdog"
52	default y
53	depends on WATCHDOG
54	select WATCHDOG_CORE
55	help
56	  Say Y here to add support for watchdog provided by CZ.NIC's Turris
57	  Omnia MCU.
58
59endif # TURRIS_OMNIA_MCU
60
61endif # CZNIC_PLATFORMS
62