mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-11 23:23:52 +08:00
soc: imx: soc-imx8: Correct return value of error handle
Current implementation of i.MX8 SoC driver returns -ENODEV for all cases of error during initialization, this is incorrect. This patch fixes them using correct return value according to different errors. Signed-off-by: Anson Huang <Anson.Huang@nxp.com> Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
This commit is contained in:
parent
d8dfab0f4d
commit
4c396a604a
@ -102,7 +102,7 @@ static int __init imx8_soc_init(void)
|
||||
|
||||
soc_dev_attr = kzalloc(sizeof(*soc_dev_attr), GFP_KERNEL);
|
||||
if (!soc_dev_attr)
|
||||
return -ENODEV;
|
||||
return -ENOMEM;
|
||||
|
||||
soc_dev_attr->family = "Freescale i.MX";
|
||||
|
||||
@ -112,8 +112,10 @@ static int __init imx8_soc_init(void)
|
||||
goto free_soc;
|
||||
|
||||
id = of_match_node(imx8_soc_match, root);
|
||||
if (!id)
|
||||
if (!id) {
|
||||
ret = -ENODEV;
|
||||
goto free_soc;
|
||||
}
|
||||
|
||||
data = id->data;
|
||||
if (data) {
|
||||
@ -123,12 +125,16 @@ static int __init imx8_soc_init(void)
|
||||
}
|
||||
|
||||
soc_dev_attr->revision = imx8_revision(soc_rev);
|
||||
if (!soc_dev_attr->revision)
|
||||
if (!soc_dev_attr->revision) {
|
||||
ret = -ENOMEM;
|
||||
goto free_soc;
|
||||
}
|
||||
|
||||
soc_dev = soc_device_register(soc_dev_attr);
|
||||
if (IS_ERR(soc_dev))
|
||||
if (IS_ERR(soc_dev)) {
|
||||
ret = PTR_ERR(soc_dev);
|
||||
goto free_rev;
|
||||
}
|
||||
|
||||
of_node_put(root);
|
||||
|
||||
@ -139,6 +145,6 @@ free_rev:
|
||||
free_soc:
|
||||
kfree(soc_dev_attr);
|
||||
of_node_put(root);
|
||||
return -ENODEV;
|
||||
return ret;
|
||||
}
|
||||
device_initcall(imx8_soc_init);
|
||||
|
Loading…
Reference in New Issue
Block a user