Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
IPMI(4)                FreeBSD Kernel Interfaces Manual                IPMI(4)

NAME
     ipmi -- OpenIPMI compatible IPMI interface driver

SYNOPSIS
     device ipmi

     #include <sys/dev/ipmi.h>

     int
     ioctl(int d, IPMICTL_RECEIVE_MSG_TRUNC, struct ipmi_recv *);

     int
     ioctl(int d, IPMICTL_RECEIVE_MSG, struct ipmi_recv *);

     int
     ioctl(int d, IPMICTL_SEND_COMMAND, struct ipmi_req *);

     int
     ioctl(int d, IPMICTL_REGISTER_FOR_CMD, struct ipmi_cmdspec *);

     int
     ioctl(int d, IPMICTL_UNREGISTER_FOR_CMD, struct ipmi_cmdspec *);

     int
     ioctl(int d, IPMICTL_SET_GETS_EVENTS_CMD, int *);

     int
     ioctl(int d, IPMICTL_SET_MY_ADDRESS_CMD, unsigned int *);

     int
     ioctl(int d, IPMICTL_GET_MY_ADDRESS_CMD, unsigned int *);

     int
     ioctl(int d, IPMICTL_SET_MY_LUN_CMD, unsigned int *);

     int
     ioctl(int d, IPMICTL_GET_MY_LUN_CMD, unsigned int *);

DESCRIPTION
     The IPMI (Intelligent Platform Management Interface) is a standard for
     monitoring system hardware by permitting generic code to detect and moni-
     tor the sensors in a system.  The IPMI standard offers watchdog support,
     an FRU database, and other support extensions.  It is currently being
     adopted by the makers of many single board and embedded system manufac-
     turers.

     The ipmi driver in FreeBSD is heavily adopted from the standard and
     driver; however, not all features described in the standard are sup-
     ported.

IOCTL
     Sending and receiving messages through the ipmi driver requires the use
     of IOCTLs.  The IOCTLs are used due to the complexity of data sent to and
     from the device.  Currently the following IOCTLs are defined:

     IPMI_IOC_MAGIC The magic IOCTL value for this interface.

     IPMICTL_RECEIVE_MSG_TRUNC Like RECEIVE_MSG but if the message can not fit
     into the buffer, it will truncate the contents instead of leaving the
     data in the buffer.

     IPMICTL_RECEIVE_MSG Receive a message.  Possible error values:

     [EAGAIN]           No messages are in the process queue.

     [EFAULT]           An address supplied was invalid.

     [EMSGSIZE]         The address could not fit in the message buffer and
                        will remain in the buffer.

     IPMICTL_SEND_COMMAND Send a message to the interface.  Possible error
     values:

     [EFAULT]           An address supplied was invalid

     [ENOMEM]           Buffers could not be allowed for the command, out of
                        memory.

     IPMICTL_SET_MY_ADDRESS_CMD Set the slave address for source messages.

     IPMICTL_GET_MY_ADDRESS_CMD Get the slave address for source messages.

     IPMICTL_SET_MY_LUN_CMD Set the slave LUN for source messages.

     IPMICTL_GET_MY_LUN_CMD Get the slave LUN for source messages.

   Unimplemented IOCTLS:
     IPMICTL_REGISTER_FOR_CMD Register to receive a specfic command Possible
     error values:

     [EFAULT]           An supplied address was invalid.

     [EBUSY]            The network function/command is already in use.

     [ENOMEM]           Could not allocate memory.

     IPMICTL_UNREGISTER_FOR_CMD Unregister to receive a specific command Pos-
     sible error values:

     [EFAULT]           An address supplied was invalid.

     [ENOENT]           The network function/command was not found.

   Stub only IOCTL:
     IPMICTL_SET_GETS_EVENTS_CMD Set whether this interface receives events.
     Possible error values:

     [EFAULT]           An address supplied was invalid.

SEE ALSO
     ioctl(2), watchdog(4), watchdog(8), watchdogd(8), watchdog(9)

HISTORY
     The ipmi driver first appeared in FreeBSD 7.0.

AUTHORS
     The ipmi driver was written by Doug Ambrisko <ambrisko@FreeBSD.org>.
     This manual page was written by Tom Rhodes <trhodes@FreeBSD.org>.

BUGS
     Not all features of the MontaVista driver are supported.

     Currently, IPMB and BT modes are not implemented.

FreeBSD 6.2                     April 20, 2006                     FreeBSD 6.2

NAME | SYNOPSIS | DESCRIPTION | IOCTL | SEE ALSO | HISTORY | AUTHORS | BUGS

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ipmi&sektion=4&manpath=FreeBSD+6.2-RELEASE>

home | help