DMA settings

  • Hi all,

    I've been building up a new router and I've ran into a slight issue. My system is booting from a 4GB compact flash card which is requiring me to switch of ATA DMA using 'hw.ata.ata_dma=0'. Without it, the system wont boot (the usual compact flash dma probs). I also have a 120GB drive installed for use as a squid cache.

    My question is can I enable DMA for the hard drive but leave it disabled for the compact flash card?

    The BIOS for my mainboard does let me enable/disable DMA for each drive but it either doesn't work for me, when pfsense boots it still shows DMA enabled when it's disabled in the BIOS.

    pfsense sees my drives as…

    ad0 - CF Card
    ad1 - Hard Drive

    Thanks in advance

  • Netgate Administrator

    You can use atacontrol. You can put it in a Shellcmd so it runs everytime at boot. See this thread:,67823.msg383566.html#msg383566


  • Thanks Steve that's exactly what I was looking for!

    I had been messing around with the atacontrol command but was using dmesg to see info about the drives which was still showing PIO4 for the sata drive. I've done more reading and now get what dmesg does…doh! I'm a complete noob so still learning :)

    Thanks again for the help.

    P.S. Sorry for the late reply, my projects PSU went up in smoke, put a bit of a spanner in the works

  • Netgate Administrator


    my projects PSU went up in smoke, put a bit of a spanner in the works

    Spanner in the PSU will do it! Try to keep the magic smoke in.  :P


Log in to reply