On 07/05/2013 04:35 PM, Hector Palacios wrote: > On 07/05/2013 03:10 PM, Marek Vasut wrote: >> Dear Hector Palacios, >> >>> Dear Marek, >>> >>> On 07/05/2013 01:37 PM, Marek Vasut wrote: >>>> Dear Hector Palacios, >>>> >>>>> The LRADC virtual channels have an 18 bit field to store the sum of up >>>>> to 2^5 accumulated samples. The read_raw function however only operates >>>>> over a single sample (12 bit resolution). >>>>> In order to use this field for scaling operations, we need it to be the >>>>> exact resolution value of the LRADC. >>>> >>>> How would this work once the accumulation is supported? >>> >>> As I see it, when you read a channel the driver should give you the 12-bit >>> value either of one single sample or of N samples. >> >> The hardware will always give you 18 bit value, let's call it A of N accumulated >> samples, each 12 bit long. N is in range of 1 to 32 . >> >> The driver currently supports N = 1. >> >> Do I understand it correctly that if we want to support N > 1, we have to do the >> division of A / N in the driver and therefore we will again report only a 12-bit >> value to the userland ? >> >> If so, >> >> Acked-by: Marek Vasut <marex@xxxxxxx> > > That's what I would expect. I mean, what is A worth for? It's just a sum, it > tells nothing. The value that really carries information is A / N, which is the > average value. > > @Lars: is there any driver that allows to read N samples? Does the IIO > subsystem supply such interface (i.e. a file called n_samples that you can > program from userland to trigger a read of that N samples in order to get the > average value when you read that channel)? The ad7606 has the 'oversampling_ratio' attribute. On the other hand the ad7606 is not the best example either and this is a custom API. But well that's what it is and since it's not the only device that supports oversampling we should try and standardize a property name for this. The ad7606 does the averaging in hardware though. - Lars -- 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