#!/bin/sh
#
#    Copyright (c) 1996-2001 Brocade Communications Systems, Inc.
#    All rights reserved.
#
#    Initialization script to start/stop Fabric OS services and interfaces
#    on different platform.
#

CONFIG=/etc
CHECK=/sbin/chkconfig
WDTD=/sbin/wdtd

if $CHECK verbose ; then
    ECHO='echo -e'
else
    ECHO=:
fi

case "$1" in

'start')
	$ECHO "Hardware watchdog:\c"

	# watchdog will NOT be started if labmode is either
	# 0x41 (= FAB_SUPRESS_HA_MODE file: fabos/src/include/sys/fabos/fabos.h)
	# or 0x01 (= FAB_SUPRESS_ALL)
	lm=0 # by default
	if [ -c /dev/platform ]
	then
		lm=`/fabos/factory/setlabmode | tr -cd "[0-9]"`
	fi
	$CHECK wdtd
	checkwdtd=$?

        if [ \( $lm -eq 64 \)  -o  \( $lm -eq 1  \) -o  \( $checkwdtd -eq 1 \) -o \( ! -x $WDTD \) ]
          then
                echo "Watchdog services NOT started"
	  else
                $WDTD `cat $CONFIG/wdtd.options 2> /dev/null` &
                echo "wdtd started"
          fi
	;;

*)
	echo "usage: $0 start"
	;;
esac
