Thread (15 messages) read the whole thread 15 messages, 7 authors, 2007-07-06

Re: [patch 2.6.22-rc6] ATA: add a PCI ID for Intel Santa Rosa PATA controller

From: Chr <hidden>
Date: 2007-07-02 14:36:37
Also in: lkml

On Monday, 2. July 2007, Thorsten Leemhuis wrote:
quoted
but Alan Cox wrote:
http://www.mail-archive.com/linux-ide%40vger.kernel.org/msg07417.html
quoted
Its ich_pata_133 - all the newer chips are.
Intel afaik never supported Ultra ATA 133 officially in any of the
mainstream desktop or mobile chipsets.
You're probably right! But, what about Intel's ICH5 and ICH7/7-R (i945, i975)?

see ata_piix.c: line 193ff
	{ 0x8086, 0x24DB, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_133 },
[...]
	{ 0x8086, 0x27DF, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_133 },

On the other hand, we can leave it, because of a "off-by-one error" in ata_piix.c, 
do_pata_set_dmamode, line ~770:

(the comment is important!)
/*
 * --> UDMA is handled by a combination of clock switching and
 * selection of dividers <---
 * [...]
 */
u_speed = min(2 - (udma & 1), udma);
if (udma == 5)
	u_clock = 0x1000;	/* 100Mhz */ <-- wrong! it's 133Mhz.
else if (udma > 2)
	u_clock = 1;		/* 66Mhz */
else
	u_clock = 0;		/* 33Mhz */

=>
for udma = 6(133MB/s) , we get u_speed=2 and u_clock=1
for udma = 4(66MB/s), we get the "same" values! (u_speed=2 and u_clock=1)

...
so, atleast for ata_piix, UDMA6 and UDMA4 *is* the same, right?
quoted
quoted
They work even better if you
set them into AHCI mode in the BIOS and then they should "just work" with
recent kernels as the AHCI driver now matches by class.
And "Gaston, Jason D" [off-list ref] didn't complain about it.
it's a "bit" confusing with all "native" AHCI SATA chipset that have to emulate 
PATA for compatibility reasons... 
Well, just FYI: on my Laptop AHCI is enabled and used for the SATA hard
disk. But the DVD drive still is a pata one afaics (I'm not in front of
the machine, so I can't check), connected via the pata controller -- so
for me there is no emulation involved (at least afaics).
I know. I wanted to say something else... but it doesn't really matter
(not every operating system supports AHCI-only controllers by default...)

Thanks, 
	Chr.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help