Subject: Re: removing get_immrbase()??

From: Scott Wood <[email-masked]>
Date: Wed, 22 Apr 2009 15:30:01 -0500

Scott Wood wrote:
>> arch/powerpc/include/asm/cpm2.h:#define CPM_MAP_ADDR (get_immrbase() + 
>> 0x80000)
>> arch/powerpc/sysdev/cpm2.c:    cpm2_immr = ioremap(get_immrbase(), 
>> CPM_MAP_SIZE);
>>     these two are related and seem like we could look for "fsl,cpm2"
> 
> And do what with it that wouldn't be a reimplementation of get_immrbase()?

Sorry, I missed that you're referring to the CPM node rather than the 
IMMR node.  The CPM node's address points specifically to some CPM 
control registers, not to the start of a CPM "region" of IMMR/CCSR -- it 
has an empty ranges property to bypass address translation.

I think this needs more careful untangling, and some new device tree 
nodes (sorry Timur) if we want to get rid of the magic offsets and huge 
multiple-block-spanning structures.  I'm not sure it's worth it given 
the microscopic odds of a new CPM2 chip coming out, unless it's part of 
a CPM/QE merge.

-Scott