Thanks Corey for the very helpful response. See answers embedded: Corey Minyard wrote: > [EMAIL PROTECTED] wrote: > >>Hello, >> >>I am developing a firmware upgrade utility and am having trouble >>accessing my ARTM through the system interface via the openIPMI driver >>interface. The ARTM has a site ID of 0x0f (IPMB address 0x8e) and sits >>on IPMB-L. When specifying channel 7 for the slave address the IOCTL >>always returns invalid operand. The following is a code sample of what >>fails: >> >> ipmb.addr_type = IPMI_IPMB_ADDR_TYPE; >> ipmb.channel = 7; >> ipmb.lun = 0x00; >> ipmb.slave_addr = 0x8e; >> >> req.addr = (void *) &ipmb; >> req.addr_len = sizeof(ipmb); >> req.msgid = 0x1234; >> req.msg.netfn = 0x06; >> req.msg.cmd = 0x01; >> req.msg.data = NULL; >> req.msg.data_len = 0; >> >> rv = ioctl(dev, IPMICTL_SEND_COMMAND, &req); >> >>I have also tried formatting a send message command using the system >>interface address type but found an email archive that stated the driver >>would not allow you to format your own send message command so I suspect >>the above is the correct approach but not quite accurate? >> > > It looks correct to me. Is the exact error EINVAL?
Sorry. I meant "invalid argument" emitted from perror() which is EINVAL. > > >>I have to date been testing on Wind River PNE1.4 with an older version >>of the open IPMI driver: >> >>[EMAIL PROTECTED]:/root> rpm -q -a | grep -i ipmi >>ipmitool-1.8.2-1 >>openipmi-1.4.26-1 >>ipmiutil-1.8.1-1_WR >> >>Is this version too old for what I am trying to do or am I just missing >>something? >> > > That doesn't tell the kernel version, which is what I would really > need. This error doesn't point to a kernel version being too old (that > would be a timeout) unless it is really old. [EMAIL PROTECTED]:/mnt> uname -a Linux oem16 2.6.21.7-hrt1-cfs-v20.2-WR1.5ag_cgl #1 SMP PREEMPT Fri Aug 24 14:29:48 EDT 2007 x86_64 GNU/Linux > It may be that the driver > is unable to find the channel due to it not being reported properly when > getting the channel info. Ah. This would explain things as this IPMC firmware does not implement the GetChannelInfo command (returns invalid command). I did wonder about this but I have no problem accessing channel 0 and f. I assume the driver does not bother to check when attempting access to these channels? > > Also, IIRC, the WRS kernel has some type of virtual IPMI driver, are you > sure you are getting the right device? I am only having trouble with the MMC's on IPMB-L. I have no problem accessing addressing the system interface and devices on IPMB-0. Thanks again, Mark > > -corey > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Openipmi-developer mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/openipmi-developer ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Openipmi-developer mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openipmi-developer
