2006-01-12 08:34:54

by Andrey Volkov

[permalink] [raw]
Subject: [kernel-2.6.15] Fix PCI irq mapping for lite5200

lite5200_map_irq: Fix irq mapping for external PCI boards

Signed-off-by: Andrey Volkov <[email protected]>
---

arch/ppc/platforms/lite5200.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/arch/ppc/platforms/lite5200.c b/arch/ppc/platforms/lite5200.c
index 7ed52dc..cd4acb3 100644
--- a/arch/ppc/platforms/lite5200.c
+++ b/arch/ppc/platforms/lite5200.c
@@ -73,7 +73,8 @@ lite5200_show_cpuinfo(struct seq_file *m
static int
lite5200_map_irq(struct pci_dev *dev, unsigned char idsel, unsigned char pin)
{
- return (pin == 1) && (idsel==24) ? MPC52xx_IRQ0 : -1;
+ /* Only INTA supported */
+ return (pin == 1) ? MPC52xx_IRQ0 : -1;
}
#endif


Attachments:
01-lite5200_map_irq-fix.diff (678.00 B)

2006-01-12 09:49:42

by Sylvain Munaut

[permalink] [raw]
Subject: Re: [kernel-2.6.15] Fix PCI irq mapping for lite5200

Hi Andrey,

Andrey Volkov wrote:
> Hi Sylvain,
>
> This patch fix problem of PCI boards irq mapping on lite5200

What problem is that patch supposed to fix ?
The Lite5200 has a single PCI port, assigned to idsel 24 (afair) and its
INTA is connected to the IRQ0 pin of the 5200 so that looks correct to me.

> (raised after your changes of MPC52xx_IRQ0 number)

I'm not sure I get this either.
Do you mean that change provoked the bug you're talking about or that
before that change the bug was there but just not visible because masked
by the interrupt number being 0 problem ?


Sylvain

>
> --
> Regards
> Andrey Volkov
>
>
> ------------------------------------------------------------------------
>
> lite5200_map_irq: Fix irq mapping for external PCI boards
>
> Signed-off-by: Andrey Volkov <[email protected]>
> ---
>
> arch/ppc/platforms/lite5200.c | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/arch/ppc/platforms/lite5200.c b/arch/ppc/platforms/lite5200.c
> index 7ed52dc..cd4acb3 100644
> --- a/arch/ppc/platforms/lite5200.c
> +++ b/arch/ppc/platforms/lite5200.c
> @@ -73,7 +73,8 @@ lite5200_show_cpuinfo(struct seq_file *m
> static int
> lite5200_map_irq(struct pci_dev *dev, unsigned char idsel, unsigned char pin)
> {
> - return (pin == 1) && (idsel==24) ? MPC52xx_IRQ0 : -1;
> + /* Only INTA supported */
> + return (pin == 1) ? MPC52xx_IRQ0 : -1;
> }
> #endif
>