that error occurs when you try to do dma on a controller that says it
doesn't do dma.  this bit is found in pci space & loaded into
pcidev->ccrp — pci programming interface class code.  for ide-styled
devices, this register is defined as
        busmaster | 1<<channel*2
or
        0x80 | 4 | 1 == 0x85

the most likely cause of the problem is that this register is
misprogrammed, but the dma area is actually there.  so as always, the
output of pci would be very helpful.

the linux "ide" code that linux ignores this bit for intel
controllers.  i think the linux "ata" code ignores it too, but i could
have missed something in 60k lines.

- erik

> Ok, I've just pulled (I now have a /bin/cdfs from 26th of March) however 
> I still get the same errors.
> 
> I have tried with a CD-RW and a DVD+RW.
> 
> cat /dev/sdC0/ctl gives me this:
> inquiry HL-DT-STDVDRAM GSA-U10N 1.05
> config 85C0 capabilities 0F00 dma 00550004 dmactl 00000000
> part data 0 2141
> 
> ah and 'dmaon' had this displayed:
> "disabling dma: not on a busmastering controller"
> (I guess dmactl at 00000000 is in accordance with that?)
> 
> Thanks,
> Mathieu.


Reply via email to