From 8851ed29fd8478ab41b861ec8c8bc82c45de7b3c Mon Sep 17 00:00:00 2001 From: Timur Tabi Date: Tue, 13 Sep 2011 16:17:00 -0500 Subject: [PATCH] --- yaml --- r: 274221 b: refs/heads/master c: 2228511833e267e833514cc85ba9626f9dacd661 h: refs/heads/master i: 274219: 9fab9a2d91dcaa8ee7ce79508bd0c4d2a740cf1a v: v3 --- [refs] | 2 +- trunk/arch/powerpc/sysdev/fsl_msi.c | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 142a8ec4af48..8190ac120d79 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2a05e333c2cee711c828d79300010b721c81574f +refs/heads/master: 2228511833e267e833514cc85ba9626f9dacd661 diff --git a/trunk/arch/powerpc/sysdev/fsl_msi.c b/trunk/arch/powerpc/sysdev/fsl_msi.c index 419a77239bd7..1cca25146b1f 100644 --- a/trunk/arch/powerpc/sysdev/fsl_msi.c +++ b/trunk/arch/powerpc/sysdev/fsl_msi.c @@ -296,7 +296,7 @@ static int __devinit fsl_msi_setup_hwirq(struct fsl_msi *msi, } msi->msi_virqs[irq_index] = virt_msir; - cascade_data->index = offset + irq_index; + cascade_data->index = offset; cascade_data->msi_data = msi; irq_set_handler_data(virt_msir, cascade_data); irq_set_chained_handler(virt_msir, fsl_msi_cascade); @@ -376,8 +376,10 @@ static int __devinit fsl_of_msi_probe(struct platform_device *dev) goto error_out; } - if (!p) + if (!p) { p = all_avail; + len = sizeof(all_avail); + } for (irq_index = 0, i = 0; i < len / (2 * sizeof(u32)); i++) { if (p[i * 2] % IRQS_PER_MSI_REG || @@ -393,7 +395,7 @@ static int __devinit fsl_of_msi_probe(struct platform_device *dev) count = p[i * 2 + 1] / IRQS_PER_MSI_REG; for (j = 0; j < count; j++, irq_index++) { - err = fsl_msi_setup_hwirq(msi, dev, offset, irq_index); + err = fsl_msi_setup_hwirq(msi, dev, offset + j, irq_index); if (err) goto error_out; }