On Mon, Nov 19, 2018 at 02:12:59PM +0000, Phil Edworthy wrote:
This adds clk_get_optional() and devm_clk_get_optional() functions to get optional clocks. They behave the same as (devm_)clk_get except where there is no clock producer. In this case, instead of returning -ENOENT, the function returns NULL. This makes error checking simpler and allows clk_prepare_enable, etc to be called on the returned reference without additional checks.
- Instead of messing with the core functions, simply wrap them for the _optional() versions. By putting clk_get_optional() inline in the header file, we can get rid of the arch specific patches as well.
Fine if it would have no surprises with error handling.
+ if (ERR_PTR(-ENOENT)) + return NULL; + else + return clk;
return clk == ERR_PTR(-ENOENT) ? NULL : clk; ?
+ if (clk == ERR_PTR(-ENOENT)) + return NULL; + else + return clk;
Ditto. -- With Best Regards, Andy Shevchenko