I can't make any ATA DMA modes work on this system, so I have to use PIO. The CF card, a Transcend 16 GB card (TS16GCF133), is rated to handle UDMA 0-4. The motherboard is a embedded system with a CF slot. Normally, it won't boot at all. If I add hw.ata.ata_dma=0 in /boot/loader.conf it runs OK in PIO4 mode, but when I say 'atacontrol mode ad2 UDMA2' it gives a errors like ad2: TIMEOUT - WRITE_DMA retrying (1 retry left) LBA=16936175 ad2: TIMEOUT - WRITE_DMA retrying (0 retries left) LBA=16936175 ad2: FAILURE - WRITE_DMA timed out LBA=16936175 g_vfs_done():ad2s1a[WRITE(offset=8671281152, length=16384)]error = 5 It seems to get nothing written so it freezes and eventually reboots. Dmesg shows: CPU: Intel(R) Pentium(R) III CPU - S 933MHz (930.96-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x6b4 Stepping = 4 Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE> .. acpi0: <VIA606 AWRDACPI> on motherboard .. pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff,0x4000-0x407f,0x4080-0x40ff,0x5000-0x500f,0x6000-0x607f on acpi0 pci0: <ACPI PCI bus> on pcib0 .. atapci0: <VIA 82C686B UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xd000-0xd00f at device 7.1 on pci0 ata1: <ATA channel 1> on atapci0 .. ad2: 15296MB <TRANSCEND 20070831> at ata1-master PIO4 I have a few of these machines and I'm willing to try stuff on them. Fix: The workaround is to use PIO mode, but that significantly impacts real-time performance of my system.
Responsible Changed From-To: freebsd-i386->freebsd-bugs This does not sound i386-specific.
Hi, Trevor. Can you try to set UDMA33 or UDMA66 mode? If it will work you can try this patch: http://butcher.heavennet.ru/patches/kernel/ata/ata_limit_mode_from_device_hints.diff With this patch you can set mode in /boot/device.hints (or from loader prompt), for example: hint.ad.0.mode="UDMA33" hint.ad.1.mode="UDMA66" -- WBR, Andrey V. Elsukov
For bugs matching the following criteria: Status: In Progress Changed: (is less than) 2014-06-01 Reset to default assignee and clear in-progress tags. Mail being skipped