diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/drivers/clk/clkdev.c b/repos/dde_linux/src/lib/lx_emul/shadow/drivers/clk/clkdev.c index e158ece76f..023dbd29c3 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/drivers/clk/clkdev.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/drivers/clk/clkdev.c @@ -17,10 +17,13 @@ struct clk *clk_get(struct device *dev, const char *con_id) { + struct clk * ret; + if (!dev || !dev->of_node) return NULL; - return lx_emul_clock_get(dev->of_node, con_id); + ret = lx_emul_clock_get(dev->of_node, con_id); + return ret ? ret : ERR_PTR(-ENOENT); }