Subject: Re: removing get_immrbase()??

From: Scott Wood <[email-masked]>
Date: Wed, 22 Apr 2009 17:00:44 -0500

Timur Tabi wrote:
> Kumar Gala wrote:
> 
>> The specific issue I'm talking about is the addition of new nodes that  
>> might break old device trees. 
> 
> New nodes or new properties?  The CPM nodes are not new.  On some device
> trees, the original versions did not have a compatible property for the
> CPM nodes (e.g. commit 0b5cf10691eb2c95a9126bf25f5e084d83d5d743).

As I said earlier, old-style CPM trees are a completely different 
binding.  They are not supported.  They have not been supported for a 
long time.  They were only supported very briefly at the introduction of 
CPM hardware to arch/powerpc, and were full of problems.

> Like I said earlier, if you can demonstrate that *all* of these device
> tree would be broken with the latest kernel anyway, then we don't need
> to worry about backwards compatibility.

That is indeed the case.  A "demonstration" of that for the tree you 
quote is that the "reg" address changed -- if you tried feeding the old 
tree into the new kernel, it would not find the CPM command register. 
There is no code in the kernel that looks for the command-proc property 
anymore.

> I'm tired of debugging customer issues where the kernel is updated but
> the firmware and device tree aren't.  IMHO, Kernel developers are
> generally too lax when it comes to firmware and device tree backwards
> compatibility, and I think that's wrong.

I understand and agree (and it would be easier to get the backwards 
compatibility right if we didn't have the attitude of "we'll fix the dts 
later if we decide we actually care about that aspect of the hardware" 
when adding it in the first place) -- it just isn't an issue in this 
particular case.

-Scott