On 26/08/14 00:03, H Hartley Sweeten wrote:
The hardware for the analog output subdevices is normally write-only. In order to provide a 'readback' mechanism the last values written to the analog output channels is cached in the private data of the comedi driver. This allows the user to do an (*insn_read) operation to get back the last values for each channel. This series adds a 'readback' member to the comedi_device and provides a core (*insn_read) function to handle this boilerplate. The series then converts the comedi drivers to use the new 'readback' member. H Hartley Sweeten (62): staging: comedi: add a 'readback' member to comedi_subdevice staging: comedi: skel: use comedi_subdevice 'readback' staging: comedi: adl_pci6208: use comedi_subdevice 'readback' staging: comedi: aio_aio12_8: use comedi_subdevice 'readback' staging: comedi: dac02: use comedi_subdevice 'readback' staging: comedi: fl512: use comedi_subdevice 'readback' staging: comedi: multiq3: use comedi_subdevice 'readback' staging: comedi: cb_pcimdda: use comedi_subdevice 'readback' staging: comedi: adl_pci9111: use comedi_subdevice 'readback' staging: comedi: das16: use comedi_subdevice 'readback' staging: comedi: dt282x: use comedi_subdevice 'readback' staging: comedi: icp_multi: use comedi_subdevice 'readback' staging: comedi: pcl726: use comedi_subdevice 'readback' staging: comedi: s526: use comedi_subdevice 'readback' staging: comedi: rti802: use comedi_subdevice 'readback' staging: comedi: s626: use comedi_subdevice 'readback' staging: comedi: pcl812: use comedi_subdevice 'readback' staging: comedi: pcl711: use comedi_subdevice 'readback' staging: comedi: ni_at_ao: use comedi_subdevice 'readback' staging: comedi: pcmda12: use comedi_subdevice 'readback' staging: comedi: pcmmio: use comedi_subdevice 'readback' staging: comedi: ni_mio_common: use comedi_subdevice 'readback' staging: comedi: usbdux: use comedi_subdevice 'readback' staging: comedi: usbduxsigma: use comedi_subdevice 'readback' staging: comedi: das6402: use comedi_subdevice 'readback' staging: comedi: dt9812: use comedi_subdevice 'readback' staging: comedi: dt2811: use comedi_subdevice 'readback' staging: comedi: addi_apci_3501: use comedi_subdevice 'readback' staging: comedi: cb_das16_cs: use comedi_subdevice 'readback' staging: comedi: amplc_pci224: use comedi_subdevice 'readback' staging: comedi: amplc_pci230: use comedi_subdevice 'readback' staging: comedi: addi_apci_3xxx: use comedi_subdevice 'readback' staging: comedi: ni_atmio16d: cleanup atmio16d_ao_insn_write() staging: comedi: ni_atmio16d: use comedi_subdevice 'readback' staging: comedi: me_daq: fix bug in me_ao_insn_write() staging: comedi: me_daq: use comedi_subdevice 'readback' staging: comedi: ii_pci20kc: save unmunged data for ao readback staging: comedi: ii_pci20kc: use comedi_subdevice 'readback' staging: comedi: dt3000: use comedi_subdevice 'readback' staging: comedi: quatech_daqp_cs: fix bug in daqp_ao_insn_write() staging: comedi: quatech_daqp_cs: use comedi_subdevice 'readback' staging: comedi: pcl818: use comedi_subdevice 'readback' staging: comedi: das08: fix bug in das08_ao_winsn() staging: comedi: das08: use comedi_subdevice 'readback' staging: comedi: rti800: save unmunged data for ao readback staging: comedi: rti800: use comedi_subdevice 'readback' staging: comedi: daqboard2000: remove #if 0'ed out code in ao (*insn_write) staging: comedi: daqboard2000: use comedi_subdevice 'readback' staging: comedi: dmm32at: cleanup dmm32at_ao_winsn() staging: comedi: dmm32at: use comedi_subdevice 'readback' staging: comedi: ni_670x: cleanup ni_670x_ao_winsn() staging: comedi: ni_670x: use comedi_subdevice 'readback' staging: comedi: cb_pcimdas: cleanup cb_pcimdas_ao_winsn() staging: comedi: cb_pcimdas: use comedi_subdevice 'readback' staging: comedi: mf6x4: analog output data does not need extra masking staging: comedi: mf6x4: use comedi_subdevice 'readback' staging: comedi: cb_pcidas: use comedi_subdevice 'readback' staging: comedi: cb_pcidas64: use comedi_subdevice 'readback' staging: comedi: dt2801: use comedi_subdevice 'readback' staging: comedi: rtd520: use comedi_subdevice 'readback' staging: comedi: me4000: remove sanity checks in me4000_ao_insn_write() staging: comedi: me4000: use comedi_subdevice 'readback'
Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx> -- -=( Ian Abbott @ MEV Ltd. E-mail: <abbotti@xxxxxxxxx> )=- -=( Tel: +44 (0)161 477 1898 FAX: +44 (0)161 718 3587 )=- _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel