> -----Original Message----- > From: Jonathan Cameron <ji...@kernel.org> > Sent: Saturday, March 6, 2021 6:35 PM > To: Hennerich, Michael <michael.henner...@analog.com> > Cc: zzzzArdelean, zzzzAlexandru <alexandru.ardel...@analog.com>; > linux-kernel@vger.kernel.org; linux-...@vger.kernel.org; > l...@metafoo.de; Sa, Nuno <nuno...@analog.com>; Bogdan, Dragos > <dragos.bog...@analog.com> > Subject: Re: [PATCH v3 0/6] iio: Add output buffer support > > On Fri, 5 Mar 2021 08:57:08 +0000 > "Hennerich, Michael" <michael.henner...@analog.com> wrote: > > > Hi Jonathan and others, > > > > With output/dac buffer support the semantics of the scan_element > type may change. > > > > Today the Format is [be|le]:[s|u]bits/storagebitsXrepeat[>>shift]. > > > > While shift (if specified) is the shift that needs to be applied prior to > masking out unused bits. > > > > So far so good and it sounds universal. > > > > However, we use the right shift (operator) for that, which makes > sense for capture devices. > > For output devices the more logical operator would be the left shift. > > > > I'm not proposing a new Format here. I just want to get some > agreement that for an output device > > > > le:s12/16>>4 > > > > is understood as a left shift of 4, since the unused bits are then on > the LSB. > > Good question. Guess I wasn't thinking ahead when I came up with > that :) > > I'm not sure I'd mind if we did decide to define a new format for > output > buffers. Feels like it should be easy to do. > > What do others think? >
I guess the most straight forward thing would be just to add a 'shift_l' variable to 'struct scan_type'' and make sure either 'shift_l' or 'shift' is defined and then properly export either ">>" or "<<" to userspace? - Nuno Sá