1 /* SPDX-License-Identifier: GPL-2.0 */
5 * enum icst_control_type - the type of ICST control register
7 enum icst_control_type
{
8 ICST_VERSATILE
, /* The standard type, all control bits available */
9 ICST_INTEGRATOR_AP_CM
, /* Only 8 bits of VDW available */
10 ICST_INTEGRATOR_AP_SYS
, /* Only 8 bits of VDW available */
11 ICST_INTEGRATOR_AP_PCI
, /* Odd bit pattern storage */
12 ICST_INTEGRATOR_CP_CM_CORE
, /* Only 8 bits of VDW and 3 bits of OD */
13 ICST_INTEGRATOR_CP_CM_MEM
, /* Only 8 bits of VDW and 3 bits of OD */
14 ICST_INTEGRATOR_IM_PD1
, /* Like the Versatile, all control bits */
18 * struct clk_icst_desc - descriptor for the ICST VCO
19 * @params: ICST parameters
20 * @vco_offset: offset to the ICST VCO from the provided memory base
21 * @lock_offset: offset to the ICST VCO locking register from the provided
24 struct clk_icst_desc
{
25 const struct icst_params
*params
;
30 struct clk
*icst_clk_register(struct device
*dev
,
31 const struct clk_icst_desc
*desc
,
33 const char *parent_name
,
36 struct clk
*icst_clk_setup(struct device
*dev
,
37 const struct clk_icst_desc
*desc
,
39 const char *parent_name
,
41 enum icst_control_type ctype
);