xref: /linux/drivers/platform/cznic/Kconfig (revision 77f587896757708780a7e8792efe62939f25a5ab)
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
19992f1a3dSMarek Behún	help
20992f1a3dSMarek Behún	  Say Y here to add support for the features implemented by the
21992f1a3dSMarek Behún	  microcontroller on the CZ.NIC's Turris Omnia SOHO router.
22af340b7aSMarek Behún	  This option only enables the core part of the driver. Specific
23af340b7aSMarek Behún	  features can be enabled by subsequent config options.
24992f1a3dSMarek Behún	  To compile this driver as a module, choose M here; the module will be
25992f1a3dSMarek Behún	  called turris-omnia-mcu.
26992f1a3dSMarek Behún
27019f87f1SMarek Behúnif TURRIS_OMNIA_MCU
28019f87f1SMarek Behún
29af340b7aSMarek Behúnconfig TURRIS_OMNIA_MCU_GPIO
30af340b7aSMarek Behún	bool "Turris Omnia MCU GPIOs"
31af340b7aSMarek Behún	default y
32af340b7aSMarek Behún	depends on GPIOLIB
33af340b7aSMarek Behún	depends on OF
34af340b7aSMarek Behún	select GPIOLIB_IRQCHIP
35af340b7aSMarek Behún	help
36af340b7aSMarek Behún	  Say Y here to add support for controlling MCU GPIO pins and receiving
37af340b7aSMarek Behún	  MCU interrupts on CZ.NIC's Turris Omnia.
38af340b7aSMarek Behún	  This enables you to
39af340b7aSMarek Behún	  - get front button press events (the front button can be configured
40af340b7aSMarek Behún	    either to generate press events to the CPU or to change front LEDs
41af340b7aSMarek Behún	    panel brightness),
42af340b7aSMarek Behún	  - enable / disable USB port voltage regulators and to detect USB
43af340b7aSMarek Behún	    overcurrent,
44af340b7aSMarek Behún	  - detect MiniPCIe / mSATA card presence in MiniPCIe port 0,
45af340b7aSMarek Behún	  - configure resets of various peripherals on board revisions 32+,
46af340b7aSMarek Behún	  - enable / disable the VHV voltage regulator to the SOC in order to be
47af340b7aSMarek Behún	    able to program SOC's OTP on board revisions 32+,
48af340b7aSMarek Behún	  - get input from the LED output pins of the WAN ethernet PHY, LAN
49af340b7aSMarek Behún	    switch and MiniPCIe ports.
50af340b7aSMarek Behún
5174a22fceSMarek Behúnconfig TURRIS_OMNIA_MCU_SYSOFF_WAKEUP
5274a22fceSMarek Behún	bool "Turris Omnia MCU system off and RTC wakeup"
5374a22fceSMarek Behún	default y
5474a22fceSMarek Behún	depends on RTC_CLASS
5574a22fceSMarek Behún	help
5674a22fceSMarek Behún	  Say Y here to add support for CZ.NIC's Turris Omnia board poweroff
5774a22fceSMarek Behún	  into true low power mode (with voltage regulators disabled) and the
5874a22fceSMarek Behún	  ability to configure wake up from this mode (via rtcwake).
5974a22fceSMarek Behún
60019f87f1SMarek Behúnconfig TURRIS_OMNIA_MCU_WATCHDOG
61019f87f1SMarek Behún	bool "Turris Omnia MCU watchdog"
62019f87f1SMarek Behún	default y
63019f87f1SMarek Behún	depends on WATCHDOG
64019f87f1SMarek Behún	select WATCHDOG_CORE
65019f87f1SMarek Behún	help
66019f87f1SMarek Behún	  Say Y here to add support for watchdog provided by CZ.NIC's Turris
67019f87f1SMarek Behún	  Omnia MCU.
68019f87f1SMarek Behún
69c7da0d4eSMarek Behúnconfig TURRIS_OMNIA_MCU_TRNG
70c7da0d4eSMarek Behún	bool "Turris Omnia MCU true random number generator"
71c7da0d4eSMarek Behún	default y
72af340b7aSMarek Behún	depends on TURRIS_OMNIA_MCU_GPIO
73*b97acde6SArnd Bergmann	depends on HW_RANDOM=y || HW_RANDOM=TURRIS_OMNIA_MCU
74c7da0d4eSMarek Behún	help
75c7da0d4eSMarek Behún	  Say Y here to add support for the true random number generator
76c7da0d4eSMarek Behún	  provided by CZ.NIC's Turris Omnia MCU.
77c7da0d4eSMarek Behún
78019f87f1SMarek Behúnendif # TURRIS_OMNIA_MCU
79019f87f1SMarek Behún
80992f1a3dSMarek Behúnendif # CZNIC_PLATFORMS
81