I presume this would also work for non-booting devices too? Like our
dev boxes where we burn cards and see numerous nasty log entries about
device timeouts and sometimes the flashcard burn works, and other times
it doesn't?
Michael F. DeMan
Director of Technology
OpenAccess Network Services
Bellingham, WA 98225
[EMAIL PROTECTED]
360-647-0785
On Jul 21, 2005, at 1:07 AM, Warner Losh wrote:
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).
Warner
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-small
To unsubscribe, send any mail to
"[EMAIL PROTECTED]"
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-small
To unsubscribe, send any mail to "[EMAIL PROTECTED]"