summaryrefslogtreecommitdiffstats
path: root/drivers/clk/versatile/clk-icst.h
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2020-02-19 11:33:25 +0100
committerStephen Boyd <sboyd@kernel.org>2020-03-20 17:55:31 -0700
commiteb9d6428a7dbd82255b9eabf4ffab54c230b06bc (patch)
tree3996f55e921a96201d1dfd3249b699f469d76b82 /drivers/clk/versatile/clk-icst.h
parent78c7d8f96b6f61f4974c927097895005ee1140db (diff)
downloadlinux-eb9d6428a7dbd82255b9eabf4ffab54c230b06bc.tar.bz2
clk: versatile: Export icst_clk_setup()
Export this clock setup method so we can register the IM-PD1 clocks with common code in the next step. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lkml.kernel.org/r/20200219103326.81120-2-linus.walleij@linaro.org Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Diffstat (limited to 'drivers/clk/versatile/clk-icst.h')
-rw-r--r--drivers/clk/versatile/clk-icst.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/clk/versatile/clk-icst.h b/drivers/clk/versatile/clk-icst.h
index e36ca1a20e90..1206f008c11a 100644
--- a/drivers/clk/versatile/clk-icst.h
+++ b/drivers/clk/versatile/clk-icst.h
@@ -1,4 +1,18 @@
/* SPDX-License-Identifier: GPL-2.0 */
+struct regmap;
+
+/**
+ * enum icst_control_type - the type of ICST control register
+ */
+enum icst_control_type {
+ ICST_VERSATILE, /* The standard type, all control bits available */
+ ICST_INTEGRATOR_AP_CM, /* Only 8 bits of VDW available */
+ ICST_INTEGRATOR_AP_SYS, /* Only 8 bits of VDW available */
+ ICST_INTEGRATOR_AP_PCI, /* Odd bit pattern storage */
+ ICST_INTEGRATOR_CP_CM_CORE, /* Only 8 bits of VDW and 3 bits of OD */
+ ICST_INTEGRATOR_CP_CM_MEM, /* Only 8 bits of VDW and 3 bits of OD */
+};
+
/**
* struct clk_icst_desc - descriptor for the ICST VCO
* @params: ICST parameters
@@ -17,3 +31,10 @@ struct clk *icst_clk_register(struct device *dev,
const char *name,
const char *parent_name,
void __iomem *base);
+
+struct clk *icst_clk_setup(struct device *dev,
+ const struct clk_icst_desc *desc,
+ const char *name,
+ const char *parent_name,
+ struct regmap *map,
+ enum icst_control_type ctype);