Skip to content

Commit

Permalink
watchdog: add HAS_IOPORT dependencies
Browse files Browse the repository at this point in the history
In a future patch HAS_IOPORT=n will disable inb()/outb() and friends at
compile time. We thus need to add HAS_IOPORT as dependency for those
drivers using them.

Co-developed-by: Arnd Bergmann <[email protected]>
Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Niklas Schnelle <[email protected]>
Reviewed-by: Guenter Roeck <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Guenter Roeck <[email protected]>
Signed-off-by: Wim Van Sebroeck <[email protected]>
  • Loading branch information
niklas88 authored and Wim Van Sebroeck committed May 4, 2024
1 parent 4c97f04 commit 52df67b
Showing 1 changed file with 30 additions and 28 deletions.
58 changes: 30 additions & 28 deletions drivers/watchdog/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -492,6 +492,7 @@ config 21285_WATCHDOG
config 977_WATCHDOG
tristate "NetWinder WB83C977 watchdog"
depends on (FOOTBRIDGE && ARCH_NETWINDER) || (ARM && COMPILE_TEST)
depends on HAS_IOPORT
help
Say Y here to include support for the WB977 watchdog included in
NetWinder machines. Alternatively say M to compile the driver as
Expand Down Expand Up @@ -1085,7 +1086,7 @@ config ACQUIRE_WDT

config ADVANTECH_WDT
tristate "Advantech SBC Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
If you are configuring a Linux kernel for the Advantech single-board
computer, say `Y' here to support its built-in watchdog timer
Expand All @@ -1094,7 +1095,7 @@ config ADVANTECH_WDT

config ADVANTECH_EC_WDT
tristate "Advantech Embedded Controller Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
select ISA_BUS_API
select WATCHDOG_CORE
help
Expand Down Expand Up @@ -1127,7 +1128,7 @@ config ALIM7101_WDT

config EBC_C384_WDT
tristate "WinSystems EBC-C384 Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
select ISA_BUS_API
select WATCHDOG_CORE
help
Expand All @@ -1137,7 +1138,7 @@ config EBC_C384_WDT

config EXAR_WDT
tristate "Exar Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
select WATCHDOG_CORE
help
Enables watchdog timer support for the watchdog timer present
Expand All @@ -1148,7 +1149,7 @@ config EXAR_WDT

config F71808E_WDT
tristate "Fintek F718xx, F818xx Super I/O Watchdog"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
select WATCHDOG_CORE
help
This is the driver for the hardware watchdog on the Fintek F71808E,
Expand All @@ -1160,7 +1161,7 @@ config F71808E_WDT

config SP5100_TCO
tristate "AMD/ATI SP5100 TCO Timer/Watchdog"
depends on (X86 || COMPILE_TEST) && PCI
depends on (X86 || COMPILE_TEST) && PCI && HAS_IOPORT
select WATCHDOG_CORE
help
Hardware watchdog driver for the AMD/ATI SP5100 chipset. The TCO
Expand Down Expand Up @@ -1199,7 +1200,7 @@ config SC520_WDT

config SBC_FITPC2_WATCHDOG
tristate "Compulab SBC-FITPC2 watchdog"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is the driver for the built-in watchdog timer on the fit-PC2,
fit-PC2i, CM-iAM single-board computers made by Compulab.
Expand All @@ -1224,15 +1225,15 @@ config SBC_FITPC2_WATCHDOG

config EUROTECH_WDT
tristate "Eurotech CPU-1220/1410 Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
Enable support for the watchdog timer on the Eurotech CPU-1220 and
CPU-1410 cards. These are PC/104 SBCs. Spec sheets and product
information are at <http:https://www.eurotech.it/>.

config IB700_WDT
tristate "IB700 SBC Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is the driver for the hardware watchdog on the IB700 Single
Board Computer produced by TMC Technology (www.tmc-uk.com). This
Expand All @@ -1249,7 +1250,7 @@ config IB700_WDT

config IBMASR
tristate "IBM Automatic Server Restart"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is the driver for the IBM Automatic Server Restart watchdog
timer built-in into some eServer xSeries machines.
Expand All @@ -1259,7 +1260,7 @@ config IBMASR

config WAFER_WDT
tristate "ICP Single Board Computer Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is a driver for the hardware watchdog on the ICP Single
Board Computer. This driver is working on (at least) the following
Expand All @@ -1281,7 +1282,7 @@ config I6300ESB_WDT

config IE6XX_WDT
tristate "Intel Atom E6xx Watchdog"
depends on (X86 || COMPILE_TEST) && PCI
depends on (X86 || COMPILE_TEST) && PCI && HAS_IOPORT
select WATCHDOG_CORE
select MFD_CORE
select LPC_SCH
Expand Down Expand Up @@ -1311,6 +1312,7 @@ config ITCO_WDT
select WATCHDOG_CORE
depends on I2C || I2C=n
depends on MFD_INTEL_PMC_BXT || !MFD_INTEL_PMC_BXT
depends on HAS_IOPORT # for I2C_I801
select LPC_ICH if !EXPERT
select I2C_I801 if !EXPERT && I2C
help
Expand Down Expand Up @@ -1341,7 +1343,7 @@ config ITCO_VENDOR_SUPPORT

config IT8712F_WDT
tristate "IT8712F (Smart Guardian) Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is the driver for the built-in watchdog timer on the IT8712F
Super I/0 chipset used on many motherboards.
Expand All @@ -1354,7 +1356,7 @@ config IT8712F_WDT

config IT87_WDT
tristate "IT87 Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
select WATCHDOG_CORE
help
This is the driver for the hardware watchdog on the ITE IT8607,
Expand Down Expand Up @@ -1402,7 +1404,7 @@ config KEMPLD_WDT

config SC1200_WDT
tristate "National Semiconductor PC87307/PC97307 (ala SC1200) Watchdog"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is a driver for National Semiconductor PC87307/PC97307 hardware
watchdog cards as found on the SC1200. This watchdog is mainly used
Expand All @@ -1425,7 +1427,7 @@ config SCx200_WDT

config PC87413_WDT
tristate "NS PC87413 watchdog"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is the driver for the hardware watchdog on the PC87413 chipset
This watchdog simply watches your kernel to make sure it doesn't
Expand All @@ -1439,7 +1441,7 @@ config PC87413_WDT

config NV_TCO
tristate "nVidia TCO Timer/Watchdog"
depends on (X86 || COMPILE_TEST) && PCI
depends on (X86 || COMPILE_TEST) && PCI && HAS_IOPORT
help
Hardware driver for the TCO timer built into the nVidia Hub family
(such as the MCP51). The TCO (Total Cost of Ownership) timer is a
Expand Down Expand Up @@ -1468,7 +1470,7 @@ config RDC321X_WDT

config 60XX_WDT
tristate "SBC-60XX Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This driver can be used with the watchdog timer found on some
single board computers, namely the 6010 PII based computer.
Expand Down Expand Up @@ -1508,15 +1510,15 @@ config SBC7240_WDT

config CPU5_WDT
tristate "SMA CPU5 Watchdog"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
TBD.
To compile this driver as a module, choose M here: the
module will be called cpu5wdt.

config SMSC_SCH311X_WDT
tristate "SMSC SCH311X Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is the driver for the hardware watchdog timer on the
SMSC SCH3112, SCH3114 and SCH3116 Super IO chipset
Expand All @@ -1528,7 +1530,7 @@ config SMSC_SCH311X_WDT

config SMSC37B787_WDT
tristate "Winbond SMsC37B787 Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is the driver for the hardware watchdog component on the
Winbond SMsC37B787 chipset as used on the NetRunner Mainboard
Expand Down Expand Up @@ -1574,7 +1576,7 @@ config VIA_WDT

config W83627HF_WDT
tristate "Watchdog timer for W83627HF/W83627DHG and compatibles"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
select WATCHDOG_CORE
help
This is the driver for the hardware watchdog on the following
Expand Down Expand Up @@ -1604,7 +1606,7 @@ config W83627HF_WDT

config W83877F_WDT
tristate "W83877F (EMACS) Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is the driver for the hardware watchdog on the W83877F chipset
as used in EMACS PC-104 motherboards (and likely others). This
Expand All @@ -1619,7 +1621,7 @@ config W83877F_WDT

config W83977F_WDT
tristate "W83977F (PCM-5335) Watchdog Timer"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is the driver for the hardware watchdog on the W83977F I/O chip
as used in AAEON's PCM-5335 SBC (and likely others). This
Expand All @@ -1632,7 +1634,7 @@ config W83977F_WDT

config MACHZ_WDT
tristate "ZF MachZ Watchdog"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
If you are using a ZF Micro MachZ processor, say Y here, otherwise
N. This is the driver for the watchdog timer built-in on that
Expand All @@ -1645,7 +1647,7 @@ config MACHZ_WDT

config SBC_EPX_C3_WATCHDOG
tristate "Winsystems SBC EPX-C3 watchdog"
depends on X86 || COMPILE_TEST
depends on (X86 || COMPILE_TEST) && HAS_IOPORT
help
This is the driver for the built-in watchdog timer on the EPX-C3
Single-board computer made by Winsystems, Inc.
Expand Down Expand Up @@ -2207,7 +2209,7 @@ comment "PCI-based Watchdog Cards"

config PCIPCWATCHDOG
tristate "Berkshire Products PCI-PC Watchdog"
depends on PCI
depends on PCI && HAS_IOPORT
help
This is the driver for the Berkshire Products PCI-PC Watchdog card.
This card simply watches your kernel to make sure it doesn't freeze,
Expand All @@ -2222,7 +2224,7 @@ config PCIPCWATCHDOG

config WDTPCI
tristate "PCI-WDT500/501 Watchdog timer"
depends on PCI
depends on PCI && HAS_IOPORT
help
If you have a PCI-WDT500/501 watchdog board, say Y here, otherwise N.

Expand Down

0 comments on commit 52df67b

Please sign in to comment.