VIAIDE(4)
π VIAIDE(4) β Kernel Interfaces Manual π
okay bestie, so we're literally in the viaide page rn, and it's all about the AMD, NVIDIA and VIA IDE disk controllers driver. welcome to the group chat β¨
πΈ SYNOPSIS πΈ
viaide* at pci? dev ? function ? flags 0x0000
options PCIIDE_AMD756_ENABLEDMA
that's it, that's the whole summoning ritual π«Ά
β¨ DESCRIPTION β¨
so the viaide driver is out here supporting a whole roster of IDE controllers, and it's the one that gives the ata driver its interface to the actual hardware. it's giving backstage pass energy. π
here's the cast, no cap:
- Advanced Micro Devices
AMD-756,766,768andCS5536IDE Controllers - NVIDIA
nForce,nForce2,nForce2 400,nForce3,nForce3 250,nForce4,MCP04,MCP55,MCP61,MCP65,MCP67IDE and SATA Controllers. - VIA Technologies
VT82C586,VT82C586A,VT82C586B,VT82C596A,VT82C596B,VT82C686A,VT82C686B,VT8233,VT8233A,VT8233C,VT8235,VT8237/VT8237R/VT6420,VT8237A,VT8237S,VT8251,VT8261,CX700(M/M2),VX700,VX800/820,VX855/875,VX900/VX11Integrated IDE and SATA Controllers,VT6415/VT6330single-channel IDE Controllers,VT6410IDE RAID Controller, andVT6421SATA RAID & IDE Controller.
ok and then there's the 0x0002 flag π β that one forces the viaide driver to disable DMA on chipsets where DMA would normally be turned on. it's a debugging aid, or a way to work around a situation where the IDE controller is wired up to the system incorrectly. lowkey a rescue flag. π
π SEE ALSO π
ata(4), atapi(4), intro(4), pci(4), pciide(4), wd(4), wdc(4)
go read the siblings, iykyk π¦
π BUGS π
ok this is the part where we get serious for a sec, because this one is not a cute bug. π
The AMD756 chip revision D2 has a bug affecting DMA (but not Ultra-DMA) modes. The workaround documented by AMD is to not use DMA on any drive which does not support Ultra-DMA modes. That said, this doesn't appear to be necessary on all drives β and the PCIIDE_AMD756_ENABLEDMA option can be used to force multiword DMA on the buggy revisions. Multiword DMA can eventually be disabled on a per-drive basis with config flags, see wd(4).
and like, bestie, listen to me: the bug, if it gets triggered, will cause a total system hang. not a little hiccup. whole machine. gone. πππ
also, the timings used for the PIO and DMA modes for the controllers listed above are for a PCI bus running at 30 or 33 MHz. so this driver may not work properly on overclocked systems. consider yourself warned, main character. β οΈ
that's the whole page bestie, you ate that π«Ά slay, and remember: no DMA shenanigans on a D2 unless you know what you're doing π
β¨ this cutie was brought to you by Debian, dated October 17, 2025 β¨
π¦ where this page comes from
- nixpkgs unstable: netbsd-source 11.0
- Copyright (c) 2003 Manuel Bouyer
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms