diff options
author | Scott Wood <scottwood@freescale.com> | 2007-08-29 15:08:40 -0500 |
---|---|---|
committer | Kumar Gala <galak@kernel.crashing.org> | 2007-10-03 20:35:43 -0500 |
commit | 6d817aa71fddea859ba02d1a0b326da930ce6b50 (patch) | |
tree | b06061acb38cf5592c7a6480b9cd64b76679913c /arch/powerpc/sysdev | |
parent | 26f571d7c968dbd30656fc1421eeb0d9088aaad9 (diff) | |
download | blackbird-op-linux-6d817aa71fddea859ba02d1a0b326da930ce6b50.tar.gz blackbird-op-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')
-rw-r--r-- | arch/powerpc/sysdev/fsl_soc.c | 24 |
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; |