summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorStephen Boyd <sboyd@kernel.org>2025-07-21 20:32:46 +0300
committerStephen Boyd <sboyd@kernel.org>2025-07-21 20:32:46 +0300
commit8e766823592a4450f0405a96003642bde56bbb01 (patch)
tree36bc26a35445eabcd2d01593beb9eda6d7dbca26 /include/linux
parent19272b37aa4f83ca52bdf9c16d5d81bdd1354494 (diff)
parent8a65268500b00ecee5402ef9f80618ff73f30707 (diff)
downloadlinux-8e766823592a4450f0405a96003642bde56bbb01.tar.xz
Merge tag 'clk-meson-v6.17-1' of https://github.com/BayLibre/clk-meson into clk-amlogic
Pull Amlogic clk driver updates from Jerome Brunet: - Use the auxiliary reset controller implementation in the Amlogic axg-audio, instead of implementing the reset controller in drivers/clk - Drop unnecessary clock controller headers for Amlogic drivers - Drop clock controller big regmap tables in the Amlogic drivers * tag 'clk-meson-v6.17-1' of https://github.com/BayLibre/clk-meson: clk: amlogic: s4: remove unused data clk: amlogic: drop clk_regmap tables clk: amlogic: get regmap with clk_regmap_init clk: amlogic: remove unnecessary headers clk: amlogic: axg-audio: use the auxiliary reset driver clk: tests: add clk_hw_get_dev() and clk_hw_get_of_node() tests clk: tests: Make clk_register_clk_parent_data_device_driver() common clk: add a clk_hw helpers to get the clock device or device_node
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/clk-provider.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h
index 2e6e603b7493..630705a47129 100644
--- a/include/linux/clk-provider.h
+++ b/include/linux/clk-provider.h
@@ -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