freeipmi-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Freeipmi-devel] FreeIPMI question


From: Marty Rogers
Subject: Re: [Freeipmi-devel] FreeIPMI question
Date: Tue, 18 May 2004 15:03:54 -0400
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031007

Anand Babu wrote:

,----[ Marty Rogers <address@hidden> ]
| All,
| | I am attempting to adapt FreeIPMI to run on a controller to talk to
| the BMC using IPMB.
| | My question is about how, or if, freeipmi handles "autonomous"
| messages (such as Event messages I believe- they can come in any
| time?)  Does a process ever sleep, waiting on a signal of some sort
| from the system interface?  Or is there only a
| send-a-message-wait-for-a-reply-then-get-out paradigm ?
| | (Presumably polling is always an option...) | | If there's waiting/sleeping involved, briefly how is it implemented ?
`----
Yes can issue a blocking KCS read call on the BMC in a loop looking
for Event messages.

ssize_t
ipmi_kcs_read (u_int16_t sms_io_base, u_int8_t* bytes, u_int32_t bytes_len);

Please share more info about your work. We would like to work with you
closely.
So ipmi_kcs_cmd() writes a command and doesn't return until the response is received, ipmi_kcs_write() writes a command and returned immed., and ipmi_kcs_read() "hangs"
until "something" is received ?

If "yes", then the way to poll for unexpected/autonomous messages (Event Messages?)
is to call ipmi_kcs_read() in a loop?

My project has me implementing IPMI on essentially a "satellite controller" on the IPMB bus (I2C bus), running Linux. I've looked at OpenIPMI, modifying it's BT interface to do I2C kernel calls instead of memory accesses (the BT interface protocol implements seq. numbers, like IPMB), effectively becoming an IPMB interface. I just pick an I2C address around B0h-BEh, and xmit from LUN 0 (the IPMB interface is always LUN 0).

I'm not sure FreeIPMI can be modified similarly, but your thoughts would be most
welcome.  I would have to implement seq. number generation and matching.

martin rogers






reply via email to

[Prev in Thread] Current Thread [Next in Thread]