[U-Boot] [PATCH v5 04/18] clk: Extend struct clk to provide information regarding clock rate

Lukasz Majewski lukma at denx.de
Mon Jun 24 13:50:38 UTC 2019


This commit extends the struct clk to provide information regarding the
clock rate.
As a result the clock tree traversal is performed at most once, and further
reads are using the cached value.

Signed-off-by: Lukasz Majewski <lukma at denx.de>

---

Changes in v6: None
Changes in v5:
- Use long long to store rate value (to avoid int overflow and also return
  errors correctly)

Changes in v4: None
Changes in v3: None

 include/clk.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/clk.h b/include/clk.h
index a909b71f1a..d7b937ca7b 100644
--- a/include/clk.h
+++ b/include/clk.h
@@ -40,6 +40,7 @@ struct udevice;
  * other clock APIs to identify which clock signal to operate upon.
  *
  * @dev: The device which implements the clock signal.
+ * @rate: The clock rate (in HZ).
  * @id: The clock signal ID within the provider.
  * @data: An optional data field for scenarios where a single integer ID is not
  *	  sufficient. If used, it can be populated through an .of_xlate op and
@@ -55,6 +56,7 @@ struct udevice;
  */
 struct clk {
 	struct udevice *dev;
+	long long rate;	/* in HZ */
 	/*
 	 * Written by of_xlate. In the future, we might add more fields here.
 	 */
-- 
2.11.0



More information about the U-Boot mailing list