Re: [PATCH 2/2] iio: adc: ad7173: add support for ad4113

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

 



On Wed, 2024-08-07 at 17:58 +0300, Dumitru Ceclan wrote:
> This commit adds support for the AD4113 ADC.
> The AD4113 is a low power, low noise, 16-bit, Σ-Δ analog-to-digital
> converter (ADC) that integrates an analog front end (AFE) for four
> fully differential or eight single-ended inputs.
> 
> Signed-off-by: Dumitru Ceclan <dumitru.ceclan@xxxxxxxxxx>
> ---

Reviewed-by: Nuno Sa <nuno.sa@xxxxxxxxxx>

>  drivers/iio/adc/ad7173.c | 22 +++++++++++++++++++++-
>  1 file changed, 21 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/adc/ad7173.c b/drivers/iio/adc/ad7173.c
> index a854f2d30174..82b63f9705b3 100644
> --- a/drivers/iio/adc/ad7173.c
> +++ b/drivers/iio/adc/ad7173.c
> @@ -3,7 +3,7 @@
>   * AD717x and AD411x family SPI ADC driver
>   *
>   * Supported devices:
> - *  AD4111/AD4112/AD4114/AD4115/AD4116
> + *  AD4111/AD4112/AD4113/AD4114/AD4115/AD4116
>   *  AD7172-2/AD7172-4/AD7173-8/AD7175-2
>   *  AD7175-8/AD7176-2/AD7177-2
>   *
> @@ -84,6 +84,7 @@
>  #define AD4111_ID			AD7173_ID
>  #define AD4112_ID			AD7173_ID
>  #define AD4114_ID			AD7173_ID
> +#define AD4113_ID			0x31D0
>  #define AD4116_ID			0x34d0
>  #define AD4115_ID			0x38d0
>  #define AD7175_8_ID			0x3cd0
> @@ -294,6 +295,23 @@ static const struct ad7173_device_info ad4112_device_info
> = {
>  	.num_sinc5_data_rates = ARRAY_SIZE(ad7173_sinc5_data_rates),
>  };
>  
> +static const struct ad7173_device_info ad4113_device_info = {
> +	.name = "ad4113",
> +	.id = AD4113_ID,
> +	.num_voltage_in_div = 8,
> +	.num_channels = 16,
> +	.num_configs = 8,
> +	.num_voltage_in = 8,
> +	.num_gpios = 2,
> +	.higher_gpio_bits = true,
> +	.has_vincom_input = true,
> +	.has_input_buf = true,
> +	.has_int_ref = true,
> +	.clock = 2 * HZ_PER_MHZ,
> +	.sinc5_data_rates = ad7173_sinc5_data_rates,
> +	.num_sinc5_data_rates = ARRAY_SIZE(ad7173_sinc5_data_rates),
> +};
> +
>  static const struct ad7173_device_info ad4114_device_info = {
>  	.name = "ad4114",
>  	.id = AD4114_ID,
> @@ -1437,6 +1455,7 @@ static int ad7173_probe(struct spi_device *spi)
>  static const struct of_device_id ad7173_of_match[] = {
>  	{ .compatible = "adi,ad4111",	.data = &ad4111_device_info },
>  	{ .compatible = "adi,ad4112",	.data = &ad4112_device_info },
> +	{ .compatible = "adi,ad4113",	.data = &ad4113_device_info },
>  	{ .compatible = "adi,ad4114",	.data = &ad4114_device_info },
>  	{ .compatible = "adi,ad4115",	.data = &ad4115_device_info },
>  	{ .compatible = "adi,ad4116",	.data = &ad4116_device_info },
> @@ -1454,6 +1473,7 @@ MODULE_DEVICE_TABLE(of, ad7173_of_match);
>  static const struct spi_device_id ad7173_id_table[] = {
>  	{ "ad4111",   (kernel_ulong_t)&ad4111_device_info },
>  	{ "ad4112",   (kernel_ulong_t)&ad4112_device_info },
> +	{ "ad4113",   (kernel_ulong_t)&ad4113_device_info },
>  	{ "ad4114",   (kernel_ulong_t)&ad4114_device_info },
>  	{ "ad4115",   (kernel_ulong_t)&ad4115_device_info },
>  	{ "ad4116",   (kernel_ulong_t)&ad4116_device_info },
> 






[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux