[Soekris] net5501/nano-FreeBSD 7: CF gets UDMA33 instead of UDMA66?
phk at phk.freebsd.dk
Tue Sep 2 21:49:17 UTC 2008
In message <48BDAD0D.1070800 at jrv.org>, "James R. Van Artsdalen" writes:
>A Sandisk Ducati 4GB CF is installed. Sandisk claims 45 MB/s reads (and
>writes!). I'm seeing about 26 MB/s using dd bs=64k. The verbose kernel
>output from FreeBSD's boot implies that the CF socket is emulating a
>40-pin cable so UDMA33 is used instead of UDMA66. Do normal CF sockets
>require UDMA33 in spite of the short "cable length" or is this perhaps a
>Soekris motherboard issue?
I'm not quite sure what the exact terminology is, I think it may be
half-way deliberate choice on Sørens part.
The ata bus runs to the SATA bridge-chip, the 44 pin connector, the
CF socket and the pads for solder-on CF flash on the board (I don't
know in which order).
I've tried patching a kernel to force UDMA66 mode, and I do see
sporadic UDMA errors when I do so, both on PATA, SATA and CF cards.
In practice, the difference between UDMA33 and UDMA66 isn't that
big, since the CF-cards only can keep that sort of speed up for
sequential reads/writes in the first place (ie: camera use pattern).
A patch was committed to FreeBSD -current recently which makes
it possibel to force 80-wire cable but I'm not aware if this
has been MFC'ed to 7.x yet.
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
More information about the Soekris-tech