[OpenBIOS] [PATCH 4/4] ppc: Fix PCI interrupt routing to match what qemu does

Mark Cave-Ayland mark.cave-ayland at ilande.co.uk
Wed Nov 23 22:37:29 CET 2016


On 20/11/16 19:45, BALATON Zoltan wrote:

> From: Benjamin Herrenschmidt <benh at kernel.crashing.org>
> 
> Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
> ---
>  drivers/pci.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> This should be commited after this change in QEMU:
> http://lists.nongnu.org/archive/html/qemu-devel/2016-11/msg03740.html
> 
> diff --git a/drivers/pci.c b/drivers/pci.c
> index 7ad5202..c998280 100644
> --- a/drivers/pci.c
> +++ b/drivers/pci.c
> @@ -1565,7 +1565,7 @@ static void ob_pci_host_set_interrupt_map(phandle_t host)
>                          ncells += pci_encode_phys_addr(props + ncells, 0, 0, addr, 0, 0);
>                          props[ncells++] = intno;
>                          props[ncells++] = dnode;
> -                        props[ncells++] = arch->irqs[intno - 1];
> +                        props[ncells++] = arch->irqs[((intno - 1) + (addr >> 11)) & 3];
>                          props[ncells++] = 1;
>  #else
>                          /* Keep compiler quiet */
> 

It looks like the QEMU counterpart to this has been queued for 2.8, so
as my set of boot tests show no regressions I've pushed this to git
master. Once the QEMU mirror syncs overnight I'll send a pull request to
update the corresponding OpenBIOS binaries.


ATB,

Mark.




More information about the OpenBIOS mailing list