Re: [PATCH 3/3] PCI: generic: Fix the bug of pci_fixup_irqs() for arm64 platform.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[+cc Tomasz, Lorenzo]

On Thu, Jan 12, 2017 at 02:28:24PM +0800, Dongdong Liu wrote:
> arch/arm64/pci.c pcibios_alloc_irq() has the same function as
> pci_fixup_irqs(), so we add condition #ifndef CONFIG_ARM64 for
> pci_fixup_irqs().
> 
> Signed-off-by: Dongdong Liu <liudongdong3@xxxxxxxxxx>
> Reviewed-by: Gabriele Paoloni <gabriele.paoloni@xxxxxxxxxx>
> Reviewed-by: Zhou Wang <wangzhou1@xxxxxxxxxxxxx>
> ---
>  drivers/pci/host/pci-host-common.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/pci/host/pci-host-common.c b/drivers/pci/host/pci-host-common.c
> index e3c48b5..f160afc 100644
> --- a/drivers/pci/host/pci-host-common.c
> +++ b/drivers/pci/host/pci-host-common.c
> @@ -145,7 +145,9 @@ int pci_host_common_probe(struct platform_device *pdev,
>  		return -ENODEV;
>  	}
>  
> +#ifndef CONFIG_ARM64
>  	pci_fixup_irqs(pci_common_swizzle, of_irq_parse_and_map_pci);
> +#endif

d8ed75d59332 ("ARM64: PCI: ACPI support for legacy IRQs parsing and
consolidation with DT code") added pcibios_alloc_irq() for arm64.

arm64 is the only arch that implements pcibios_alloc_irq().  And now
you want to add an ifdef here so arm64 is the only arch that doesn't
call pci_fixup_irqs().

I don't remember the details of why arm64 is so special here.
Obviously we'd prefer not to have the ifdef and not to have the
arm64-specific pcibios_alloc_irq().

>  	/*
>  	 * We insert PCI resources into the iomem_resource and
> -- 
> 1.9.1
> 



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux