summaryrefslogtreecommitdiffstats
path: root/arch/sparc/kernel/prom_common.c
AgeCommit message (Collapse)AuthorFilesLines
2010-10-12of/promtree: no longer call prom_ functions directly; use an ops structureAndres Salomon1-1/+35
Rather than assuming an architecture defines prom_getchild and friends, define an ops struct with hooks for the various prom functions that pdt.c needs. This ops struct is filled in by the arch-(and sometimes firmware-)specific code, and passed to of_pdt_build_devicetree. Update sparc code to define the ops struct as well. Signed-off-by: Andres Salomon <dilinger@queued.net> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-10-10of/promtree: make drivers/of/pdt.c no longer sparc-onlyAndres Salomon1-1/+9
Clean up pdt.c: - make build dependent upon config OF_PROMTREE - #ifdef out the sparc-specific stuff - create pdt-specific header Signed-off-by: Andres Salomon <dilinger@queued.net> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-10-09sparc: break out some PROM device-tree building code out into drivers/ofAndres Salomon1-189/+1
Transitioning into making this useful for architectures other than sparc. This is a verbatim copy of all functions/variables that've been moved. Signed-off-by: Andres Salomon <dilinger@queued.net> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-07-14of/sparc: move is_root_node() to of.hAndres Salomon1-1/+1
Rename is_root_node() to of_node_is_root() and make it available for all archs to use, as it's not PROM-specific. Signed-off-by: Andres Salomon <dilinger@queued.net> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-02-09of: merge of_find_node_by_phandleJeremy Kerr1-12/+0
Merge common function between powerpc, sparc and microblaze. Code is identical for powerpc and microblaze, but adds a lock (and release) of the devtree_lock on sparc. Signed-off-by: Jeremy Kerr <jeremy.kerr@canonical.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-01-28of: unify phandle name in struct device_nodeGrant Likely1-4/+4
In struct device_node, the phandle is named 'linux_phandle' for PowerPC and MicroBlaze, and 'node' for SPARC. There is no good reason for the difference, it is just an artifact of the code diverging over a couple of years. This patch renames both to simply .phandle. Note: the .node also existed in PowerPC/MicroBlaze, but the only user seems to be arch/powerpc/platforms/powermac/pfunc_core.c. It doesn't look like the assignment between .linux_phandle and .node is significantly different enough to warrant the separate code paths unless ibm,phandle properties actually appear in Apple device trees. I think it is safe to eliminate the old .node property and use phandle everywhere. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: David S. Miller <davem@davemloft.net> Tested-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2009-11-08sparc: Move of_set_property_mutex acquisition outside of devtree_lock grab.David S. Miller1-2/+2
Otherwise we try to sleep with preemption disabled, etc. Noticed by Thomas Gleixner. Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-17sparc,leon: Added support for AMBAPP bus.Konrad Eisele1-2/+8
The device is a AMBA bus if it is a child of prom node "ambapp" (AMBA plug and play). Two functions leon_trans_init() and leon_node_init() (defined in sparc/kernel/leon_kernel.c) are called in the prom_build_tree() path if CONFIG_SPARC_LEON is defined. leon_node_init() will build up the device tree using AMBA plug and play. Also: a extra check was addes to prom_common.c:build_one_prop() in case a rom-node is undefined which can happen for SPARC-LEON because it creates only a minimum nodes to emulate sparc behaviour. Signed-off-by: Konrad Eisele <konrad@gaisler.com> Reviewed-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-06-16sparc: Call OF and MD cpu scanning explicitly from paging_init()David S. Miller1-2/+0
We need to split up the cpu present mask setup from the cpu_data initialization, and this is a first step towards that. Signed-off-by: David S. Miller <davem@davemloft.net>
2009-01-05sparc: Clean arch-specific code in prom_common.cJulian Calaby1-11/+3
prom_nextprop() and prom_firstprop() have slightly different calling conventions in 32 and 64 bit SPARC. prom_common.c uses a ifdef guard to ensure that these functions are called correctly. Adjust code to eliminate this ifdef by using a calling convention that is compatible with both 32 and 64 bit SPARC. Signed-off-by: Julian Calaby <julian.calaby@gmail.com> Reviewed-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-07sparc: Restore irq_trans_init() call in prom_create_node().David S. Miller1-2/+2
This broke sparc64 in various ways. Add an empty dummy hook in sparc32's prom_32.c so that we can potentially handle things on that side similarly, and in particular avoid a prom_common.c ifdef :-) Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-05sparc: Move of_console_{device,path,options} info prom_common.cDavid S. Miller1-0/+9
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-05sparc: Move prom_build_devicetree() into prom_common.cDavid S. Miller1-5/+27
To make this work we provide a dummy nop implementation of of_fill_in_cpu_data() for sparc32. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-05sparc: Move core of OF device tree building code into prom_common.cDavid S. Miller1-2/+55
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-05sparc: Move create_node() and friends into prom_common.cDavid S. Miller1-1/+40
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-05sparc: Move property building code into prom_common.cDavid S. Miller1-0/+81
Unfortunately there is some sparc32/sparc64 ifdef'ery in here due to the difference in how the prom_firstprop() and prom_nextprop() routines work. This will be eliminated eventually. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-05sparc: Move 'unique_id' into prom_common.c and rename to 'prom_unique_id'David S. Miller1-0/+1
This will be used in a subsequent changeset. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-05sparc: Create common area for OF device layer code.David S. Miller1-0/+121
This is where common code implementations will go as we unify 32-bit and 64-bit OF device tree code. Signed-off-by: David S. Miller <davem@davemloft.net>