summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/sysdev/fsl_soc.c
diff options
context:
space:
mode:
authorScott Wood <scottwood@freescale.com>2007-08-29 22:08:40 +0200
committerKumar Gala <galak@kernel.crashing.org>2007-10-04 03:35:43 +0200
commit6d817aa71fddea859ba02d1a0b326da930ce6b50 (patch)
treeb06061acb38cf5592c7a6480b9cd64b76679913c /arch/powerpc/sysdev/fsl_soc.c
parent[PPC] Use cpu setup routines from cpu_setup_44x.S for ARCH=ppc (diff)
downloadlinux-6d817aa71fddea859ba02d1a0b326da930ce6b50.tar.xz
linux-6d817aa71fddea859ba02d1a0b326da930ce6b50.zip
[POWERPC] CPM: Change from fsl,brg-frequency to brg/clock-frequency
As suggested by David Gibson, now that we have a separate node for the baud rate generators, it's better to use the standard clock-frequency property than a cpm-node-level fsl,brg-frequency property. This patch updates existing places where fsl,brg-frequency is used. Signed-off-by: Scott Wood <scottwood@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/sysdev/fsl_soc.c')
-rw-r--r--arch/powerpc/sysdev/fsl_soc.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/arch/powerpc/sysdev/fsl_soc.c b/arch/powerpc/sysdev/fsl_soc.c
index d028e8da027b..30523667df4e 100644
--- a/arch/powerpc/sysdev/fsl_soc.c
+++ b/arch/powerpc/sysdev/fsl_soc.c
@@ -73,22 +73,26 @@ static u32 brgfreq = -1;
u32 get_brgfreq(void)
{
struct device_node *node;
+ const unsigned int *prop;
+ int size;
if (brgfreq != -1)
return brgfreq;
- node = of_find_compatible_node(NULL, NULL, "fsl,cpm1");
- if (!node)
- node = of_find_compatible_node(NULL, NULL, "fsl,cpm2");
- if (!node)
- node = of_find_node_by_type(NULL, "cpm");
+ node = of_find_compatible_node(NULL, NULL, "fsl,cpm-brg");
if (node) {
- int size;
- const unsigned int *prop;
+ prop = of_get_property(node, "clock-frequency", &size);
+ if (prop && size == 4)
+ brgfreq = *prop;
- prop = of_get_property(node, "fsl,brg-frequency", &size);
- if (!prop)
- prop = of_get_property(node, "brg-frequency", &size);
+ of_node_put(node);
+ return brgfreq;
+ }
+
+ /* Legacy device binding -- will go away when no users are left. */
+ node = of_find_node_by_type(NULL, "cpm");
+ if (node) {
+ prop = of_get_property(node, "brg-frequency", &size);
if (prop && size == 4)
brgfreq = *prop;