mfd: ti_am335x_tscadc: Clarify the maximum values for DT entries
authorMiquel Raynal <miquel.raynal@bootlin.com>
Fri, 15 Oct 2021 08:14:46 +0000 (10:14 +0200)
committerLee Jones <lee.jones@linaro.org>
Thu, 21 Oct 2021 08:15:56 +0000 (09:15 +0100)
Clearly define the maximum open delay and sample delay. Use these
definitions in place of a mask (which works because this is the first
field in the register) and an open-coded value. While at it reword a
little bit the error messages to make them look clearer and similar.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Link: https://lore.kernel.org/r/20211015081506.933180-29-miquel.raynal@bootlin.com
drivers/iio/adc/ti_am335x_adc.c
include/linux/mfd/ti_am335x_tscadc.h

index 3dec115e68eed0a17f00729ec74546b02cb824e3..a241e6fa35649553ac11559924eaa109995f0f5a 100644 (file)
@@ -126,7 +126,7 @@ static void tiadc_step_config(struct iio_dev *indio_dev)
                chan = adc_dev->channel_line[i];
 
                if (adc_dev->step_avg[i] > STEPCONFIG_AVG_16) {
-                       dev_warn(dev, "chan %d step_avg truncating to %ld\n",
+                       dev_warn(dev, "chan %d: wrong step avg, truncated to %ld\n",
                                 chan, STEPCONFIG_AVG_16);
                        adc_dev->step_avg[i] = STEPCONFIG_AVG_16;
                }
@@ -147,16 +147,16 @@ static void tiadc_step_config(struct iio_dev *indio_dev)
                                STEPCONFIG_RFP_VREFP |
                                STEPCONFIG_RFM_VREFN);
 
-               if (adc_dev->open_delay[i] > STEPDELAY_OPEN_MASK) {
-                       dev_warn(dev, "chan %d open delay truncating to 0x3FFFF\n",
-                                chan);
-                       adc_dev->open_delay[i] = STEPDELAY_OPEN_MASK;
+               if (adc_dev->open_delay[i] > STEPCONFIG_MAX_OPENDLY) {
+                       dev_warn(dev, "chan %d: wrong open delay, truncated to 0x%lX\n",
+                                chan, STEPCONFIG_MAX_OPENDLY);
+                       adc_dev->open_delay[i] = STEPCONFIG_MAX_OPENDLY;
                }
 
-               if (adc_dev->sample_delay[i] > 0xFF) {
-                       dev_warn(dev, "chan %d sample delay truncating to 0xFF\n",
-                                chan);
-                       adc_dev->sample_delay[i] = 0xFF;
+               if (adc_dev->sample_delay[i] > STEPCONFIG_MAX_SAMPLE) {
+                       dev_warn(dev, "chan %d: wrong sample delay, truncated to 0x%lX\n",
+                                chan, STEPCONFIG_MAX_SAMPLE);
+                       adc_dev->sample_delay[i] = STEPCONFIG_MAX_SAMPLE;
                }
 
                tiadc_writel(adc_dev, REG_STEPDELAY(steps),
index ae694fa2d7114ba92209169f496458a46def94ec..31cffb6e8b17ee9a114c3e1347c8ae3f8a09a99f 100644 (file)
@@ -84,7 +84,9 @@
 #define STEPCONFIG_OPENDLY     STEPDELAY_OPEN(0x098)
 #define STEPDELAY_SAMPLE_MASK  GENMASK(31, 24)
 #define STEPDELAY_SAMPLE(val)  FIELD_PREP(STEPDELAY_SAMPLE_MASK, (val))
+#define STEPCONFIG_MAX_OPENDLY GENMASK(17, 0)
 #define STEPCONFIG_SAMPLEDLY   STEPDELAY_SAMPLE(0)
+#define STEPCONFIG_MAX_SAMPLE  GENMASK(7, 0)
 
 /* Charge Config */
 #define STEPCHARGE_RFP_MASK    GENMASK(14, 12)