clk: add a clk_hw helpers to get the clock device or device_node
Add helpers to get the device or device_node associated with clk_hw. This can be used by clock drivers to access various device related functionality such as devres, dev_ prints, etc ... Signed-off-by: Jerome Brunet <jbrunet@baylibre.com> Link: https://lore.kernel.org/r/20250417-clk-hw-get-helpers-v1-1-7743e509612a@baylibre.com Reviewed-by: Brian Masney <bmasney@redhat.com> Signed-off-by: Stephen Boyd <sboyd@kernel.org>
This commit is contained in:
committed by
Stephen Boyd
parent
19272b37aa
commit
5f4081d6fa
@@ -365,6 +365,18 @@ const char *clk_hw_get_name(const struct clk_hw *hw)
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(clk_hw_get_name);
|
||||
|
||||
struct device *clk_hw_get_dev(const struct clk_hw *hw)
|
||||
{
|
||||
return hw->core->dev;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(clk_hw_get_dev);
|
||||
|
||||
struct device_node *clk_hw_get_of_node(const struct clk_hw *hw)
|
||||
{
|
||||
return hw->core->of_node;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(clk_hw_get_of_node);
|
||||
|
||||
struct clk_hw *__clk_get_hw(struct clk *clk)
|
||||
{
|
||||
return !clk ? NULL : clk->core->hw;
|
||||
|
||||
@@ -1360,6 +1360,32 @@ void clk_hw_unregister(struct clk_hw *hw);
|
||||
/* helper functions */
|
||||
const char *__clk_get_name(const struct clk *clk);
|
||||
const char *clk_hw_get_name(const struct clk_hw *hw);
|
||||
|
||||
/**
|
||||
* clk_hw_get_dev() - get device from an hardware clock.
|
||||
* @hw: the clk_hw pointer to get the struct device from
|
||||
*
|
||||
* This is a helper to get the struct device associated with a hardware
|
||||
* clock. Some clock controllers, such as the one registered with
|
||||
* CLK_OF_DECLARE(), may have not provided a device pointer while
|
||||
* registering the clock.
|
||||
*
|
||||
* Return: the struct device associated with the clock, or NULL if there
|
||||
* is none.
|
||||
*/
|
||||
struct device *clk_hw_get_dev(const struct clk_hw *hw);
|
||||
|
||||
/**
|
||||
* clk_hw_get_of_node() - get device_node from a hardware clock.
|
||||
* @hw: the clk_hw pointer to get the struct device_node from
|
||||
*
|
||||
* This is a helper to get the struct device_node associated with a
|
||||
* hardware clock.
|
||||
*
|
||||
* Return: the struct device_node associated with the clock, or NULL
|
||||
* if there is none.
|
||||
*/
|
||||
struct device_node *clk_hw_get_of_node(const struct clk_hw *hw);
|
||||
#ifdef CONFIG_COMMON_CLK
|
||||
struct clk_hw *__clk_get_hw(struct clk *clk);
|
||||
#else
|
||||
|
||||
Reference in New Issue
Block a user