diff mbox series

[v4,08/10] iio: magnetometer: yas530: Apply documentation and style fixes

Message ID 8a1fb0faedc25aa2fbf9852cf4e1d9d085675ad6.1656883851.git.jahau@rocketmail.com (mailing list archive)
State Changes Requested
Headers show
Series Add support for magnetometer Yamaha YAS537 | expand

Commit Message

Jakob Hauser July 3, 2022, 10:02 p.m. UTC
This commit gathers several minor changes.

In the device examples, "Xiaomi" is too generic, specific devices should be
listed here. E.g. Xiaomi Redmi 2 seems to have YAS537 but it's not fully clear
if this applies to all its variants. Samsung Galaxy S7 is often quoted in
conjunction with YAS537.

Removed defines for device IDs of YAS537 and YAS539, they are not needed so far.

Signed-off-by: Jakob Hauser <jahau@rocketmail.com>
---
 drivers/iio/magnetometer/yamaha-yas530.c | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

Comments

Andy Shevchenko July 4, 2022, 6:07 p.m. UTC | #1
On Mon, Jul 4, 2022 at 12:03 AM Jakob Hauser <jahau@rocketmail.com> wrote:
>
> This commit gathers several minor changes.
>
> In the device examples, "Xiaomi" is too generic, specific devices should be
> listed here. E.g. Xiaomi Redmi 2 seems to have YAS537 but it's not fully clear
> if this applies to all its variants. Samsung Galaxy S7 is often quoted in
> conjunction with YAS537.
>
> Removed defines for device IDs of YAS537 and YAS539, they are not needed so far.

Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>

> Signed-off-by: Jakob Hauser <jahau@rocketmail.com>
> ---
>  drivers/iio/magnetometer/yamaha-yas530.c | 21 +++++++++++----------
>  1 file changed, 11 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/iio/magnetometer/yamaha-yas530.c b/drivers/iio/magnetometer/yamaha-yas530.c
> index 8358d4b3d1e2..4e2f460a4efd 100644
> --- a/drivers/iio/magnetometer/yamaha-yas530.c
> +++ b/drivers/iio/magnetometer/yamaha-yas530.c
> @@ -10,7 +10,7 @@
>   * (YAS534 is a magnetic switch, not handled)
>   * YAS535 MS-6C
>   * YAS536 MS-3W
> - * YAS537 MS-3T (2015 Samsung Galaxy S6, Note 5, Xiaomi)
> + * YAS537 MS-3T (2015 Samsung Galaxy S6, Note 5, Galaxy S7)
>   * YAS539 MS-3S (2018 Samsung Galaxy A7 SM-A750FN)
>   *
>   * Code functions found in the MPU3050 YAS530 and YAS532 drivers
> @@ -93,10 +93,6 @@
>  #define YAS532_DATA_OVERFLOW           (BIT(YAS532_DATA_BITS) - 1)
>  #define YAS532_20DEGREES               390 /* Counts starting at -50 °C */
>
> -/* These variant IDs are known from code dumps */
> -#define YAS537_DEVICE_ID               0x07 /* YAS537 (MS-3T) */
> -#define YAS539_DEVICE_ID               0x08 /* YAS539 (MS-3S) */
> -
>  /* Turn off device regulators etc after 5 seconds of inactivity */
>  #define YAS5XX_AUTOSUSPEND_DELAY_MS    5000
>
> @@ -323,7 +319,7 @@ static int yas530_get_measure(struct yas5xx *yas5xx, s32 *to, s32 *xo, s32 *yo,
>  {
>         struct yas5xx_calibration *c = &yas5xx->calibration;
>         u16 t_ref, t, x, y1, y2;
> -       /* These are "signed x, signed y1 etc */
> +       /* These are signed x, signed y1 etc */
>         s32 sx, sy1, sy2, sy, sz;
>         int ret;
>
> @@ -663,7 +659,10 @@ static int yas530_get_calibration_data(struct yas5xx *yas5xx)
>                 return ret;
>         dev_dbg(yas5xx->dev, "calibration data: %16ph\n", data);
>
> +       /* Contribute calibration data to the input pool for kernel entropy */
>         add_device_randomness(data, sizeof(data));
> +
> +       /* Extract version */
>         yas5xx->version = data[15] & GENMASK(1, 0);
>
>         /* Extract the calibration from the bitfield */
> @@ -690,6 +689,7 @@ static int yas530_get_calibration_data(struct yas5xx *yas5xx)
>         c->r[0] = sign_extend32(FIELD_GET(GENMASK(28, 23), val), 5);
>         c->r[1] = sign_extend32(FIELD_GET(GENMASK(20, 15), val), 5);
>         c->r[2] = sign_extend32(FIELD_GET(GENMASK(12, 7), val), 5);
> +
>         return 0;
>  }
>
> @@ -711,12 +711,12 @@ static int yas532_get_calibration_data(struct yas5xx *yas5xx)
>         dev_dbg(yas5xx->dev, "calibration data: %14ph\n", data);
>
>         /* Sanity check, is this all zeroes? */
> -       if (memchr_inv(data, 0x00, 13) == NULL) {
> -               if (!(data[13] & BIT(7)))
> -                       dev_warn(yas5xx->dev, "calibration is blank!\n");
> -       }
> +       if (!memchr_inv(data, 0x00, 13) && !(data[13] & BIT(7)))
> +               dev_warn(yas5xx->dev, "calibration is blank!\n");
>
> +       /* Contribute calibration data to the input pool for kernel entropy */
>         add_device_randomness(data, sizeof(data));
> +
>         /* Only one bit of version info reserved here as far as we know */
>         yas5xx->version = data[13] & BIT(0);
>
> @@ -725,6 +725,7 @@ static int yas532_get_calibration_data(struct yas5xx *yas5xx)
>         c->Cy1 = data[1] * 10 - 1280;
>         c->Cy2 = data[2] * 10 - 1280;
>         yas530_extract_calibration(&data[3], c);
> +
>         /*
>          * Extract linearization:
>          * Linearization layout in the 32 bits at byte 10:
> --
> 2.35.1
>
Linus Walleij July 4, 2022, 11:29 p.m. UTC | #2
On Mon, Jul 4, 2022 at 12:03 AM Jakob Hauser <jahau@rocketmail.com> wrote:

> This commit gathers several minor changes.
>
> In the device examples, "Xiaomi" is too generic, specific devices should be
> listed here. E.g. Xiaomi Redmi 2 seems to have YAS537 but it's not fully clear
> if this applies to all its variants. Samsung Galaxy S7 is often quoted in
> conjunction with YAS537.
>
> Removed defines for device IDs of YAS537 and YAS539, they are not needed so far.
>
> Signed-off-by: Jakob Hauser <jahau@rocketmail.com>

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>

Yours,
Linus Walleij
diff mbox series

Patch

diff --git a/drivers/iio/magnetometer/yamaha-yas530.c b/drivers/iio/magnetometer/yamaha-yas530.c
index 8358d4b3d1e2..4e2f460a4efd 100644
--- a/drivers/iio/magnetometer/yamaha-yas530.c
+++ b/drivers/iio/magnetometer/yamaha-yas530.c
@@ -10,7 +10,7 @@ 
  * (YAS534 is a magnetic switch, not handled)
  * YAS535 MS-6C
  * YAS536 MS-3W
- * YAS537 MS-3T (2015 Samsung Galaxy S6, Note 5, Xiaomi)
+ * YAS537 MS-3T (2015 Samsung Galaxy S6, Note 5, Galaxy S7)
  * YAS539 MS-3S (2018 Samsung Galaxy A7 SM-A750FN)
  *
  * Code functions found in the MPU3050 YAS530 and YAS532 drivers
@@ -93,10 +93,6 @@ 
 #define YAS532_DATA_OVERFLOW		(BIT(YAS532_DATA_BITS) - 1)
 #define YAS532_20DEGREES		390 /* Counts starting at -50 °C */
 
-/* These variant IDs are known from code dumps */
-#define YAS537_DEVICE_ID		0x07 /* YAS537 (MS-3T) */
-#define YAS539_DEVICE_ID		0x08 /* YAS539 (MS-3S) */
-
 /* Turn off device regulators etc after 5 seconds of inactivity */
 #define YAS5XX_AUTOSUSPEND_DELAY_MS	5000
 
@@ -323,7 +319,7 @@  static int yas530_get_measure(struct yas5xx *yas5xx, s32 *to, s32 *xo, s32 *yo,
 {
 	struct yas5xx_calibration *c = &yas5xx->calibration;
 	u16 t_ref, t, x, y1, y2;
-	/* These are "signed x, signed y1 etc */
+	/* These are signed x, signed y1 etc */
 	s32 sx, sy1, sy2, sy, sz;
 	int ret;
 
@@ -663,7 +659,10 @@  static int yas530_get_calibration_data(struct yas5xx *yas5xx)
 		return ret;
 	dev_dbg(yas5xx->dev, "calibration data: %16ph\n", data);
 
+	/* Contribute calibration data to the input pool for kernel entropy */
 	add_device_randomness(data, sizeof(data));
+
+	/* Extract version */
 	yas5xx->version = data[15] & GENMASK(1, 0);
 
 	/* Extract the calibration from the bitfield */
@@ -690,6 +689,7 @@  static int yas530_get_calibration_data(struct yas5xx *yas5xx)
 	c->r[0] = sign_extend32(FIELD_GET(GENMASK(28, 23), val), 5);
 	c->r[1] = sign_extend32(FIELD_GET(GENMASK(20, 15), val), 5);
 	c->r[2] = sign_extend32(FIELD_GET(GENMASK(12, 7), val), 5);
+
 	return 0;
 }
 
@@ -711,12 +711,12 @@  static int yas532_get_calibration_data(struct yas5xx *yas5xx)
 	dev_dbg(yas5xx->dev, "calibration data: %14ph\n", data);
 
 	/* Sanity check, is this all zeroes? */
-	if (memchr_inv(data, 0x00, 13) == NULL) {
-		if (!(data[13] & BIT(7)))
-			dev_warn(yas5xx->dev, "calibration is blank!\n");
-	}
+	if (!memchr_inv(data, 0x00, 13) && !(data[13] & BIT(7)))
+		dev_warn(yas5xx->dev, "calibration is blank!\n");
 
+	/* Contribute calibration data to the input pool for kernel entropy */
 	add_device_randomness(data, sizeof(data));
+
 	/* Only one bit of version info reserved here as far as we know */
 	yas5xx->version = data[13] & BIT(0);
 
@@ -725,6 +725,7 @@  static int yas532_get_calibration_data(struct yas5xx *yas5xx)
 	c->Cy1 = data[1] * 10 - 1280;
 	c->Cy2 = data[2] * 10 - 1280;
 	yas530_extract_calibration(&data[3], c);
+
 	/*
 	 * Extract linearization:
 	 * Linearization layout in the 32 bits at byte 10: