apbuart: Kill dependency on deprecated Sparc-only PROM interfaces.
authorDavid S. Miller <davem@davemloft.net>
Thu, 5 Nov 2009 07:59:18 +0000 (23:59 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 5 Nov 2009 07:59:18 +0000 (23:59 -0800)
Use the proper modern OF ones instead.

Noticed by Stephen Rothwell.

Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/serial/apbuart.c

index c7883a36be9d438244e91c099335d74f2f84d970..5f9dec38db819d557bb6e121b95bd7c64210d4c2 100644 (file)
@@ -29,7 +29,6 @@
 #include <linux/io.h>
 #include <linux/serial_core.h>
 #include <asm/irq.h>
-#include <asm/oplib.h>
 
 #include "apbuart.h"
 
@@ -596,10 +595,9 @@ static struct of_platform_driver grlib_apbuart_of_driver = {
 static void grlib_apbuart_configure(void)
 {
        static int enum_done;
-       struct device_node *np;
+       struct device_node *np, *rp;
        struct uart_port *port = NULL;
-
-       int node;
+       const u32 *prop;
        int freq_khz;
        int v = 0, d = 0;
        unsigned int addr;
@@ -610,8 +608,10 @@ static void grlib_apbuart_configure(void)
                return;
 
        /* Get bus frequency */
-       node = prom_getchild(prom_root_node);
-       freq_khz = prom_getint(node, "clock-frequency");
+       rp = of_find_node_by_name(NULL, "/");
+       rp = of_get_next_child(rp, NULL);
+       prop = of_get_property(rp, "clock-frequency", NULL);
+       freq_khz = *prop;
 
        line = 0;
        for_each_matching_node(np, apbuart_match) {