diff options
author | Bjorn Helgaas <bhelgaas@google.com> | 2018-02-01 12:40:02 -0500 |
---|---|---|
committer | Bjorn Helgaas <helgaas@kernel.org> | 2018-02-01 12:40:02 -0500 |
commit | 278a26b6e80417584541f0e4e82634b9b93b5ea2 (patch) | |
tree | 76292c2e84be89fc0f8f00542aab1660c5304f8e | |
parent | 7dd113b7caf54b7c45a9627da5d6392784377e7c (diff) | |
parent | eac56aa3bc8af3d9b9850345d0f2da9d83529134 (diff) |
Merge remote-tracking branch 'lorenzo/pci/keystone' into next
* lorenzo/pci/keystone:
PCI: keystone: Fix interrupt-controller-node lookup
-rw-r--r-- | drivers/pci/dwc/pci-keystone.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/pci/dwc/pci-keystone.c b/drivers/pci/dwc/pci-keystone.c index 5bee3af47588..39405598b22d 100644 --- a/drivers/pci/dwc/pci-keystone.c +++ b/drivers/pci/dwc/pci-keystone.c | |||
@@ -178,7 +178,7 @@ static int ks_pcie_get_irq_controller_info(struct keystone_pcie *ks_pcie, | |||
178 | } | 178 | } |
179 | 179 | ||
180 | /* interrupt controller is in a child node */ | 180 | /* interrupt controller is in a child node */ |
181 | *np_temp = of_find_node_by_name(np_pcie, controller); | 181 | *np_temp = of_get_child_by_name(np_pcie, controller); |
182 | if (!(*np_temp)) { | 182 | if (!(*np_temp)) { |
183 | dev_err(dev, "Node for %s is absent\n", controller); | 183 | dev_err(dev, "Node for %s is absent\n", controller); |
184 | return -EINVAL; | 184 | return -EINVAL; |
@@ -187,6 +187,7 @@ static int ks_pcie_get_irq_controller_info(struct keystone_pcie *ks_pcie, | |||
187 | temp = of_irq_count(*np_temp); | 187 | temp = of_irq_count(*np_temp); |
188 | if (!temp) { | 188 | if (!temp) { |
189 | dev_err(dev, "No IRQ entries in %s\n", controller); | 189 | dev_err(dev, "No IRQ entries in %s\n", controller); |
190 | of_node_put(*np_temp); | ||
190 | return -EINVAL; | 191 | return -EINVAL; |
191 | } | 192 | } |
192 | 193 | ||
@@ -204,6 +205,8 @@ static int ks_pcie_get_irq_controller_info(struct keystone_pcie *ks_pcie, | |||
204 | break; | 205 | break; |
205 | } | 206 | } |
206 | 207 | ||
208 | of_node_put(*np_temp); | ||
209 | |||
207 | if (temp) { | 210 | if (temp) { |
208 | *num_irqs = temp; | 211 | *num_irqs = temp; |
209 | return 0; | 212 | return 0; |