From: Chen Ni Date: Fri, 10 May 2024 08:31:56 +0000 (+0800) Subject: soc: qcom: pmic_glink: Handle the return value of pmic_glink_init X-Git-Tag: v6.11-rc1~189^2~14^2~37 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0780c836673b25f5aad306630afcb1172d694cb4;p=thirdparty%2Flinux.git soc: qcom: pmic_glink: Handle the return value of pmic_glink_init As platform_driver_register() and register_rpmsg_driver() can return error numbers, it should be better to check the return value and deal with the exception. Signed-off-by: Chen Ni Fixes: 58ef4ece1e41 ("soc: qcom: pmic_glink: Introduce base PMIC GLINK driver") Reviewed-by: Bryan O'Donoghue Link: https://lore.kernel.org/r/20240510083156.1996783-1-nichen@iscas.ac.cn Signed-off-by: Bjorn Andersson --- diff --git a/drivers/soc/qcom/pmic_glink.c b/drivers/soc/qcom/pmic_glink.c index 40fb09d69014c..8534a9692c456 100644 --- a/drivers/soc/qcom/pmic_glink.c +++ b/drivers/soc/qcom/pmic_glink.c @@ -369,8 +369,17 @@ static struct platform_driver pmic_glink_driver = { static int pmic_glink_init(void) { - platform_driver_register(&pmic_glink_driver); - register_rpmsg_driver(&pmic_glink_rpmsg_driver); + int ret; + + ret = platform_driver_register(&pmic_glink_driver); + if (ret < 0) + return ret; + + ret = register_rpmsg_driver(&pmic_glink_rpmsg_driver); + if (ret < 0) { + platform_driver_unregister(&pmic_glink_driver); + return ret; + } return 0; }