diff options
Diffstat (limited to 'arch/powerpc/platforms/chrp/pci.c')
-rw-r--r-- | arch/powerpc/platforms/chrp/pci.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/powerpc/platforms/chrp/pci.c b/arch/powerpc/platforms/chrp/pci.c index b23e39796a0b..de776e3889e3 100644 --- a/arch/powerpc/platforms/chrp/pci.c +++ b/arch/powerpc/platforms/chrp/pci.c | |||
@@ -185,10 +185,9 @@ setup_python(struct pci_controller *hose, struct device_node *dev) | |||
185 | /* Marvell Discovery II based Pegasos 2 */ | 185 | /* Marvell Discovery II based Pegasos 2 */ |
186 | static void __init setup_peg2(struct pci_controller *hose, struct device_node *dev) | 186 | static void __init setup_peg2(struct pci_controller *hose, struct device_node *dev) |
187 | { | 187 | { |
188 | struct device_node *root = find_path_device("/"); | 188 | struct device_node *root = of_find_node_by_path("/"); |
189 | struct device_node *rtas; | 189 | struct device_node *rtas; |
190 | 190 | ||
191 | of_node_get(root); | ||
192 | rtas = of_find_node_by_name (root, "rtas"); | 191 | rtas = of_find_node_by_name (root, "rtas"); |
193 | if (rtas) { | 192 | if (rtas) { |
194 | hose->ops = &rtas_pci_ops; | 193 | hose->ops = &rtas_pci_ops; |
@@ -198,6 +197,7 @@ static void __init setup_peg2(struct pci_controller *hose, struct device_node *d | |||
198 | " your firmware\n"); | 197 | " your firmware\n"); |
199 | } | 198 | } |
200 | pci_assign_all_buses = 1; | 199 | pci_assign_all_buses = 1; |
200 | /* keep the reference to the root node */ | ||
201 | } | 201 | } |
202 | 202 | ||
203 | void __init | 203 | void __init |
@@ -210,7 +210,7 @@ chrp_find_bridges(void) | |||
210 | const unsigned int *dma; | 210 | const unsigned int *dma; |
211 | const char *model, *machine; | 211 | const char *model, *machine; |
212 | int is_longtrail = 0, is_mot = 0, is_pegasos = 0; | 212 | int is_longtrail = 0, is_mot = 0, is_pegasos = 0; |
213 | struct device_node *root = find_path_device("/"); | 213 | struct device_node *root = of_find_node_by_path("/"); |
214 | struct resource r; | 214 | struct resource r; |
215 | /* | 215 | /* |
216 | * The PCI host bridge nodes on some machines don't have | 216 | * The PCI host bridge nodes on some machines don't have |
@@ -309,6 +309,7 @@ chrp_find_bridges(void) | |||
309 | printk("pci_dram_offset = %lx\n", pci_dram_offset); | 309 | printk("pci_dram_offset = %lx\n", pci_dram_offset); |
310 | } | 310 | } |
311 | } | 311 | } |
312 | of_node_put(root); | ||
312 | } | 313 | } |
313 | 314 | ||
314 | /* SL82C105 IDE Control/Status Register */ | 315 | /* SL82C105 IDE Control/Status Register */ |