19#define RT_CLK_NODE_OBJ_NAME "CLKNP"
22struct rt_reset_control_node;
114#define RT_CLK_MSG_PRE_RATE_CHANGE RT_BIT(0)
115#define RT_CLK_MSG_POST_RATE_CHANGE RT_BIT(1)
116#define RT_CLK_MSG_ABORT_RATE_CHANGE RT_BIT(2)
rt_inline struct rt_clk * rt_ofw_get_clk_by_name(struct rt_ofw_node *np, const char *name)
rt_err_t rt_clk_array_enable(struct rt_clk_array *clk_arr)
rt_err_t rt_clk_unprepare(struct rt_clk *clk)
void rt_clk_disable(struct rt_clk *clk)
void rt_clk_disable_unprepare(struct rt_clk *clk)
rt_err_t rt_clk_array_prepare_enable(struct rt_clk_array *clk_arr)
struct rt_clk * rt_clk_get_by_name(struct rt_device *dev, const char *name)
rt_err_t rt_clk_set_rate(struct rt_clk *clk, rt_ubase_t rate)
rt_err_t rt_clk_set_phase(struct rt_clk *clk, int degrees)
rt_err_t rt_clk_notifier_register(struct rt_clk *clk, struct rt_clk_notifier *notifier)
rt_err_t rt_clk_set_parent(struct rt_clk *clk, struct rt_clk *clk_parent)
struct rt_clk * rt_clk_get_by_index(struct rt_device *dev, int index)
struct rt_clk_array * rt_clk_get_array(struct rt_device *dev)
void rt_clk_put(struct rt_clk *clk)
void rt_clk_array_put(struct rt_clk_array *clk_arr)
rt_err_t rt_clk_register(struct rt_clk_node *clk_np, struct rt_clk_node *parent_np)
rt_err_t rt_clk_unregister(struct rt_clk_node *clk_np)
rt_err_t rt_clk_notifier_unregister(struct rt_clk *clk, struct rt_clk_notifier *notifier)
void rt_clk_array_disable(struct rt_clk_array *clk_arr)
rt_inline rt_ssize_t rt_ofw_count_of_clk(struct rt_ofw_node *clk_ofw_np)
rt_ubase_t rt_clk_get_rate(struct rt_clk *clk)
void rt_clk_array_disable_unprepare(struct rt_clk_array *clk_arr)
rt_err_t rt_clk_prepare(struct rt_clk *clk)
rt_inline struct rt_clk * rt_ofw_get_clk(struct rt_ofw_node *np, int index)
rt_err_t rt_clk_set_max_rate(struct rt_clk *clk, rt_ubase_t rate)
rt_err_t rt_clk_array_unprepare(struct rt_clk_array *clk_arr)
rt_err_t rt_clk_array_prepare(struct rt_clk_array *clk_arr)
rt_err_t(* rt_clk_notifier_callback)(struct rt_clk_notifier *notifier, rt_ubase_t msg, rt_ubase_t old_rate, rt_ubase_t new_rate)
rt_base_t rt_clk_round_rate(struct rt_clk *clk, rt_ubase_t rate)
rt_err_t rt_clk_enable(struct rt_clk *clk)
struct rt_clk * rt_clk_get_parent(struct rt_clk *clk)
rt_err_t rt_clk_set_rate_range(struct rt_clk *clk, rt_ubase_t min, rt_ubase_t max)
rt_err_t rt_clk_prepare_enable(struct rt_clk *clk)
rt_err_t rt_clk_set_min_rate(struct rt_clk *clk, rt_ubase_t rate)
rt_base_t rt_clk_get_phase(struct rt_clk *clk)
struct rt_list_node rt_list_t
rt_ubase_t fixed_accuracy
const struct rt_clk_ops * ops
struct rt_object rt_parent
struct rt_clk_node * parent
rt_clk_notifier_callback callback
rt_err_t(* finit)(struct rt_clk *)
rt_err_t(* enable)(struct rt_clk *)
rt_err_t(* set_parent)(struct rt_clk *, struct rt_clk *parent)
rt_err_t(* set_phase)(struct rt_clk *, int degrees)
rt_err_t(* prepare)(struct rt_clk *)
rt_bool_t(* is_prepared)(struct rt_clk *)
rt_base_t(* round_rate)(struct rt_clk *, rt_ubase_t drate, rt_ubase_t *prate)
rt_base_t(* get_phase)(struct rt_clk *)
rt_err_t(* init)(struct rt_clk *, void *fw_data)
void(* disable)(struct rt_clk *)
void(* unprepare)(struct rt_clk *)
rt_err_t(* set_rate)(struct rt_clk *, rt_ubase_t rate, rt_ubase_t parent_rate)
rt_bool_t(* is_enabled)(struct rt_clk *)
struct rt_clk_node * clk_np