I have been hunting for a system that has a Generic Device Locator
so I can see what the output of the rather obscure "ipmitool gendev list"
command would give  (well, 26 hits on google counts as obscure in 
my book ;))

First, a bug - the ipmitool man page doesn't list the option at
all.  You can see it with ipmitool --help

        # ipmitool 2>&1 | grep gen
           gendev        Read/Write Device associated with Generic Device 
locators sdr

        # ipmitool gendev
        Rx gendev command: (null)
        SDR Commands:  list read write
           list                     List All Generic Device Locators
           read <sdr name> <file>   Read to file eeprom specify by Generic 
Device Locators
           write <sdr name> <file>  Write from file eeprom specify by Generic 
Device Locators

The best explanation I could see was from the IPMI spec (page 564):

  Intelligent Platform Management Interface Specification

  43.7 SDR Type 10h - Generic Device Locator Record

  This record is used to store the location and type information for
  devices on the IPMB or management controller  private busses that
  are neither IPMI FRU devices nor IPMI management controllers. These
  devices can either becommon non-intelligent I2C devices, special
  management ASICs, or proprietary controllers.

(It has a nice table and more details about this as well - if you don't have
the doc memorized it's at 
http://www.scribd.com/doc/58588834/643/SDR-Type-10h-Generic-Device-Locator-Record)

The source file "lib/ipmi_gendev.c" has some interesting comments
that appear to point to what it might output:

  lprintf(LOG_ERR, "Generic device: %s", dev->id_string);
  lprintf(LOG_ERR, "I2C Chnl: %x", channel);
  lprintf(LOG_ERR, "I2C Bus : %x", i2cbus);
  lprintf(LOG_ERR, "I2C Addr: %x", i2caddr);

  lprintf(LOG_ERR, "Gen Device : %s", dev->id_string);
  lprintf(LOG_ERR, "Access Addr: %x", dev->dev_access_addr);
  lprintf(LOG_ERR, "Slave Addr : %x", dev->dev_slave_addr);
  lprintf(LOG_ERR, "Channel Num: %x", dev->channel_num);
  lprintf(LOG_ERR, "Lun        : %x", dev->lun);
  lprintf(LOG_ERR, "Bus        : %x", dev->bus);
  lprintf(LOG_ERR, "Addr Span  : %x", dev->addr_span);
  lprintf(LOG_ERR, "DevType    : %x", dev->dev_type);
  lprintf(LOG_ERR, "DevType Mod: %x", dev->dev_type_modifier);

But these are comments and I don't really want to know the guts of
ipmitool enough to follow it around (my own systems don't print
anything!)  Does anyone have more information about this, or, 
better still, a working example of a command, output, and how it
might be used?

Thanks!

dan

^..^


------------------------------------------------------------------------------
LogMeIn Central: Instant, anywhere, Remote PC access and management.
Stay in control, update software, and manage PCs from one command center
Diagnose problems and improve visibility into emerging IT issues
Automate, monitor and manage. Do more in less time with Central
http://p.sf.net/sfu/logmein12331_d2d
_______________________________________________
Ipmitool-devel mailing list
Ipmitool-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ipmitool-devel

Reply via email to