Re: [PATCH] cs5520: add missing IRQ setup for the second port

From: Alan Cox
Date: Tue Jun 23 2009 - 04:41:13 EST


On Tue, 23 Jun 2009 01:58:11 +0200
Frans Pop <elendil@xxxxxxxxx> wrote:

> David Miller wrote:
> > ide_pci_setup_ports() would loop over the available ports, one
> > by one, recording IRQ numbers increasingly from the one passed
> > in as "pciirq".
>
> I looked at the commit and at the code and called functions several times
> (just out of curiosity), but have been completely unable to find where
> that increase of pciirq actually happened.
> AFAICT ide_pci_setup_ports() just passed it on to ide_hw_configure() and
> all that did was 'hw->irq = irq', so AFAICT in the old case both ports
> would get the *same* IRQ, and not consecutive ones.

The cs5520 isn't a standard IDE controller in the first place and doesn't
have two channels anyway. It's special as it uses non standard bar
registers on the bridge to access the virtual DMA region, PCI registers
on the bridge to set timings (much like say MPIIX) and standard I/O ports
for the ATA accesses.

Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/