|
@@ -53,6 +53,7 @@ static int imx_pinctrl_set_state(struct udevice *dev, struct udevice *config)
|
|
|
if (fdtdec_get_int_array(gd->fdt_blob, node, "fsl,pins",
|
|
|
pin_data, size >> 2)) {
|
|
|
dev_err(dev, "Error reading pin data.\n");
|
|
|
+ devm_kfree(dev, pin_data);
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
|
|
@@ -78,6 +79,7 @@ static int imx_pinctrl_set_state(struct udevice *dev, struct udevice *config)
|
|
|
|
|
|
if ((mux_reg == -1) || (conf_reg == -1)) {
|
|
|
dev_err(dev, "Error mux_reg or conf_reg\n");
|
|
|
+ devm_kfree(dev, pin_data);
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
|
|
@@ -166,6 +168,8 @@ static int imx_pinctrl_set_state(struct udevice *dev, struct udevice *config)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ devm_kfree(dev, pin_data);
|
|
|
+
|
|
|
return 0;
|
|
|
}
|
|
|
|