Hp is providing a Hardware WatchDog Timer driver that will only work with the
specific HW Timer located in the HP ProLiant iLO 2 ASIC. The iLO 2 HW Timer
will generate a Non-maskable Interrupt (NMI) 9 seconds before physically
resetting the server, by removing power, so that the event can be logged to
the HP Integrated Management Log (IML), a Non-Volatile Random Access Memory
(NVRAM). The logging of the event is performed using the HP ProLiant ROM via
an Industry Standard access known as a BIOS Service Directory Entry.--- linux-2.6.23.1/drivers/char/watchdog/Makefile.orig 2007-10-12 11:43:44.000000000 -0500
+++ linux-2.6.23.1/drivers/char/watchdog/Makefile 2007-10-15 07:56:31.000000000 -0500
@@ -118,3 +118,10 @@# Architecture Independant
obj-$(CONFIG_SOFT_WATCHDOG) += softdog.o
+
+#
+# Makefile for the hp WatchDog driver.
+#
+CFLAGS_hpwdt.o += -O
+obj-$(CONFIG_HP_WATCHDOG) += hpwdt.o
+
--- linux-2.6.23.1/drivers/char/watchdog/Kconfig.orig 2007-10-12 11:43:44.000000000 -0500
+++ linux-2.6.23.1/drivers/char/watchdog/Kconfig 2007-10-15 07:57:27.000000000 -0500
@@ -55,6 +55,19 @@
To compile this driver as a module, choose M here: the
module will be called softdog.+config HP_WATCHDOG
+ tristate "Hewlett-Packard watchdog"
+ depends on WATCHDOG && X86
+ help
+ A software monitoring watchdog and NMI sourcing driver. This driver
+ will detect lockups and provide stack trace. Also, when an NMI
+ occurs this driver will make the necessary BIOS calls to log
+ the cause of the NMI. This is a driver that will only load on a
+ HP ProLiant system with a minimum of iLO2 support.
+ To compile this driver as a module, choose M here: the
+ module will be called hpwdt.
+
+
# ALPHA Architecture# ARM Architecture
--- linux-2.6.23.1/drivers/char/watchdog/hpwdt.c.orig 2007-10-15 07:53:12.000000000 -0500
+++ linux-2.6.23.1/drivers/char/watchdog/hpwdt.c 2007-10-15 07:53:12.000000000 ...
--=20
Andrey Panin | Linux and UNIX system administrator
pazke@donpac.ru | PGP key: wwwkeys.pgp.net
On Mon, 15 Oct 2007 14:05:50 -0400 (EDT)
Hi,
Your patch looks quite clean in general; however it does make me wonder
if it should either leverage or expand the arch/x86/pci/pcbios.c
infrastructure for doing BIOS32 calls and share that.... it's kinda
unpleasant as a general thought to have drivers poke this deep into
various guts of the system/bios.... esp if the common code has to do
something very similar already.Greetings,
Arjan van de Ven
-
This could be done but then it adds complexity to the patch (as now two
different parts of the kernel need to be modified) and requires
regression testing for multiple platforms and OEM's.This patch is isolated similar to the other HW specific HW Watchdog
Timers and yet provides a common Linux user interface that is applicable
across all OEM platforms that choose to implement a HW watchdog timer
device driver.We chose to keep the changes isolated at this time to gain quick
acceptance upstream.-----Original Message-----
From: Arjan van de Ven [mailto:arjan@infradead.org]
Sent: Monday, October 15, 2007 1:16 PM
To: Mingarelli, Thomas
Cc: linux-kernel@vger.kernel.org; Mingarelli, Thomas
Subject: Re: [HP ProLiant WatchDog driver] hpwdt HP WatchDog PatchHi,
Your patch looks quite clean in general; however it does make me wonder
if it should either leverage or expand the arch/x86/pci/pcbios.c
infrastructure for doing BIOS32 calls and share that.... it's kinda
unpleasant as a general thought to have drivers poke this deep into
various guts of the system/bios.... esp if the common code has to do
something very similar already.Greetings,
Arjan van de Ven
-
