mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-04 02:16:45 +07:00
drm: rcar-du: Fix the return check of of_parse_phandle and of_find_device_by_node
[ Upstream commit 8d7d33f6be06f929ac2c5e8ea2323fec272790d4 ]
of_parse_phandle and of_find_device_by_node may return NULL
which cannot be checked by IS_ERR.
Fixes: 8de707aeb4
("drm: rcar-du: kms: Initialize CMM instances")
Signed-off-by: Wang Xiaojun <wangxiaojun11@huawei.com>
Reported-by: Hulk Robot <hulkci@huawei.com>
Acked-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
[Replace -ENODEV with -EINVAL]
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
4f6cd7e77b
commit
61de9181c8
@ -700,10 +700,10 @@ static int rcar_du_cmm_init(struct rcar_du_device *rcdu)
|
||||
int ret;
|
||||
|
||||
cmm = of_parse_phandle(np, "renesas,cmms", i);
|
||||
if (IS_ERR(cmm)) {
|
||||
if (!cmm) {
|
||||
dev_err(rcdu->dev,
|
||||
"Failed to parse 'renesas,cmms' property\n");
|
||||
return PTR_ERR(cmm);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (!of_device_is_available(cmm)) {
|
||||
@ -713,10 +713,10 @@ static int rcar_du_cmm_init(struct rcar_du_device *rcdu)
|
||||
}
|
||||
|
||||
pdev = of_find_device_by_node(cmm);
|
||||
if (IS_ERR(pdev)) {
|
||||
if (!pdev) {
|
||||
dev_err(rcdu->dev, "No device found for CMM%u\n", i);
|
||||
of_node_put(cmm);
|
||||
return PTR_ERR(pdev);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
of_node_put(cmm);
|
||||
|
Loading…
Reference in New Issue
Block a user