On 2/6/14, 1:38 PM, "Lars-Peter Clausen" <lars@xxxxxxxxxx> wrote: >On 02/06/2014 10:16 PM, Alessandro Rubini wrote: >>>> ZIO already supports dma. And mmaping the buffer from user space. It >>>> is in the design since inception, and in the code since Feb 2012 (git >>>> log says). >>> >>> I know. And I did study the ZIO DMA code (among other things), >>> before I implemented the IIO DMA code. As you might remember from >>> our last discussion, my preference is to add the features that are >>> in ZIO but not in IIO to IIO and then ditch ZIO instead of having >>> two frameworks for the class of devices. >> >> I remember. And we both know that the class of devices that ZIO already >> supports cannot be supported by IIO, unless many incompatible changes >> are made (sub-nanosecond timestamps, symmetric input and output, >> hot-swap of buffer and trigger type, ...). >> > >I still don't see why it is necessary to make incompatible changes to IIO >to >support this. There is nothing wrong with extending the API, while >staying >backwards compatible. > >> I'm happy all accelerometers have the same interface to user space, >> this is definitely useful. But that's clearly not the same class of >> devices. >> >>> and then ditch ZIO >> >> How can you "ditch" something you don't use? Or is your employer >> currently using zio while helping iio catch up? > >I meant in general. > >> >> Our users will not stop using it, despite your desire, because it >> already serves them pretty well: 100MS ADC, with DMA and mmap, all >> sysfs-based, completely run-time configurable, and v2.6.24..v3.12 (13 >> untested yet). > >I have no desire to stop anybody from stopping using ZIO. But my >recommendation >is to work towards a unified framework. The sooner the switch is made the >easier the migration path will be. > >I think we have systems with 4x 250MS ADCs also doing DMA and mmap and >streaming over the network[1]. All with IIO, so again, there _is_ a huge >overlap of the classes of devices supported by both IIO and ZIO. Hi Lars and Alessandro, I don¹t think this type of discussion helps create a better solution. I¹ve been reading through IIO and ZIO docs and I was wondering what is it that the IIO framework offers that the ZIO framework doesn¹t. Clearly ZIO framework has several features that are not in the IIO framework. I¹m not talking about the number of devices supported, but rather I would like to concentrate on the frameworks themselves. Moving forward, I see two possible solutions: 1) Update the IIO framework to incorporate the features of the ZIO framework 2) Adopt the ZIO framework and migrate the IIO drivers to the ZIO framework. Forget about ownership of any one solution, but rather ask the question, which solution is the least disruptive in the long term and which solution gets us to a comprehensive framework soonest. Incrementally updating IIO to add ZIO features can be very disruptive over time. Updating devices to the ZIO framework can also be very disruptive. Which solution is the better way forward? What am I missing here? Regards, John > >-Lars > >[1] https://wiki.analog.com/resources/fpga/xilinx/fmc/ad-fmcjesdadc1-ebz > -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html