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

Reply via email to