Skip to content

Commit 0bf75b9

Browse files
groeckWim Van Sebroeck
authored andcommitted
watchdog: iTCO: Drop vendor support
iTCO vendor support was introduced in 2006 to support SuperMicro boards with Pentium 3 CPUs. It was extended in 2009 to support motherbords with broken BIOS (specifically Intel DG33TL). The code is long since obsolete, so let's drop support for it. Signed-off-by: Guenter Roeck <linux@roeck-us.net> Reviewed-by: Wim Van Sebroeck <wim@linux-watchdog.org> Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
1 parent 3f2d8d7 commit 0bf75b9

6 files changed

Lines changed: 2 additions & 258 deletions

File tree

Documentation/watchdog/watchdog-parameters.rst

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -209,13 +209,6 @@ iTCO_wdt:
209209

210210
-------------------------------------------------
211211

212-
iTCO_vendor_support:
213-
vendorsupport:
214-
iTCO vendor specific support mode, default=0 (none),
215-
1=SuperMicro Pent3, 2=SuperMicro Pent4+, 911=Broken SMI BIOS
216-
217-
-------------------------------------------------
218-
219212
ib700wdt:
220213
timeout:
221214
Watchdog timeout in seconds. 0<= timeout <=30, default=30.

drivers/watchdog/Kconfig

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1429,14 +1429,6 @@ config ITCO_WDT
14291429
To compile this driver as a module, choose M here: the
14301430
module will be called iTCO_wdt.
14311431

1432-
config ITCO_VENDOR_SUPPORT
1433-
bool "Intel TCO Timer/Watchdog Specific Vendor Support"
1434-
depends on ITCO_WDT
1435-
help
1436-
Add vendor specific support to the intel TCO timer based watchdog
1437-
devices. At this moment we only have additional support for some
1438-
SuperMicro Inc. motherboards.
1439-
14401432
config IT8712F_WDT
14411433
tristate "IT8712F (Smart Guardian) Watchdog Timer"
14421434
depends on (X86 || COMPILE_TEST) && HAS_IOPORT

drivers/watchdog/Makefile

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -127,9 +127,6 @@ obj-$(CONFIG_IE6XX_WDT) += ie6xx_wdt.o
127127
obj-$(CONFIG_ITCO_WDT) += iTCO_wdt.o
128128
obj-$(CONFIG_LENOVO_SE10_WDT) += lenovo_se10_wdt.o
129129
obj-$(CONFIG_LENOVO_SE30_WDT) += lenovo_se30_wdt.o
130-
ifeq ($(CONFIG_ITCO_VENDOR_SUPPORT),y)
131-
obj-$(CONFIG_ITCO_WDT) += iTCO_vendor_support.o
132-
endif
133130
obj-$(CONFIG_IT8712F_WDT) += it8712f_wdt.o
134131
obj-$(CONFIG_IT87_WDT) += it87_wdt.o
135132
obj-$(CONFIG_HP_WATCHDOG) += hpwdt.o

drivers/watchdog/iTCO_vendor.h

Lines changed: 0 additions & 14 deletions
This file was deleted.

drivers/watchdog/iTCO_vendor_support.c

Lines changed: 0 additions & 216 deletions
This file was deleted.

drivers/watchdog/iTCO_wdt.c

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,6 @@
6363
#include <linux/platform_data/itco_wdt.h>
6464
#include <linux/mfd/intel_pmc_bxt.h>
6565

66-
#include "iTCO_vendor.h"
67-
6866
/* Address definitions for the TCO */
6967
/* TCO base address */
7068
#define TCOBASE(p) ((p)->tco_res->start)
@@ -283,8 +281,6 @@ static int iTCO_wdt_start(struct watchdog_device *wd_dev)
283281
struct iTCO_wdt_private *p = watchdog_get_drvdata(wd_dev);
284282
unsigned int val;
285283

286-
iTCO_vendor_pre_start(p->smi_res, wd_dev->timeout);
287-
288284
/* disable chipset's NO_REBOOT bit */
289285
if (p->update_no_reboot_bit(p->no_reboot_priv, false)) {
290286
dev_err(wd_dev->parent, "failed to reset NO_REBOOT flag, reboot disabled by hardware/BIOS\n");
@@ -314,8 +310,6 @@ static int iTCO_wdt_stop(struct watchdog_device *wd_dev)
314310
struct iTCO_wdt_private *p = watchdog_get_drvdata(wd_dev);
315311
unsigned int val;
316312

317-
iTCO_vendor_pre_stop(p->smi_res);
318-
319313
/* Bit 11: TCO Timer Halt -> 1 = The TCO timer is disabled */
320314
val = inw(TCO1_CNT(p));
321315
val |= 0x0800;
@@ -488,8 +482,7 @@ static int iTCO_wdt_probe(struct platform_device *pdev)
488482
(u64)SMI_EN(p));
489483
return -EBUSY;
490484
}
491-
} else if (iTCO_vendorsupport ||
492-
turn_SMI_watchdog_clear_off >= p->iTCO_version) {
485+
} else if (turn_SMI_watchdog_clear_off >= p->iTCO_version) {
493486
dev_err(dev, "SMI I/O resource is missing\n");
494487
return -ENODEV;
495488
}
@@ -508,8 +501,7 @@ static int iTCO_wdt_probe(struct platform_device *pdev)
508501
}
509502

510503
/* Check chipset's NO_REBOOT bit */
511-
if (p->update_no_reboot_bit(p->no_reboot_priv, false) &&
512-
iTCO_vendor_check_noreboot_on()) {
504+
if (p->update_no_reboot_bit(p->no_reboot_priv, false)) {
513505
dev_info(dev, "unable to reset NO_REBOOT flag, device disabled by hardware/BIOS\n");
514506
return -ENODEV; /* Cannot reset NO_REBOOT bit */
515507
}

0 commit comments

Comments
 (0)