6 watchdog timer programming, 1 architecture overview, Architecture overview – ADLINK CSA-5100 User Manual
Page 35
 
35
CSA-5100
6 Watchdog Timer Programming
Some applications require a server to intelligently switch the LAN bypass mode off and on. 
ADLINK has developed SuperIO watchdog APIs for the CSA-5100 to meet the needs of 
these application scenarios. First, we will introduce the overall software architecture for 
programming. Secondly, we will define the released deliverables, including source file, 
makefile, readme, install script and sample test program. Finally, detailed API definitions and 
references will be presented to allow customers to easily program their applications. 
 
6.1 Architecture Overview
All the APIs listed in this document are programmed according to the following logical block 
architecture, shown as Figure 1. In this figure, the client is running in user space of the Linux 
OS and driver in kernel space. 
 
Logical Block Architecture for Watchdog Timer Programming
 
The watchdog is controlled by writing to the SuperIO registers implemented from the 
watchdog driver. The BYPASS_LAN# signal will indicate whether LAN bypass is activated. 
When the BYPASS_LAN# output is 0 (active-low), the CSA-5100 hardware will bypass the 
LAN inputs. When the BYPASS_LAN# output is 1, the CSA-5100 hardware will take in the 
LAN inputs for IP package inspection and security processing. The various pin functions 
belonging to the Watchdog Driver are described as follows. 
 
•
BYPASS_LAN#
(active-low). Both the BIOS and Linux watchdog software can read
and change the status of this signal. LAN bypass is activated when BYPASS_LAN# is 
set to 0. 
•
WDOG_CTRL
(active-high). Linux can use this pin to enable/disable the watchdog.