Re: Please revert: PCI: fix IDE legacy mode resources

Benjamin Herrenschmidt
2007-12-09T22:47:59Z

On Sun, 2007-12-09 at 22:23 +0000, Alan Cox wrote:
>
> I think the generic code is right, up to the MIPS stuff. What the MIPS
> stuff is doing wants looking at further. If it simply can't address
> legacy ports them it should set

Yes, well, we -do- need to remove the pcibios_resource_to_bus() things
that were added to the generic code. That commit still needs to be
reverted, it is bogus, as I explained in details. But I agree, the rest
of the generic code is probably the best way to deal with those stupid
fixed resources.

> For switching quirks you should be fixing the class code in an early
> fixup. The early fixups are run before we do the BAR processing. You
> must however remember to update dev->class as well as the PCI register
> if you do so.

I would still need to clear out the BARs I suppose when switching from
legacy to native mode, so they get re-assigned later.

> See quirk_svwkrs_csb5ide() for a correct worked example going in the
> other direction. If you follow that for the PPC quirks but going
> native
> then you will get desired results, although you want to check/know the
> BAR
> resources are sane, or clear them as part of the process.

Ok.

> So in summary:
> - MIPS resource/bar bit may be wrong - if so lets revert that
> - Rest of the logic is just fine, but you may need to move
> your
> quirks to be 'early' ones.

I'm digging the HW that needs that stuff right now so I can experiment
with various approaches and pick up the best one. Thanks.

Cheers,
Ben.