tsalarm man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

tsalarm(7D)			    Devices			   tsalarm(7D)

NAME
       tsalarm - Alarm device driver

SYNOPSIS
       tsalarm@0:ctl

DESCRIPTION
       The  tsalarm  driver  is	 a Multi-threaded, loadable non-STREAMS pseudo
       driver that manages ALOM alarms. The tsalarm driver provides an	inter‐
       face through which alarm relays can be controlled on SUNW,Netra-240 and
       SUNW,Netra-440 platforms.

HARDWARE INTERFACE
       The alarm hardware differs depending on platform. The Netra 240 and 440
       platforms  features  four dry contact alarm relays	which are con‐
       trolled by ALOM. You can set each alarm to  "on"	 or  "off"  by	 using
       ioctl interfaces provided from the host. The four alarms are labeled as
       "critical," "major," "minor," and "user." The user alarm is  set	 by  a
       user  application  depending on system condition. LED's in front of the
       box provide a visual indication of  the	four  alarms.  The  number  of
       alarms and their meanings/labels may vary across platforms.

IOCTLS
       The  interface  provided	 by  the  tsalarm driver comprises ioctls that
       enable applications to manipulate the alarm module. The	alarm	module
       is accessed via two device nodes:  i) /dev/lom and /dev/tsalarm:ctl.

       The   following	 ioctls	  are	supported   by	  the	/dev/lom   and
       /dev/tsalarm:ctl devices:

       TSIOCALCTL - Turn an alarm on or off.

	   The argument is a pointer to	 the  ts_aldata_t/lom_aldata_t	struc‐
	   ture.  This	structure  is  described  below. alarm_no member is an
	   integer which specifies the alarm to which the  command  is	to  be
	   applied. The alarm_state/state structure member indicates the state
	   to which the alarm should be set (where 0 == off). An error	 (EIN‐
	   VAL)	  is  returned	if  either  an	invalid	 alarm_no  or  invalid
	   alarm_state is provided.

       TSIOCALSTATE - Get the state of the alarms.

	   The argument is a pointer to	 the  ts_aldata_t/lom_aldata_t	struc‐
	   ture.  This	structure  is  described  below. alarm_no member is an
	   integer which indicates the alarm to	 which	the  command  will  be
	   applied.  The   alarm_state	member holds the alarm's current state
	   and is filled in by the driver. A zero indicates that the alarm  is
	   off.	 An  error (EINVAL) is returned if an invalid alarm_no is pro‐
	   vided. The structures and definitions for the  values  are  defined
	   below.

       Alarm values:

       The following old style values are defined in <lom.io.h>

	    #define ALARM_NUM_0		0 /* number of zero'th alarm */

	    #define ALARM_NUM_1		1 /* number of first alarm */

	    #define ALARM_NUM_2		2 /* number of second alarm */

	    #define ALARM_NUM_3		3 /* number of third alarm */

	 Alarm values defined in <lom.io.h>

	    #define ALARM_OFF	       0 /* Turn off alarm */

	    #define ALARM_ON	       1 /* Turn on alarm */

       Alarm Data Structure:

       This structure is defined in <lom.io.h>

	    typedef struct {

		 int alarm_no;	     /* alarm to apply command to */

		 int alarm_state;    /* state of alarm (0 == off) */

	    } ts_aldata_t;

       Use the following LOM interfaces to get and set the alarms. These defi‐
       nitions are included in <lom_io.h>

	   #define ALARM_CRITICAL	  0 /* number of critical alarm */

	   #define ALARM_MAJOR		  1 /* number of major alarm */

	   #define ALARM_MINOR		  2 /* number of minor alarm */

	   #define ALARM_USER		  3 /* number of user alarm */

       The following alarm data structure is provided in <lom_io.h>:

       typedef struct {

	       int alarm_no;

	       int state;

	   } lom_aldata_t;

ERRORS
       An open() will fail if:

       ENXIO		       The driver is not installed in the system.

       An ioctl() will fail if:

       EFAULT		       There was a hardware failure during the	speci‐
			       fied operation.

       EINVAL		       The  alarm  number specified is not valid or an
			       invalid value was supplied.

       ENXIO		       The driver is not installed in  the  system  or
			       the  monitor  callback  routine	could  not  be
			       scheduled.

EXAMPLES
       How to set an alarm:

	    #include <sys/unistd.h>
	    #include <fcntl.h>
	    #include <stdio.h>
	    #include <lom_io.h>

	    #define LOM_DEVICE "/dev/lom"

	    int
	    main()
	    {
	       lom_aldata_t lld;
	       int fd = open(LOM_DEVICE, O_RDWR);

	       if (fd == -1) {
		       printf("Error opening device: %s0, LOM_DEVICE);
		       exit (1);
	       }

	       lld.alarm_no = ALARM_CRITICAL;	/* Set the critical alarm */
	       lld.state = ALARM_ON;   /* Set the alarm */

	       if (ioctl(fd, LOMIOCALCTL, (char *)&lld) != 0)
		       printf("Setting alarm failed");
	       else
		       printf("Alarm set successfully");

	       close(fd);

	    }

FILES
       /dev/lom

	   LOM device.

       /dev/tsalarm:ctl

	   Alarm control device.

       /platform/platform/kernel/drv/sparcv9/tsalarm

	   Device driver module.

       /platform/SUNW,Netra-240/kernel/drv/tsalarm.conf

	   Driver configuration file.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Availability		     │SUNWcarx.u		   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Architecture		     │SPARC			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       attributes(5)

       Writing Device Drivers

SunOS 5.10			  16 Mar 2004			   tsalarm(7D)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net