> -----Original Message----- > From: Sa, Nuno <Nuno.Sa@xxxxxxxxxx> > Sent: Monday, March 8, 2021 2:01 PM > To: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>; Jonathan > Cameron <jic23@xxxxxxxxxx> > Cc: Hennerich, Michael <Michael.Hennerich@xxxxxxxxxx>; > zzzzArdelean, zzzzAlexandru <alexandru.Ardelean@xxxxxxxxxx>; > linux-kernel@xxxxxxxxxxxxxxx; linux-iio@xxxxxxxxxxxxxxx; > lars@xxxxxxxxxx; Bogdan, Dragos <Dragos.Bogdan@xxxxxxxxxx> > Subject: RE: [PATCH v3 0/6] iio: Add output buffer support > > [External] > > > > > -----Original Message----- > > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > Sent: Monday, March 8, 2021 12:52 PM > > To: Sa, Nuno <Nuno.Sa@xxxxxxxxxx>; Jonathan Cameron > > <jic23@xxxxxxxxxx> > > Cc: Hennerich, Michael <Michael.Hennerich@xxxxxxxxxx>; > > zzzzArdelean, zzzzAlexandru <alexandru.Ardelean@xxxxxxxxxx>; > > linux-kernel@xxxxxxxxxxxxxxx; linux-iio@xxxxxxxxxxxxxxx; > > lars@xxxxxxxxxx; Bogdan, Dragos <Dragos.Bogdan@xxxxxxxxxx> > > Subject: Re: [PATCH v3 0/6] iio: Add output buffer support > > > > [External] > > > > On Mon, 8 Mar 2021 10:07:05 +0000 > > "Sa, Nuno" <Nuno.Sa@xxxxxxxxxx> wrote: > > > > > > -----Original Message----- > > > > From: Jonathan Cameron <jic23@xxxxxxxxxx> > > > > Sent: Saturday, March 6, 2021 6:35 PM > > > > To: Hennerich, Michael <Michael.Hennerich@xxxxxxxxxx> > > > > Cc: zzzzArdelean, zzzzAlexandru > > <alexandru.Ardelean@xxxxxxxxxx>; > > > > linux-kernel@xxxxxxxxxxxxxxx; linux-iio@xxxxxxxxxxxxxxx; > > > > lars@xxxxxxxxxx; Sa, Nuno <Nuno.Sa@xxxxxxxxxx>; Bogdan, > > Dragos > > > > <Dragos.Bogdan@xxxxxxxxxx> > > > > Subject: Re: [PATCH v3 0/6] iio: Add output buffer support > > > > > > > > On Fri, 5 Mar 2021 08:57:08 +0000 > > > > "Hennerich, Michael" <Michael.Hennerich@xxxxxxxxxx> 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? > > > > Given we already know it's an output channel, can we not just use > that > > to make the decision? > > > > Jonathan > > I would argue that having two variables gives us more flexibility for > whatever > the future brings us :). But if we can sanely say that an output buffer > will > always use left shifts, then we could definitely use that information... I > mean, > we are already doing that assumption for input buffers and right > shifts... Hmm, giving it a bit more thought I think you can disregard the above. Using the information that it's an output channel should be more than enough... - Nuno Sá