Subject: Re: Pegasos 2 support patch ...

From: Sven Luther <[email-masked]>
Date: Wed, 30 Jun 2004 21:38:12 +0200

On Wed, Jun 30, 2004 at 08:05:01PM +0100, Adrian Cox wrote:
> On Wed, 2004-06-30 at 19:52, Sven Luther wrote:
> > On Wed, Jun 30, 2004 at 05:39:35PM +0100, Adrian Cox wrote:
> > > The problem is that the via686 ide is hardwired to irqs 14 and 15 of the
> > > i8259 interrupt controller internally, but the kernel believes that only
> > > IDE controllers at the legacy address can have separate irqs for each
> > > channel.
> >
> > Is this the case for each via ide controller ? If so why does it work on
> > x86 ?
>
> Because on x86 the BIOS places the IDE controller at the legacy
> addresses (0x1f0, 0x170), and then setup-pci.c spots that the via ide
> controller is also the legacy IDE controller, and thus uses the legacy
> irq numbers 14 and 15.

Ah, ok, so this is just another x86-bug, and there should really be no
major problem in rectifying it, and all the code should already be in
setup-pci.c. We just need to find some way to detect that we are also in
this case. Could this not be probed somehow ? In which case are the irq
numbers the same ? Only when the via driver is on a stansalone pci card ?

> What I'm looking for is a tidy way of achieving the same result on a
> platform where the boot firmware did not put the via ide controller at
> the legacy addresses.

Ok, the main point would be to fins the tidy way for doing this.

Friendly,

Sven Luther

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/