[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20071209222335.70e52be3@the-village.bc.nu>
Date: Sun, 9 Dec 2007 22:23:35 +0000
From: Alan Cox <alan@...rguk.ukuu.org.uk>
To: benh@...nel.crashing.org
Cc: Ralf Baechle <ralf@...ux-mips.org>,
Yoichi Yuasa <yoichi_yuasa@...peaks.co.jp>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Greg KH <gregkh@...e.de>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Bartlomiej Zolnierkiewicz <bzolnier@...il.com>
Subject: Re: Please revert: PCI: fix IDE legacy mode resources
> Quite possibly, though as I said in practice, what we did so far
> happened to "just work" on pretty much everything we were faced with
> (which iirc is basically winbond and VIA controllers, possibly a few
> others).
>
> Anyway, I'll scrub around. Again, I'm not saying the approach is wrong
> in the generic code.
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
CONFIG_NO_ATA_LEGACY
and be robust to such resource mappings. The CONFIG option tells libata
to skip over controllers in legacy mode.
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.
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.
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.
Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists