libata ignores non-dma disks?
I'm using 2.6.16-rc6-ide1 (alan's patchset) and using the sata_nv and pata_amd drivers. I have all UDMA drives except a CF disk -> IDE interface, which should be running in PIO mode4. Libata detects the device, but spits out a message about "no dma" and then says it's not supported and is ignoring it. Is this device not supported because it's not using dma or for some other reason? It's the only device on it's channel (secondary pata)
ata6: PATA max UDMA/133 cmd 0x170 ctl 0x376 bmdma 0xF008 irq 15
ata6: dev 0 cfg 49:0e00 82:0000 83:0000 84:0000 85:0000 86:0000 87:0000 88:0000
ata6: no dma
ata6: dev 0 not supported, ignoring
scsi5 : pata_amd
I'd really like to get this up and running so if anyone has any suggestions, I'm all ears.
PATCH 1/1 libata: do not ignore PIO-only devices
As libata now can do PIO, don't ignore PIO-only devices.
---
I'm currently away from my machines due to idiotic/useless national reserve military training :-(, so I only compile tested it. Ed, can you please try the following patch and report the result? Jeff, please don't apply until Ed confirms.
libata-core.c | 7 ------- 1 file changed, 7 deletions(-)
drivers/scsi/libata-core.c +0 -7
@@ -1219,13 +1219,6 @@ static int ata_dev_configure(struct ata_* common ATA, ATAPI feature tests */ -/* we require DMA support (bits 8 of word 49) */ -if (!ata_id_has_dma (id)) { -printk (KERN_DEBUG "ata%u: no dma\n" , ap->id); - rc = -EINVAL ; - goto err_out_nosup; - } -/* find max transfer mode; for printk only */ xfer_mask =ata_id_xfermask (id);
Re: [PATCH] libata: do not ignore PIO-only devices
Quoted 11 lines · Tejun Heo
As libata now can do PIO, don't ignore PIO-only devices.
Signed-off-by Tejun Heo <[email protected]>---
I'm currently away from my machines due to idiotic/useless national reserve military training :-(, so I only compile tested it. Ed, can you please try the following patch and report the result? Jeff, please don't apply until Ed confirms.
More info. I've tested PIO only mode with several harddisks and PX716SA by nuking dma mask in ata_set_mode() in not-so-distant past (several weeks ago) and didn't have any problem.
Signature · 1 line
tejun
Jeff Garzik
AppliedRe: [PATCH] libata: do not ignore PIO-only devices
In reply to Tejun HeoQuoted 3 lines · Tejun Heo
As libata now can do PIO, don't ignore PIO-only devices.
Signed-off-by Tejun Heo <[email protected]>
applied