* (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
 #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
 
 {
        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;
 
                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 */
        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;
 }
 
        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);
 
        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: