- From: Tomasz Motylewski <motyl_at_stan.chemie.unibas.ch>
- Date: Sun, 20 Oct 2002 17:38:31 +0200 (CEST)
> > Why I can not just set up the transfer and then peek into the buffer from > > time to time when(if) I wish? When the DMA ring is circular there is no > Well, I'd say the obvious answer would be that noone has cared enough about > this particular ability to code it, whereas being able to detect possibly > corrupt data is vital. Adding a command flag that disables buffer overrun > checking for mmap-style access to comedi's buffer seems reasonable though. Thank you for your aswer. This is exactly what I need. Like CMDF_RAWDATA. But I am afraid it may be hard to implement now when functions like mite_ll_from_kvmem have disappeared. I have just returned back to the driver from 2001. I would like to comment on "being able to detect possibly corrupt data is vital". Yes, but in the case of control software what has happend in the distant past is not so important. If overlow is not checked and if I know the current buffer position, then I have a guarantee that ALL the data in the buffer is correct (DMA). I am NOT recording them, only about last 100 ms are important. So I am doing "random data access", and systems like Comedi want to force me to use a sequential access. I had the same problems with ALSA. It was possible to use the same model, but it triggers subtle bugs. The real problem with checking for overruns and stopping is that they make bad things worse. Much more samples are lost and recovering takes time - all has to be reconfigured again. It resembles long debate about raw block device access. Finally they got implemented. Yes, I could add a low priority task pretending that it is reading the data to keep Comedi quiet, but this would be my capitulation ;-) My long term goal is to get all the functionality (that means MITE doing all the work) which was present in my original PCI-MIO-E driver in Comedi (as an option). Another question: is there any support in Comedi to start analog Input /Output synchronously on the same or even on 2 different PCI-MIO cards? Single sample accuracy would be nice, but something like 5-10 microseconds is OK as well. Best regards, -- Tomek P.S. May be I will first annouce it here: mbuff driver has a new homepage: http://sourceforge.net/projects/mbuff/ Participation is welcome.
Received on 2002-10-20Z14:38:31