iio: magnetometer: ak8974: add_device_randomness (serial number)
authorMichał Mirosław <mirq-linux@rere.qmqm.pl>
Thu, 17 Aug 2017 13:56:11 +0000 (15:56 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 20 Aug 2017 14:17:27 +0000 (15:17 +0100)
Mix device-specific data into randomness pool.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/magnetometer/ak8974.c

index 76091da20a0ced0fefed356a630d57abe0e2e8a4..b1c209faf1b12c640eac746ec49fef2560826df9 100644 (file)
@@ -20,6 +20,7 @@
 #include <linux/mutex.h>
 #include <linux/delay.h>
 #include <linux/bitops.h>
+#include <linux/random.h>
 #include <linux/regmap.h>
 #include <linux/regulator/consumer.h>
 #include <linux/pm_runtime.h>
@@ -470,6 +471,7 @@ static int ak8974_detect(struct ak8974 *ak8974)
                ret = ak8974_get_u16_val(ak8974, AMI305_SN, &sn);
                if (ret)
                        return ret;
+               add_device_randomness(&sn, sizeof(sn));
                dev_info(&ak8974->i2c->dev,
                         "detected %s, FW ver %02x, S/N: %04x\n",
                         name, fw, sn);