diff mbox

PCI: Fix logic OF logic in pci_dma_configure()

Message ID 1447894192-17210-1-git-send-email-Suravee.Suthikulpanit@amd.com
State New
Headers show

Commit Message

Suthikulpanit, Suravee Nov. 19, 2015, 12:49 a.m. UTC
This patch fixes a bug introduced by previous commit,
which incorrectly checkes the of_node of the end-point device.
Instead, it should check the of_node of the host bridge.

Fixes: 50230713b639 ("PCI: OF: Move of_pci_dma_configure() to pci_dma_configure()")
Reported-by: Robin Murphy <robin.murphy@arm.com>
Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>

---
 drivers/pci/probe.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

-- 
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Suthikulpanit, Suravee Nov. 19, 2015, 12:54 a.m. UTC | #1
Arg... sorry for the typo in the subject. It should say:

[PATCH] PCI: Fix OF logic in pci_dma_configure()

Suravee

On 11/18/2015 6:49 PM, Suravee Suthikulpanit wrote:
> This patch fixes a bug introduced by previous commit,

> which incorrectly checkes the of_node of the end-point device.

> Instead, it should check the of_node of the host bridge.

>

> Fixes: 50230713b639 ("PCI: OF: Move of_pci_dma_configure() to pci_dma_configure()")

> Reported-by: Robin Murphy <robin.murphy@arm.com>

> Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

> Cc: Bjorn Helgaas <bhelgaas@google.com>

> Cc: Arnd Bergmann <arnd@arndb.de>

> Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>

> ---

>   drivers/pci/probe.c | 4 ++--

>   1 file changed, 2 insertions(+), 2 deletions(-)

>

> diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c

> index e735c72..edb1984 100644

> --- a/drivers/pci/probe.c

> +++ b/drivers/pci/probe.c

> @@ -1685,8 +1685,8 @@ static void pci_dma_configure(struct pci_dev *dev)

>   {

>   	struct device *bridge = pci_get_host_bridge_device(dev);

>

> -	if (IS_ENABLED(CONFIG_OF) && dev->dev.of_node) {

> -		if (bridge->parent)

> +	if (IS_ENABLED(CONFIG_OF) &&

> +		bridge->parent && bridge->parent->of_node) {

>   			of_dma_configure(&dev->dev, bridge->parent->of_node);

>   	} else if (has_acpi_companion(bridge)) {

>   		struct acpi_device *adev = to_acpi_device_node(bridge->fwnode);

>


--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
index e735c72..edb1984 100644
--- a/drivers/pci/probe.c
+++ b/drivers/pci/probe.c
@@ -1685,8 +1685,8 @@  static void pci_dma_configure(struct pci_dev *dev)
 {
 	struct device *bridge = pci_get_host_bridge_device(dev);
 
-	if (IS_ENABLED(CONFIG_OF) && dev->dev.of_node) {
-		if (bridge->parent)
+	if (IS_ENABLED(CONFIG_OF) &&
+		bridge->parent && bridge->parent->of_node) {
 			of_dma_configure(&dev->dev, bridge->parent->of_node);
 	} else if (has_acpi_companion(bridge)) {
 		struct acpi_device *adev = to_acpi_device_node(bridge->fwnode);