[Openipmi-developer] [patch 1/1] ipmi: add autosensing of ipmi device on powerpc using device-tree

Arnd Bergmann arnd at arndb.de
Tue Dec 12 01:25:49 EST 2006


On Monday 11 December 2006 14:18, Segher Boessenkool wrote:
> > We have to include the IPMI information in a way which can be used
> > for controllers which are accessed via memory mapped or legacy I/O.
> 
> How to access registers is implicit in the device tree;
> just look at the parent bus, it knows how to do it, given
> the "reg" value in your device.

right, though it's a little different if you need special opcodes,
like DCR on ppc4xx or PIO on i386. Let's not worry about those
for now.

> > (2)
> > name = ipmi
> > device_type
> 
> device_type = ipmi-kcs
> 
> There's no real reason to include the IPMI version number
> in here, if you really need the version it's trivial to
> probe for; it's not a property of the hardware but of the
> software on the controller (unless some day the IPMI spec
> breaks backwards compatibility, of course).

Why not this?

device-type = ipmi
compatible = ipmi-kcs

I thought the device-type tells you what kind of bindings to
use, and the compatible (and/or model) tells you how to
access it. E.g. all PHBs have device-type=pci and compatible=whatever,
which tells you how to access the config space registers.

> > regs = <addr> <len>
> > reg-spacing = <number>
> > reg-size = <number>
> > reg-shift = <number>
> >
> > The main difference between (1) and (2) is that (2) will represent
> > the whole register region within the reg property.
> 
> Which is the proper thing to do.  The "reg" property should
> describe all of the address space your device listens to.
> Some IPMI-KCS devices listen to just the two registers, some
> listen to an 8-reg block, some to a 16-reg block.

ok

	Arnd <><



More information about the Linuxppc-dev mailing list