Re: [PATCH 14/14] Documentation: ABI: testing: ad4080 docs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2025-02-20 at 12:27 -0600, David Lechner wrote:
> On 2/20/25 8:53 AM, Nuno Sá wrote:
> > On Thu, 2025-02-20 at 15:54 +0200, Antoniu Miclaus wrote:
> > > Add documentation for the ad4080 attributes.
> > > 
> > > Signed-off-by: Antoniu Miclaus <antoniu.miclaus@xxxxxxxxxx>
> > > ---
> > >  .../ABI/testing/sysfs-bus-iio-adc-ad4080      | 55 +++++++++++++++++++
> > >  1 file changed, 55 insertions(+)
> > >  create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-adc-ad4080
> > > 
> > > diff --git a/Documentation/ABI/testing/sysfs-bus-iio-adc-ad4080
> > > b/Documentation/ABI/testing/sysfs-bus-iio-adc-ad4080
> > > new file mode 100644
> > > index 000000000000..e37bfba0e989
> > > --- /dev/null
> > > +++ b/Documentation/ABI/testing/sysfs-bus-iio-adc-ad4080
> > > @@ -0,0 +1,55 @@
> > > +What:		/sys/bus/iio/devices/iio:deviceX/lvds_sync
> > > +Date:		February 2025
> > > +KernelVersion:
> > > +Contact:	linux-iio@xxxxxxxxxxxxxxx
> > > +Description:
> > > +		This attribute handles the data synchronization
> > > process.Because the CNV
> > > +		signal is not taken into account by the FPGA when
> > > capturing
> > > the data, we
> > > +		need a process that configures the ADC to output pattern
> > > data, writes the
> > > +		SYNC bit in the axi_adc register map, waits until the
> > > custom
> > > HDL syncs the
> > > +		data correctly, and then changes the output mode to
> > > analog
> > > data instead of
> > > +		the fixed pattern.
> > 
> > I'll comment this one in the driver. I have some questions on how this
> > works...
> > 
> > > +
> > > +What:		/sys/bus/iio/devices/iio:deviceX/lvds_lvds
> > > +Date:		February 2025
> > > +KernelVersion:
> > > +Contact:	linux-iio@xxxxxxxxxxxxxxx
> > > +Description:
> > > +		Configures the signal type of the CNV signal. The value
> > > can
> > > be either CMOS
> > > +		(lvds_cnv=0) or LVDS (lvds_cnv=1).
> > 
> > The name seems to be wrong with what you have implemented. From this
> > description, I would think of this as a DT property? Can the signal type
> > really
> > change at runtime?
> > 
> > > +
> > > +What:		/sys/bus/iio/devices/iio:deviceX/filter_sel
> > > +Date:		February 2025
> > > +KernelVersion:
> > > +Contact:	linux-iio@xxxxxxxxxxxxxxx
> > > +Description:
> > > +		This attribute enables the digital filter functionality
> > > of
> > > the AD4080.In
> > > +		order to capture data correctly, the function must
> > > configure
> > > the ADC
> > > +		through SPI to select the filter type and enable data
> > > capture
> > > in filter
> > > +		mode through axi_adc(In this mode, data is gated by a
> > > signal
> > > generated by
> > > +		the AD4080 (GPIO1 and is not continuous as it is when the
> > > filter is
> > > +		disabled).
> > > +
> > > +What:		/sys/bus/iio/devices/iio:deviceX/filter_sel_available
> > > +Date:		February 2025
> > > +KernelVersion:
> > > +Contact:	linux-iio@xxxxxxxxxxxxxxx
> > > +Description:
> > > +		Return the available filter modes that can be set.
> > 
> > There's a standard attr for this. I think we settled 
> 
> Yup. filter_type and filter_type_available. 
> 
> > > +
> > > +What:		/sys/bus/iio/devices/iio:deviceX/sinc_dec_rate
> > > +Date:		February 2025
> > > +KernelVersion:
> > > +Contact:	linux-iio@xxxxxxxxxxxxxxx
> > > +Description:
> > > +		Set the filter’s decimation rate.
> > > +
> > > +What:		/sys/bus/iio/devices/iio:deviceX/sinc_dec_rate_available
> > > +Date:		February 2025
> > > +KernelVersion:
> > > +Contact:	linux-iio@xxxxxxxxxxxxxxx
> > > +Description:
> > > +		Return the available filter's decimation rates.
> > > +
> > > +
> > 
> > I'm not yet convinced we need the dec_rate custom attr. I'll add more
> > comments
> > in the driver.
> 
> If we do need it, in another driver recently we concluded that
> decimation rate is the same as oversampling ratio and there is
> already a standard attribute for oversampling ratio, so we used
> that.
> 

Yeah, in theory decimation is about averaging samples. Makes sense to me even
though I never thought about using the oversampling ratio attr. I was biased by
the IMUs drivers where we configure the dec_rate as part of the sampling
frequency attr since these filters directly affect the chip ODR. 

Out of curiosity, how did you handled this in the other driver? I would be
tempted to only allow reading the sampling frequency attribute which means that
the oversampling ratio attr is the one we can write (which then directly affects
sampling frequency).

- Nuno Sá





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux