Thread (28 messages) flat view 28 messages, 5 authors, 2007-05-05

Re: powerpc_flash_init(), wtf!?

From: David Gibson <hidden>
Date: 2007-05-03 07:03:58

On Thu, May 03, 2007 at 10:35:34AM +0400, Vitaly Bordug wrote:
On Tue, 1 May 2007 15:18:04 +1000
David Gibson wrote:
quoted
powerpc_flash_init(), the only function in arch/powerpc/sysdev/rom.c,
goes through the device tree finding anything with device_type=="rom"
and creating of_platform devices for them, which will be picked up by
the physmap_of mtd driver.  This has two serious conceptual errors and
one bad implementation error which is quite an accomplishment for 15
lines of code.
It should be rewritten then - the way it does init is obsoleted by
the of_platform_bus_probe() now and is confusion-prone. Have to
admit I missed this part while reviewing that rom of_device patch.
Well, I don't see that it needs rewriting as a unit at all.  The
correct place for probing is in the platform code, no extra rom.c
necessary.
[snip]
quoted
Unless someone who actually knows how this code was intended to be
used can suggest a more polite way of fixing it.
I guess, the idea was for this stuff to be updated once one of the
dts inside boot/ would have physmap nodes added. I have
rom/physmap[dts] rehaul in my TODO list, but it has (so far at
least) little chance to happen during this merge window. Yet, if
someone has suggestions and/or some interest for this to be cured,
it will gain priority. Otherwise, I'll replace actual erroneous code
with kind of rant that it's up to BSP code to take care of
of_devices to be registered, using of_platform_bus_probe() or other
way.
I'm having some trouble parsing that paragraph.  At this stage I don't
see any reason to hold off on tearing out arch/powerpc/sysdev/rom.c,
any necessary changes to replace it will go in the platform code or
other places.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help