Saturday 29 March 2014

Using a CF adapter on a SATA interface - DMA timeout / issues / linux

Using a CF adapter on a SATA interface but with DMA/Timeout Errors

So you've decided to use a SATA to CF adapter, and when you boot linux, you're getting various timeouts when accessing the CF card along the lines of:

 ata3.00: status: { DRDY ERR }
 ata5.00: status: { DRDY ERR }

or maybe even this:

Nov 27 15:26:09 Tower kernel: ata5.00: status: { DRDY } (Drive related)
Nov 27 15:26:09 Tower kernel: ata5: hard resetting link (Minor Issues)
Nov 27 15:26:09 Tower kernel: ata5: SATA link up 3.0 Gbps (SStatus 123 SControl 300) (Drive related)
Nov 27 15:26:09 Tower kernel: ata5.00: configured for UDMA/133 (Drive related)
Nov 27 15:26:09 Tower kernel: ata5.00: device reported invalid CHS sector 0 (Drive related)
Nov 27 15:26:09 Tower kernel: ata5: EH complete (Drive related)

But basically, something to do with DMa and your disk timing out?
First of all, replace your SATA cable - it could be borked.
If you're still getting timeout message regarding DMA, it's probably because your CF card doesn't support it.

If that is the case, you'll need to add a kernel parameter to your /etc/default/grub options or whne you set up linux/ubuntu.

The option you will need is 
libata.dma=3


libata.dma=0 Disable all PATA and SATA DMA
libata.dma=1 PATA and SATA Disk DMA only
libata.dma=2 ATAPI (CDROM) DMA only
libata.dma=4 Compact Flash DMA only 
so libata.dma=3 enables DMA for disks and CDROMs, but not CFs.

No comments:

Post a Comment