Le Wed, 30 Apr 2008 13:32:23 -0400,
"Martin K. Petersen" <[EMAIL PROTECTED]> :
Hello,
> >>>>> "phk" == Poul-Henning Kamp <[EMAIL PROTECTED]> writes:
>
> phk> The UDMA33/UDMA66 cable recognition depends on one particular
> phk> wire to be not connected as far as I recall. My guess is that
> phk> soren connected that.
>
> It's up to the system BIOS to configure this depending on whether pin
> 34 in the cable connector is grounded or not.
>
> Last I looked Søren returned 0 in both config register bits for
> 80-wire cable (IDE_CFG[17:16]).
>
> Assuming the wiring is in place on the board, the correct solution
> would be for comBIOS to set the appropriate bit to 1 when the SATA
> bridge is being used.
I think this is the problem.
The wiring on the board seems ok. I removed the check of the cable in
the FreeBSD ata driver and i'm able to use UDMA100 without any problem
(the box survived to a 'make buildworld' and some copies of large
files).
A quick test with dd shows me some improvements, around 26 MB/s in
UDMA33, 33 MB/s in UDMA66/UDMA100.
Many thanks for yours replies.
Best regards.
------ FreeBSD 7-STABLE sys/dev/ata/ata-chipset.c
--- ata-chipset.c.bak 2008-04-30 19:30:49.000000000 +0200
+++ ata-chipset.c 2008-04-30 19:44:16.000000000 +0200
@@ -5821,6 +5821,7 @@ ata_check_80pin(device_t dev, int mode)
{
struct ata_device *atadev = device_get_softc(dev);
+ return mode;
if (mode > ATA_UDMA2 && !(atadev->param.hwres & ATA_CABLE_ID)) {
ata_print_cable(dev, "device");
mode = ATA_UDMA2;
_______________________________________________
Soekris-tech mailing list
[email protected]
http://lists.soekris.com/mailman/listinfo/soekris-tech