]> git.hungrycats.org Git - linux/commitdiff
[PATCH] ppc64: Fix find_udbg_vterm()
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 6 Oct 2004 12:29:21 +0000 (05:29 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Wed, 6 Oct 2004 12:29:21 +0000 (05:29 -0700)
The find_udbg_vterm() used to initialize the early boot console
on LPAR machines will not work properly on some recent pSeries
because the firmware is playing tricks with the "phandle" values
used to identify firmware nodes. This patch fixes that by using
the full path instead.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/ppc64/kernel/pSeries_lpar.c

index 1328cd246154b6b60eaf89621565476b2a244d1e..68eeb7a811e207850546ead17c6e3cdcd858c73e 100644 (file)
@@ -135,7 +135,6 @@ void udbg_init_debug_lpar(void)
 int find_udbg_vterm(void)
 {
        struct device_node *stdout_node;
-       phandle *stdout_ph;
        u32 *termno;
        char *name;
        int found = 0;
@@ -143,10 +142,10 @@ int find_udbg_vterm(void)
        /* find the boot console from /chosen/stdout */
        if (!of_chosen)
                return 0;
-       stdout_ph = (phandle *)get_property(of_chosen, "linux,stdout-package", NULL);
-       if (stdout_ph == NULL)
+       name = (char *)get_property(of_chosen, "linux,stdout-path", NULL);
+       if (name == NULL)
                return 0;
-       stdout_node = of_find_node_by_phandle(*stdout_ph);
+       stdout_node = of_find_node_by_path(name);
        if (!stdout_node)
                return 0;