From: Fabien Parent <fpar...@baylibre.com>

commit 15207a92e019803d62687455d8aa2ff9eb3dc82c upstream.

dev_comp field is used in a couple of places but it is never set. This
results in kernel oops when dereferencing a NULL pointer. Set the
`dev_comp` field correctly in the probe function.

Fixes: 6d97024dce23 ("iio: adc: mediatek: mt6577-auxadc, add mt6765 support")
Signed-off-by: Fabien Parent <fpar...@baylibre.com>
Reviewed-by: Matthias Brugger <matthias....@gmail.com>
Cc: <sta...@vger.kernel.org>
Link: https://lore.kernel.org/r/20201018194644.3366846-1-fpar...@baylibre.com
Signed-off-by: Jonathan Cameron <jonathan.came...@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>

---
 drivers/iio/adc/mt6577_auxadc.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

--- a/drivers/iio/adc/mt6577_auxadc.c
+++ b/drivers/iio/adc/mt6577_auxadc.c
@@ -9,9 +9,9 @@
 #include <linux/err.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
-#include <linux/of.h>
-#include <linux/of_device.h>
+#include <linux/mod_devicetable.h>
 #include <linux/platform_device.h>
+#include <linux/property.h>
 #include <linux/iopoll.h>
 #include <linux/io.h>
 #include <linux/iio/iio.h>
@@ -276,6 +276,8 @@ static int mt6577_auxadc_probe(struct pl
                goto err_disable_clk;
        }
 
+       adc_dev->dev_comp = device_get_match_data(&pdev->dev);
+
        mutex_init(&adc_dev->lock);
 
        mt6577_auxadc_mod_reg(adc_dev->reg_base + MT6577_AUXADC_MISC,


Reply via email to