@@ -324,11 +324,14 @@ static int spmi_controller_probe(struct platform_device *pdev)
ctrl->write_cmd = spmi_write_cmd;
ret = spmi_controller_add(ctrl);
- if (ret) {
- dev_err(&pdev->dev, "spmi_add_controller failed!\n");
+ if (ret)
goto err_add_controller;
- }
+
+ dev_info(&pdev->dev, "spmi_add_controller initialized\n");
+ return 0;
+
err_add_controller:
+ dev_err(&pdev->dev, "spmi_add_controller failed!\n");
platform_set_drvdata(pdev, NULL);
return ret;
}
@@ -347,13 +350,13 @@ static const struct of_device_id spmi_controller_match_table[] = {
},
{}
};
+MODULE_DEVICE_TABLE(of, spmi_controller_match_table);
static struct platform_driver spmi_controller_driver = {
.probe = spmi_controller_probe,
.remove = spmi_del_controller,
.driver = {
.name = SPMI_CONTROLLER_NAME,
- .owner = THIS_MODULE,
.of_match_table = spmi_controller_match_table,
},
};
Add a MODULE_DEVICE_TABLE() to the driver. Also, the current logic calls platform_set_drvdata(pdev, NULL) if the driver succeeds loading. While here, remove the .owner, as it is not needed upstream anymore. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> --- drivers/spmi/hisi-spmi-controller.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-)