DMA disable for sandisk CF cards ?
M. Warner Losh
imp at bsdimp.com
Thu Jul 21 14:08:56 GMT 2005
In message: <000201c58dd4$5e114360$4801a8c0 at ws-ew-3.W2KDEMIG>
"Norbert Koch" <NKoch at demig.de> writes:
: > > May be, I miss the point. Why do you want to disable
: > > dma on the cf card, when you can instruct FreeBSD
: > > to just not use dma (atacontrol(8)) ?
: >
: > Because newer CF cards, like the SanDisk, negotiate DMA with the
: > controller. However, most of the IDE <-> CF Adapters aren't properly
: > wired for this, as they only implement CF 1.5 and not CF 2.0. So,
: > when FreeBSD goes to access the device, you get all kinds of timeout
: > errors. If you are lucky, ata will failback to PIO mode. Most of the
: > time it has bitten me, I've not been lucky :-(.
: >
: > hw.ata.ata_dma=0 is the magic. You can set it at the boot loader
: > prompt, or you can add it to /boot/loader.conf. atacontrol is way too
: > late, since this disabling must be done prior to geom's scan for root
: > (or the moral equivalent in 4.x).
:
: Ok, I understand. But you can't do that selectively on a per-device basis,
: can you?
There may be something you can do with atacontrol after boot. I've
never needed it.
Warner
More information about the freebsd-small
mailing list