mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-24 07:46:48 +00:00
e8e1084654
SVN-Revision: 23633
72 lines
1.8 KiB
Diff
72 lines
1.8 KiB
Diff
|
|
--- a/arch/powerpc/platforms/83xx/rbppc.c
|
|
+++ b/arch/powerpc/platforms/83xx/rbppc.c
|
|
@@ -121,21 +121,16 @@ static void __init rbppc_setup_arch(void
|
|
#endif
|
|
|
|
#ifdef CONFIG_QUICC_ENGINE
|
|
- np = of_find_node_by_name(np, "par_io");
|
|
- if (np) {
|
|
- qe_reset();
|
|
- par_io_init(np);
|
|
- of_node_put(np);
|
|
-
|
|
- np = NULL;
|
|
- while (1) {
|
|
- np = of_find_node_by_name(np, "ucc");
|
|
- if (!np) break;
|
|
+ qe_reset();
|
|
|
|
- par_io_of_config(np);
|
|
- }
|
|
- }
|
|
-#endif
|
|
+ if ((np = of_find_node_by_name(NULL, "par_io")) != NULL) {
|
|
+ par_io_init(np);
|
|
+ of_node_put(np);
|
|
+
|
|
+ for (np = NULL; (np = of_find_node_by_name(np, "ucc")) != NULL;)
|
|
+ par_io_of_config(np);
|
|
+ }
|
|
+#endif
|
|
|
|
}
|
|
|
|
@@ -151,12 +146,16 @@ void __init rbppc_init_IRQ(void)
|
|
}
|
|
|
|
#ifdef CONFIG_QUICC_ENGINE
|
|
- np = of_find_node_by_type(NULL, "qeic");
|
|
- if (np) {
|
|
- qe_ic_init(np, 0, qe_ic_cascade_low_ipic, qe_ic_cascade_high_ipic);
|
|
- of_node_put(np);
|
|
- }
|
|
-#endif
|
|
+ np = of_find_compatible_node(NULL, NULL, "fsl,qe-ic");
|
|
+ if (!np) {
|
|
+ np = of_find_node_by_type(NULL, "qeic");
|
|
+ if (!np)
|
|
+ return;
|
|
+ }
|
|
+ qe_ic_init(np, 0, qe_ic_cascade_low_ipic, qe_ic_cascade_high_ipic);
|
|
+ of_node_put(np);
|
|
+#endif /* CONFIG_QUICC_ENGINE */
|
|
+
|
|
}
|
|
|
|
static int __init rbppc_probe(void)
|
|
@@ -284,6 +283,8 @@ static struct of_device_id rbppc_ids[] =
|
|
{ .type = "soc", },
|
|
{ .compatible = "soc", },
|
|
{ .compatible = "simple-bus", },
|
|
+ { .type = "qe", },
|
|
+ { .compatible = "fsl,qe", },
|
|
{ .compatible = "gianfar", },
|
|
{ },
|
|
};
|
|
@@ -372,4 +373,3 @@ static void fixup_rb604(struct pci_dev *
|
|
|
|
DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI_ANY_ID, fixup_pcibridge)
|
|
DECLARE_PCI_FIXUP_HEADER(0x3388, 0x0021, fixup_rb604)
|
|
-
|