Re: [PATCH 09/18] Delayed m68k setup of PCI IRQs to bus scan time

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

 



On Thu, Oct 02, 2014 at 05:07:37AM +0100, matt@xxxxxxxxxxxx wrote:
> From: Matthew Minter <matt@xxxxxxxxxxxx>
> 
> Currently PCI IRQs are assigned during mcf_pci_init which is only run
> at boot time, this causes devices which are connected after boot time
> to not receive an IRQ, this patch set fixes this by registering an IRQ
> assignment function to be run later at device enable time.
> 
> Signed-off-by: Matthew Minter <matt@xxxxxxxxxxxx>
> 
> ---
>  arch/m68k/platform/coldfire/pci.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/m68k/platform/coldfire/pci.c b/arch/m68k/platform/coldfire/pci.c
> index df96792..058ca86 100644
> --- a/arch/m68k/platform/coldfire/pci.c
> +++ b/arch/m68k/platform/coldfire/pci.c
> @@ -316,10 +316,16 @@ static int __init mcf_pci_init(void)
>  	rootbus->resource[0] = &mcf_pci_io;
>  	rootbus->resource[1] = &mcf_pci_mem;
>  
> -	pci_fixup_irqs(pci_common_swizzle, mcf_pci_map_irq);
>  	pci_bus_size_bridges(rootbus);
>  	pci_bus_assign_resources(rootbus);
>  	return 0;
>  }
>  
> +int pcibios_root_bridge_prepare(struct pci_host_bridge *bridge)
> +{
> +	bridge->swizzle_irq = pci_common_swizzle;
> +	bridge->map_irq = mcf_pci_map_irq;
> +	return 0;
> +}
> +
>  subsys_initcall(mcf_pci_init);
> -- 
> 2.1.0
> 

Awesome, very nice and simple!
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[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