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

Suravee Suthikulanit suravee.suthikulpanit at amd.com
Wed Nov 18 16:54:16 PST 2015


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 at arm.com>
> Cc: Rafael J. Wysocki <rafael.j.wysocki at intel.com>
> Cc: Bjorn Helgaas <bhelgaas at google.com>
> Cc: Arnd Bergmann <arnd at arndb.de>
> Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit at 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);
>




More information about the linux-arm-kernel mailing list