xref: /linux/drivers/platform/cznic/Kconfig (revision 019f87f1ef967c5a5b263f21ad100f46c874505a)
1992f1a3dSMarek Behún# SPDX-License-Identifier: GPL-2.0-only
2992f1a3dSMarek Behún#
3992f1a3dSMarek Behún# For a description of the syntax of this configuration file,
4992f1a3dSMarek Behún# see Documentation/kbuild/kconfig-language.rst.
5992f1a3dSMarek Behún#
6992f1a3dSMarek Behún
7992f1a3dSMarek Behúnmenuconfig CZNIC_PLATFORMS
8992f1a3dSMarek Behún	bool "Platform support for CZ.NIC's Turris hardware"
9992f1a3dSMarek Behún	help
10992f1a3dSMarek Behún	  Say Y here to be able to choose driver support for CZ.NIC's Turris
11992f1a3dSMarek Behún	  devices. This option alone does not add any kernel code.
12992f1a3dSMarek Behún
13992f1a3dSMarek Behúnif CZNIC_PLATFORMS
14992f1a3dSMarek Behún
15992f1a3dSMarek Behúnconfig TURRIS_OMNIA_MCU
16992f1a3dSMarek Behún	tristate "Turris Omnia MCU driver"
17992f1a3dSMarek Behún	depends on MACH_ARMADA_38X || COMPILE_TEST
18992f1a3dSMarek Behún	depends on I2C
195423a01dSMarek Behún	depends on OF
20ed46f1f7SArnd Bergmann	depends on GPIOLIB
21ed46f1f7SArnd Bergmann	depends on HW_RANDOM
22ed46f1f7SArnd Bergmann	depends on RTC_CLASS
23dfa556e4SMarek Behún	select GPIOLIB_IRQCHIP
24992f1a3dSMarek Behún	help
25992f1a3dSMarek Behún	  Say Y here to add support for the features implemented by the
26992f1a3dSMarek Behún	  microcontroller on the CZ.NIC's Turris Omnia SOHO router.
27dfa556e4SMarek Behún	  The features include:
2890e700fdSMarek Behún	  - board poweroff into true low power mode (with voltage regulators
2990e700fdSMarek Behún	    disabled) and the ability to configure wake up from this mode (via
3090e700fdSMarek Behún	    rtcwake)
3141bb142aSMarek Behún	  - true random number generator (if available on the MCU)
32dfa556e4SMarek Behún	  - GPIO pins
33dfa556e4SMarek Behún	    - to get front button press events (the front button can be
34dfa556e4SMarek Behún	      configured either to generate press events to the CPU or to change
35dfa556e4SMarek Behún	      front LEDs panel brightness)
36dfa556e4SMarek Behún	    - to enable / disable USB port voltage regulators and to detect
37dfa556e4SMarek Behún	      USB overcurrent
38dfa556e4SMarek Behún	    - to detect MiniPCIe / mSATA card presence in MiniPCIe port 0
39dfa556e4SMarek Behún	    - to configure resets of various peripherals on board revisions 32+
40dfa556e4SMarek Behún	    - to enable / disable the VHV voltage regulator to the SOC in order
41dfa556e4SMarek Behún	      to be able to program SOC's OTP on board revisions 32+
42dfa556e4SMarek Behún	    - to get input from the LED output pins of the WAN ethernet PHY, LAN
43dfa556e4SMarek Behún	      switch and MiniPCIe ports
44*019f87f1SMarek Behún	  Other features can be enabled by subsequent config options.
45992f1a3dSMarek Behún	  To compile this driver as a module, choose M here; the module will be
46992f1a3dSMarek Behún	  called turris-omnia-mcu.
47992f1a3dSMarek Behún
48*019f87f1SMarek Behúnif TURRIS_OMNIA_MCU
49*019f87f1SMarek Behún
50*019f87f1SMarek Behúnconfig TURRIS_OMNIA_MCU_WATCHDOG
51*019f87f1SMarek Behún	bool "Turris Omnia MCU watchdog"
52*019f87f1SMarek Behún	default y
53*019f87f1SMarek Behún	depends on WATCHDOG
54*019f87f1SMarek Behún	select WATCHDOG_CORE
55*019f87f1SMarek Behún	help
56*019f87f1SMarek Behún	  Say Y here to add support for watchdog provided by CZ.NIC's Turris
57*019f87f1SMarek Behún	  Omnia MCU.
58*019f87f1SMarek Behún
59*019f87f1SMarek Behúnendif # TURRIS_OMNIA_MCU
60*019f87f1SMarek Behún
61992f1a3dSMarek Behúnendif # CZNIC_PLATFORMS
62