clock: Add new clock_has_source() function

Add a function for checking whether a clock has a source.  This is
useful for devices which have input clocks that must be wired up by
the board as it allows them to fail in realize rather than ploughing
on with a zero-period clock.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Luc Michel <luc@lmichel.fr>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-id: 20210128114145.20536-3-peter.maydell@linaro.org
Message-id: 20210121190622.22000-3-peter.maydell@linaro.org
This commit is contained in:
Peter Maydell 2021-01-28 11:41:22 +00:00
parent ad140dadd5
commit 132b10251c
2 changed files with 31 additions and 0 deletions

View file

@ -139,6 +139,21 @@ void clock_clear_callback(Clock *clk);
*/
void clock_set_source(Clock *clk, Clock *src);
/**
* clock_has_source:
* @clk: the clock
*
* Returns true if the clock has a source clock connected to it.
* This is useful for devices which have input clocks which must
* be connected by the board/SoC code which creates them. The
* device code can use this to check in its realize method that
* the clock has been connected.
*/
static inline bool clock_has_source(const Clock *clk)
{
return clk->source != NULL;
}
/**
* clock_set:
* @clk: the clock to initialize.