3b631a56b9a3fb76bfb97885a42041bc398a79e6
[openwrt.git] / target / linux / mpc83xx / patches-2.6.33 / 024-quicc-engine-fixups.patch
1
2 --- a/arch/powerpc/platforms/83xx/rbppc.c       
3 +++ b/arch/powerpc/platforms/83xx/rbppc.c       
4 @@ -121,21 +121,16 @@
5  #endif
6  
7  #ifdef CONFIG_QUICC_ENGINE
8 -       np = of_find_node_by_name(np, "par_io");
9 -       if (np) {
10 -               qe_reset();
11 -               par_io_init(np);
12 -               of_node_put(np);
13 -
14 -               np = NULL;
15 -               while (1) {
16 -                       np = of_find_node_by_name(np, "ucc");
17 -                       if (!np) break;
18 +        qe_reset();
19  
20 -                       par_io_of_config(np);
21 -               }
22 -       }
23 -#endif
24 +        if ((np = of_find_node_by_name(NULL, "par_io")) != NULL) {
25 +                par_io_init(np);
26 +                of_node_put(np);
27 +
28 +                for (np = NULL; (np = of_find_node_by_name(np, "ucc")) != NULL;)
29 +                        par_io_of_config(np);
30 +        }
31 +#endif 
32  
33  }
34  
35 @@ -151,12 +146,16 @@
36         }
37  
38  #ifdef CONFIG_QUICC_ENGINE
39 -       np = of_find_node_by_type(NULL, "qeic");
40 -       if (np) {
41 -               qe_ic_init(np, 0, qe_ic_cascade_low_ipic, qe_ic_cascade_high_ipic);
42 -               of_node_put(np);
43 -       }
44 -#endif
45 +        np = of_find_compatible_node(NULL, NULL, "fsl,qe-ic");
46 +        if (!np) {
47 +                np = of_find_node_by_type(NULL, "qeic");
48 +                if (!np)
49 +                        return;
50 +        }
51 +        qe_ic_init(np, 0, qe_ic_cascade_low_ipic, qe_ic_cascade_high_ipic);
52 +        of_node_put(np);
53 +#endif                          /* CONFIG_QUICC_ENGINE */
54 +
55  }
56  
57  static int __init rbppc_probe(void)
58 @@ -284,6 +283,8 @@
59         { .type = "soc", },
60         { .compatible = "soc", },
61         { .compatible = "simple-bus", },
62 +       { .type = "qe", },
63 +       { .compatible = "fsl,qe", },
64         { .compatible = "gianfar", },
65         { },
66  };
67 @@ -372,4 +373,3 @@
68  
69  DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI_ANY_ID, fixup_pcibridge)
70  DECLARE_PCI_FIXUP_HEADER(0x3388, 0x0021, fixup_rb604)
71 -