Commit 829bc78a authored by Corentin LABBE's avatar Corentin LABBE Committed by Zhang Rui

thermal: imx: fix a possible NULL dereference

of_match_device could return NULL, and so cause a NULL pointer
dereference later at line 472:
data->socdata = of_id->data;

For fixing this problem, we use of_device_get_match_data(), this will
simplify the code a little by using a standard function for
getting the match data.

Reported-by: coverity (CID 1324128)
Signed-off-by: default avatarLABBE Corentin <clabbe.montjoie@gmail.com>
Signed-off-by: default avatarZhang Rui <rui.zhang@intel.com>
parent 55f2ac33
...@@ -471,8 +471,6 @@ MODULE_DEVICE_TABLE(of, of_imx_thermal_match); ...@@ -471,8 +471,6 @@ MODULE_DEVICE_TABLE(of, of_imx_thermal_match);
static int imx_thermal_probe(struct platform_device *pdev) static int imx_thermal_probe(struct platform_device *pdev)
{ {
const struct of_device_id *of_id =
of_match_device(of_imx_thermal_match, &pdev->dev);
struct imx_thermal_data *data; struct imx_thermal_data *data;
struct regmap *map; struct regmap *map;
int measure_freq; int measure_freq;
...@@ -490,7 +488,7 @@ static int imx_thermal_probe(struct platform_device *pdev) ...@@ -490,7 +488,7 @@ static int imx_thermal_probe(struct platform_device *pdev)
} }
data->tempmon = map; data->tempmon = map;
data->socdata = of_id->data; data->socdata = of_device_get_match_data(&pdev->dev);
/* make sure the IRQ flag is clear before enabling irq on i.MX6SX */ /* make sure the IRQ flag is clear before enabling irq on i.MX6SX */
if (data->socdata->version == TEMPMON_IMX6SX) { if (data->socdata->version == TEMPMON_IMX6SX) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment