This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

watchdog chip, how to install program?

Dear users, 
I looked through the faq and the forum but found no thread concerning my question. 
If there is I appologize and ask the admins to move this thread to the right place.
Is it possiple to perform the instructions following on an installed astaro firewall/router?

Here follows the installation guide:

Lanner Platform Miscellaneous Utility
Watchdog/Bypass Program 
================================================

Code structure:V1.0

Contents
========

- In This Release
- Building 
- Installation
- Usage
- Q&A
- history
- License


In This Release
===============

This file describes the code structure of Lanner platform watchdog/bypass 
program.  This package provides program(DOS/Linux/FreeBSD) and driver
(Linux/FreeBSD) for Lanner platform-specific function.
Separated makefile available as well.(Makefile.dos, Makefile.linux,
Makefile.freebsd)

For DOS environment, Use DJGPP as compiler., use DJGPP and Makefile.dos.

For Linux, supports kernel versions 2.4.x and 2.6.x and Makefile.linux.

For FreeBSD, it is tested under FreeBSD 8.0.


This release provide 2 ways(Defined in Makefile) to access Lanner platform
devices:

1. DIRECT_IO_ACCESS=0(Default):

   To access Lanner miscellaneous devices through lanner driver.
   Lanner driver is available in bin sub-directory after make.
   This driver is only supported as a loadable module at this time. Lanner is
   not supplying patches against the kernel source to allow for static linking
   of the driver.

   Note: This mode is enabled by set DIRECT_IO_ACCESS=0 in Makefile.

2. DIRECT_IO_ACCESS=1:

   To manipulate Lanner miscellaneous device by userland application direct
   accessing. This mode JUST FOR providing quick way for user to realize
   Lannner platform specific function. This mode supported on DOS and Linux.

   Note: This mode is enabled by set DIRECT_IO_ACCESS=1 in Makefile.



Building
========

To build, 3 steps to accomplish it:

1. Identify current OS and select proper Makefile. 
   Copy Makefile.(os) to Makefile.

2. Select access mode(DIRECT_IO_ACCESS=[0|1] by edit Makefile.

3. Just type make to build, once completed, bin sub-directory contains.



Installation
============

To installation, depend on what's access mode you set:

If DIRECT_IO_ACCESS=1, no driver is need. Just execute executable program in
bin sub-directory to handle watchdog/bypass function.


If DIRECT_IO_ACCESS=0 , driver is needed.
For Linux:
        Insert module and create node in /dev as below example:
        #insmod wd_drv.[k]o
        #mknod /dev/wd_drv c 241 0

For FreeBSD:
        Insert module as below example:
        #kldload -v ./wd_drv.ko




Usage
=====
Once build completed, application(and driver) is available in bin sub-directory.

The command usage will be printout when you execute wd_test without any argument.
Below list usage:

        wd_tst --srbe [1|2](Set Pair 1/2 Runtime Bypass Enabled)
        wd_tst --srbd [1|2](Set Pair 1/2 Runtime Bypass Disabled)
        wd_tst --sobe [1|2](Set Pair 1/2 Off-mode Bypass Enabled)
        wd_tst --sobd [1|2](Set Pair 1/2 Off-mode Bypass Disabled)
        wd_tst --swtsb (Set Watchdog Timeout State to Bypass)
        wd_tst --swtsr (Set Watchdog Timeout State to Reset)
        wd_tst --swt *** (Set Watchdog Timer 1-255 seconds)
        wd_tst
  •  --start (Start Watchdog Timer)
            wd_tst --stop (Stop Watchdog Timer)

    Note 
  • : wd_tst --start is not presented if DIRECT_IO_ACCESS=1, watchdog timer
      will start automatically once "./wd_tst --swt ***" is executed.


    Physical Pair mapping:
    +---------------------------------------------------------+
    |                                                         |
    |  +---------+  +-----+  +----------+  +----------+       |
    |  | console |  | USB |  |  Pair1   |  |  Pair 2  |       |
    |  +---------+  +-----+  +----------+  +----------+       |
    |                                                         |
    +---------------------------------------------------------+

    Note for Linux user: insmod driver if necessary.

    So I hope someone will know if I can use the watchdog chip of my pc.
    thx a lot cptmerget


This thread was automatically locked due to age.
Parents
  • Dear Barry,
    after following your advice I get the result below:


    linux-owpn:/usr/Sample code/wd_bp # make 
    rm -rf ./include/config.h echo "//Created by Makefile, do not edit it" >> 
    ./include/config.h echo "#define DIRECT_IO_ACCESS" >> 
    ./include/config.h echo "#undef LANNER_DRIVER" >> 
    ./include/config.h echo "#define LINUX_ENV" >> 
    ./include/config.h ln -s ../src/ioaccess.c linux/ioaccess.c for i in src; 
    do make -C $i all; done 
    make[1]: Entering directory `/usr/Sample code/wd_bp/src' cc -o wd_tst wd_tst.o ioaccess.o make[1]: 
    cc: Command not found make[1]: [wd_tst] Error 127 (ignored) 
    cp -f wd_tst ../bin/  cp: cannot stat ‘wd_tst’: No such file or directory 
    make[1]: [wd_tst] Error 1 (ignored) make[1]: Leaving directory `/usr/Sample code/wd_bp/src' 
    linux-owpn:/usr/Sample code/wd_bp #  

    Any suggestion what is going wrong or what I have to change,
    regards cptmerget
Reply
  • Dear Barry,
    after following your advice I get the result below:


    linux-owpn:/usr/Sample code/wd_bp # make 
    rm -rf ./include/config.h echo "//Created by Makefile, do not edit it" >> 
    ./include/config.h echo "#define DIRECT_IO_ACCESS" >> 
    ./include/config.h echo "#undef LANNER_DRIVER" >> 
    ./include/config.h echo "#define LINUX_ENV" >> 
    ./include/config.h ln -s ../src/ioaccess.c linux/ioaccess.c for i in src; 
    do make -C $i all; done 
    make[1]: Entering directory `/usr/Sample code/wd_bp/src' cc -o wd_tst wd_tst.o ioaccess.o make[1]: 
    cc: Command not found make[1]: [wd_tst] Error 127 (ignored) 
    cp -f wd_tst ../bin/  cp: cannot stat ‘wd_tst’: No such file or directory 
    make[1]: [wd_tst] Error 1 (ignored) make[1]: Leaving directory `/usr/Sample code/wd_bp/src' 
    linux-owpn:/usr/Sample code/wd_bp #  

    Any suggestion what is going wrong or what I have to change,
    regards cptmerget
Children
No Data