Re: [PATCH 0/2] Add IPMI support for powernv powerpc machines

2014-11-11 Thread Michael Ellerman
On Thu, 2014-11-06 at 08:15 -0600, Corey Minyard wrote:
 On 11/05/2014 09:38 PM, Jeremy Kerr wrote:
  Corey  Michael: if this is acceptable, it may be mergable as two
  separate patches - one for the IPMI subsystem, one for the powernv
  platform.  However, we'd need to preserve their order: patch 2/2 depends
  on 1/2, which provides the structure  function definitions. This'll
  break the build if only 2/2 is in the tree, and CONFIG_IPMI_POWERNV is
  set.
 
  Alternatively, they could be merged by one maintainer, pending an ack
  from the other.
 
 I'm fine either way.

How about the third option? :)

I've put patch 1 in a topic branch:

  
https://git.kernel.org/cgit/linux/kernel/git/mpe/linux.git/log/?h=topic/opal-ipmi

And will merge that into my next, probably by tomorrow.

If you merge the topic branch and then apply patch 2/2, then it should all go
in without any hiccups.

cheers


___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Re: [PATCH 0/2] Add IPMI support for powernv powerpc machines

2014-11-11 Thread Jeremy Kerr
Hi Corey,

 Alternatively, they could be merged by one maintainer, pending an ack
 from the other.

 I'm fine either way.
 
 How about the third option? :)
 
 I've put patch 1 in a topic branch:
 
   
 https://git.kernel.org/cgit/linux/kernel/git/mpe/linux.git/log/?h=topic/opal-ipmi
 
 And will merge that into my next, probably by tomorrow.
 
 If you merge the topic branch and then apply patch 2/2, then it should all go
 in without any hiccups.

OK, and I have an updated IPMI driver patch (ie, 2/2) that will apply on
top of the new ipmi/for-next tree (best done after that merge). Patch
coming shortly...

Cheers,


Jeremy

___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Re: [PATCH 0/2] Add IPMI support for powernv powerpc machines

2014-11-09 Thread Jeremy Kerr
Hi Corey,

Thanks for the review.

 IPMI folks: the IPMI driver could do with a little review, as it's
 not a conventional BT/KCS/SMI SI, in that the low-level send/recv
 interface will handle the entire message at once.
 
 Handling the entire message at once should be fine, as that's what
 this driver level is designed to do for the message handler.  That
 part all looks correct.  The code itself looks good, but I have a
 couple of high-level comments.
 
 The driver at this level can receive more than one message to handle
 at a time, so it needs some sort of queue.  This is to allow multiple
 users and to allow the message handler to send its own commands while
 other commands are going on.  You might argue that the queuing should
 be done in ipmi_msghandler, and you would probably be right.

Ah, that's what I'd been assuming was being done - I missed the
xmit_list in the si_intf code. It'd be great if this could be in the
generic msghandler code, otherwise I'd just be duplicating the si_intf
logic.

 I'll look at doing that.  If that is the case, then your NULL check
 for current message should probably be a BUG_ON().

OK, I'll update this when the msghandler bit is implemented.

 Do you need to handle any BMC flags?  Particularly incoming events?

Not at this stage - we may in future though.

Cheers,


Jeremy
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Re: [PATCH 0/2] Add IPMI support for powernv powerpc machines

2014-11-09 Thread Benjamin Herrenschmidt
On Mon, 2014-11-10 at 11:26 +0800, Jeremy Kerr wrote:
 Hi Corey,
 
 Thanks for the review.
 
  IPMI folks: the IPMI driver could do with a little review, as it's
  not a conventional BT/KCS/SMI SI, in that the low-level send/recv
  interface will handle the entire message at once.
  
  Handling the entire message at once should be fine, as that's what
  this driver level is designed to do for the message handler.  That
  part all looks correct.  The code itself looks good, but I have a
  couple of high-level comments.
  
  The driver at this level can receive more than one message to handle
  at a time, so it needs some sort of queue.  This is to allow multiple
  users and to allow the message handler to send its own commands while
  other commands are going on.  You might argue that the queuing should
  be done in ipmi_msghandler, and you would probably be right.
 
 Ah, that's what I'd been assuming was being done - I missed the
 xmit_list in the si_intf code. It'd be great if this could be in the
 generic msghandler code, otherwise I'd just be duplicating the si_intf
 logic.

Our OPAL interface can only do one at a time ? Because our underlying FW
driver already has a queue ..

  I'll look at doing that.  If that is the case, then your NULL check
  for current message should probably be a BUG_ON().
 
 OK, I'll update this when the msghandler bit is implemented.
 
  Do you need to handle any BMC flags?  Particularly incoming events?
 
 Not at this stage - we may in future though.
 
 Cheers,
 
 
 Jeremy
 ___
 Linuxppc-dev mailing list
 Linuxppc-dev@lists.ozlabs.org
 https://lists.ozlabs.org/listinfo/linuxppc-dev


___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Re: [PATCH 0/2] Add IPMI support for powernv powerpc machines

2014-11-09 Thread Jeremy Kerr
Hi Ben,

 Our OPAL interface can only do one at a time ? Because our underlying
 FW driver already has a queue ..

The Linux driver needs to match responses to their requests, so the
driver needs to keep a reference to the requests that we've sent. The
current implementation is very simple: we just keep one pointer, and
require that there's only one outstanding request.

To have multiple outstanding requests, our options here are that we either:

1) duplicate the si_intf's queuing code in the powernv driver; or

2) move the queuing code from the si_intf component to the generic
   IPMI msghander, and use that (so all drivers can assume a single
   outstanding request)

Corey has suggested the latter, which will only require a minimal change
to the powerpv IPMI driver.

Cheers,


Jeremy
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Re: [PATCH 0/2] Add IPMI support for powernv powerpc machines

2014-11-09 Thread Benjamin Herrenschmidt
On Mon, 2014-11-10 at 17:01 +1100, Alistair Popple wrote:
 Ben,
 
  
  Our OPAL interface can only do one at a time ? Because our underlying FW
  driver already has a queue ..
 
 The OPAL interface supports sending more than one message at a time using the 
 underlying FW queue as you suggest. However in theory the interface doesn't 
 make any response order guarantees, but in practice they should be ordered as 
 our BMC doesn't send out-of-order responses.

Can't we put some ID in the response message ? OPAL messages have
room...

Cheers,
Ben.

 Regards,
 
 Alistair
 
I'll look at doing that.  If that is the case, then your NULL check
for current message should probably be a BUG_ON().
   
   OK, I'll update this when the msghandler bit is implemented.
   
Do you need to handle any BMC flags?  Particularly incoming events?
   
   Not at this stage - we may in future though.
   
   Cheers,
   
   
   Jeremy
   ___
   Linuxppc-dev mailing list
   Linuxppc-dev@lists.ozlabs.org
   https://lists.ozlabs.org/listinfo/linuxppc-dev
  
  ___
  Linuxppc-dev mailing list
  Linuxppc-dev@lists.ozlabs.org
  https://lists.ozlabs.org/listinfo/linuxppc-dev


___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

[PATCH 0/2] Add IPMI support for powernv powerpc machines

2014-11-05 Thread Jeremy Kerr
This series adds IPMI driver and arch glue for OPAL-firmware-based
powernv machines. The first change exposes the firmware's IPMI API, and
the second adds an actual driver.

IPMI folks: the IPMI driver could do with a little review, as it's not a
conventional BT/KCS/SMI SI, in that the low-level send/recv interface
will handle the entire message at once.

Corey  Michael: if this is acceptable, it may be mergable as two
separate patches - one for the IPMI subsystem, one for the powernv
platform.  However, we'd need to preserve their order: patch 2/2 depends
on 1/2, which provides the structure  function definitions. This'll
break the build if only 2/2 is in the tree, and CONFIG_IPMI_POWERNV is
set.

Alternatively, they could be merged by one maintainer, pending an ack
from the other.

Comments / queries / etc welcome.

Cheers,


Jeremy

---
Jeremy Kerr (2):
  powerpc/powernv: Add OPAL IPMI interface
  drivers/char/ipmi: Add powernv IPMI driver

___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev