Re: [PATCH v5 10/10] iio: sx9360: Add pre-charge resistor setting

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

 



On Fri, 29 Apr 2022 15:01:44 -0700
Gwendal Grignou <gwendal@xxxxxxxxxxxx> wrote:

> Add ability to set the precharge internal resistance from the device
> tree.
> 
> Signed-off-by: Gwendal Grignou <gwendal@xxxxxxxxxxxx>
> Reviewed-by: Stephen Boyd <swboyd@xxxxxxxxxxxx>

Applied.  Thanks,

Jonathan

> ---
> Changes since v4:
> - Added missing tests when property is not found.
> 
> Changes since v3:
> - Added Review tags.
> 
> Changes since v2:
> - Change kOhms into ohms.
> 
> Changes since v1:
> - Suffix field with kOhms unit.
> 
>  drivers/iio/proximity/sx9360.c | 15 ++++++++++++++-
>  1 file changed, 14 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/proximity/sx9360.c b/drivers/iio/proximity/sx9360.c
> index 3ebb30c8a4f61..d9a12e6be6ca6 100644
> --- a/drivers/iio/proximity/sx9360.c
> +++ b/drivers/iio/proximity/sx9360.c
> @@ -51,6 +51,8 @@
>  #define SX9360_REG_GNRL_REG_2_FREQ(_r)  (SX9360_FOSC_HZ / ((_r) * 8192))
>  
>  #define SX9360_REG_AFE_CTRL1		0x21
> +#define SX9360_REG_AFE_CTRL1_RESFILTIN_MASK GENMASK(3, 0)
> +#define SX9360_REG_AFE_CTRL1_RESFILTIN_0OHMS 0
>  #define SX9360_REG_AFE_PARAM0_PHR	0x22
>  #define SX9360_REG_AFE_PARAM1_PHR	0x23
>  #define SX9360_REG_AFE_PARAM0_PHM	0x24
> @@ -671,7 +673,7 @@ static const struct sx_common_reg_default sx9360_default_regs[] = {
>  	{ SX9360_REG_GNRL_CTRL1, 0x00 },
>  	{ SX9360_REG_GNRL_CTRL2, SX9360_REG_GNRL_CTRL2_PERIOD_102MS },
>  
> -	{ SX9360_REG_AFE_CTRL1, 0x00 },
> +	{ SX9360_REG_AFE_CTRL1, SX9360_REG_AFE_CTRL1_RESFILTIN_0OHMS },
>  	{ SX9360_REG_AFE_PARAM0_PHR, SX9360_REG_AFE_PARAM0_RSVD |
>  		SX9360_REG_AFE_PARAM0_RESOLUTION_128 },
>  	{ SX9360_REG_AFE_PARAM1_PHR, SX9360_REG_AFE_PARAM1_AGAIN_PHM_6PF |
> @@ -722,6 +724,17 @@ sx9360_get_default_reg(struct device *dev, int idx,
>  
>  	memcpy(reg_def, &sx9360_default_regs[idx], sizeof(*reg_def));
>  	switch (reg_def->reg) {
> +	case SX9360_REG_AFE_CTRL1:
> +		ret = device_property_read_u32(dev,
> +				"semtech,input-precharge-resistor-ohms",
> +				&raw);
> +		if (ret)
> +			break;
> +
> +		reg_def->def &= ~SX9360_REG_AFE_CTRL1_RESFILTIN_MASK;
> +		reg_def->def |= FIELD_PREP(SX9360_REG_AFE_CTRL1_RESFILTIN_MASK,
> +					   raw / 2000);
> +		break;
>  	case SX9360_REG_AFE_PARAM0_PHR:
>  	case SX9360_REG_AFE_PARAM0_PHM:
>  		ret = device_property_read_u32(dev, "semtech,resolution", &raw);




[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