Hey Andrew,
As suggested by Randy Dunlap on the linux-ide mailing list
(http://marc.theaimsgroup.com/?l=linux-ide&m=115082279504424&w=2),
I send you this patch Bruno Harbulot did on a previous 'really crappy'
patch I did.
We've been testing it for a while, it works fine so we'd like to see it
intergrated in your tree and maybe upstream later.
This patch allow the sata port of the ATIIXP chipset to work at 55MB/sec
instead of 14.
Regards,
Erwan
--- linux-source-2.6.14.orig/drivers/ide/ide-iops.c 2005-10-28 01:02:08.000000000 +0100
+++ linux-source-2.6.14/drivers/ide/ide-iops.c 2005-11-05 14:58:04.000000000 +0000
@@ -1,6 +1,10 @@
/*
+ * linux/drivers/ide/ide-iops.c Version 0.38 Nov 05, 2005
* linux/drivers/ide/ide-iops.c Version 0.37 Mar 05, 2003
*
+ * Version 0.38 80pin cable detection for SATA drive
+ * (bruno_harbulot@xxxxxxxxxxx)
+ *
* Copyright (C) 2000-2002 Andre Hedrick <andre@xxxxxxxxxxxxx>
* Copyright (C) 2003 Red Hat <alan@xxxxxxxxxx>
*
@@ -601,6 +605,14 @@
*/
u8 eighty_ninty_three (ide_drive_t *drive)
{
+ /* On SATA drives, word 93 (i.e. hw_config) should be 0.
+ * This can be tested with the hw_config or this:
+ if (ata_id_is_sata((u16*)(drive->id)))
+ return 1;
+ * (remember to include <linux/ata.h>)
+ */
+ if (drive->id->hw_config == 0)
+ return 1;
if(HWIF(drive)->udma_four == 0)
return 0;
if (!(drive->id->hw_config & 0x6000))