Subject: Re: [PATCH 1/5] Add the explanation and sample of RapidIO DTS sector to the document of booting-without-of.txt file.

From: Segher Boessenkool <[email-masked]>
Date: Wed, 13 Jun 2007 11:48:53 +0200

>>>>> +    - device_type : Should be "rapidio"
>>>>
>>>> There is no OF binding, so no.
>>>
>>> So, we need to define it.
>>
>> If you want to.  Until that has been done, don't use
>> a "device_type".  Linux won't use it, anyway.
>
> Do you have another ideas about that? Only remove it?

Yeah, remove it.

>>> Using IP Block Revision is a
>>> clear choice.
>>
>> I don't think so.  For one thing, it describes a version of
>> a cell design, not a version of an actual device.  For another
>> thing, if I hear "8641" I know what you're talking about (sort
>> of, anyway), but I draw a blank stare if you say "v1.0".  I'm
>> sure I'm not the only one.  Concrete names are good.
>>
>
>> From the different view ways, there are different results. Getting the
> version from RapidIO IP revision register is clear to me. :)

It's not in line with how all other "compatible" properties
are done though.

>> But the rapidio node doesn't know or care what the interrupts
>> are connected to, and neither should it.  That's what the
>> interrupt mapping recommended practice is for.
>
> There are no rapidio device in it. Doorbell, msg are all parts of
> rapidio controller.
> For example, 8641 rapidio controller have 2 msg unit: msg0 and msg1.
> They are not rapidio devices. Each msg unit has the tx_irq and rx_irq.

Ah, I think I understand what you mean now.  Yes, the binding
for this specific rapidio controller should define the _order_
of the interrupts in the "interrupts" property; but it cannot
define the format of the single entries, that is defined by
the interrupt controller node it is connected to already.

>>>> You want a #size-cells as well.
>>>
>>> The size is not used in this sector, so no defined.
>>
>> The size _is_ used; in the "ranges" property in this node,
>> for example.  It is also needed to describe the "reg" for
>> any child node of this node.
>>
>> A non-existant "#size-cells" means 1, and "#address-cells"
>> means 2, so in principle you could do without these
>> properties; but Linux doesn't parse the tree correctly in
>> that case (which reminds me, I have some more patches to
>> send).
>
> Ok, I'll add it in the next version for more religious.

It's not religious; true OF believers say leave the node
out if its value would be 1.  It's just that Linux doesn't
handle that properly yet, so you want to protect yourself :-)

Segher