Lines Matching refs:clk_hw
37 struct clk_hw;
60 struct clk_hw *best_parent_hw;
221 int (*prepare)(struct clk_hw *hw);
222 void (*unprepare)(struct clk_hw *hw);
223 int (*is_prepared)(struct clk_hw *hw);
224 void (*unprepare_unused)(struct clk_hw *hw);
225 int (*enable)(struct clk_hw *hw);
226 void (*disable)(struct clk_hw *hw);
227 int (*is_enabled)(struct clk_hw *hw);
228 void (*disable_unused)(struct clk_hw *hw);
229 int (*save_context)(struct clk_hw *hw);
230 void (*restore_context)(struct clk_hw *hw);
231 unsigned long (*recalc_rate)(struct clk_hw *hw,
233 long (*round_rate)(struct clk_hw *hw, unsigned long rate,
235 int (*determine_rate)(struct clk_hw *hw,
237 int (*set_parent)(struct clk_hw *hw, u8 index);
238 u8 (*get_parent)(struct clk_hw *hw);
239 int (*set_rate)(struct clk_hw *hw, unsigned long rate,
241 int (*set_rate_and_parent)(struct clk_hw *hw,
244 unsigned long (*recalc_accuracy)(struct clk_hw *hw,
246 int (*get_phase)(struct clk_hw *hw);
247 int (*set_phase)(struct clk_hw *hw, int degrees);
248 int (*get_duty_cycle)(struct clk_hw *hw,
250 int (*set_duty_cycle)(struct clk_hw *hw,
252 int (*init)(struct clk_hw *hw);
253 void (*terminate)(struct clk_hw *hw);
254 void (*debug_init)(struct clk_hw *hw, struct dentry *dentry);
265 const struct clk_hw *hw;
291 const struct clk_hw **parent_hws;
312 struct clk_hw { struct
339 struct clk_hw hw;
348 struct clk_hw *__clk_hw_register_fixed_rate(struct device *dev,
350 const char *parent_name, const struct clk_hw *parent_hw,
444 void clk_hw_unregister_fixed_rate(struct clk_hw *hw);
472 struct clk_hw hw;
486 struct clk_hw *__clk_hw_register_gate(struct device *dev,
488 const char *parent_name, const struct clk_hw *parent_hw,
548 void clk_hw_unregister_gate(struct clk_hw *hw);
549 int clk_gate_is_enabled(struct clk_hw *hw);
597 struct clk_hw hw;
621 unsigned long divider_recalc_rate(struct clk_hw *hw, unsigned long parent_rate,
624 long divider_round_rate_parent(struct clk_hw *hw, struct clk_hw *parent,
628 long divider_ro_round_rate_parent(struct clk_hw *hw, struct clk_hw *parent,
636 struct clk_hw *__clk_hw_register_divider(struct device *dev,
638 const char *parent_name, const struct clk_hw *parent_hw,
784 void clk_hw_unregister_divider(struct clk_hw *hw);
816 struct clk_hw hw;
837 struct clk_hw *__clk_hw_register_mux(struct device *dev, struct device_node *np,
840 const struct clk_hw **parent_hws,
879 int clk_mux_val_to_index(struct clk_hw *hw, u32 *table, unsigned int flags,
884 void clk_hw_unregister_mux(struct clk_hw *hw);
901 struct clk_hw hw;
913 struct clk_hw *clk_hw_register_fixed_factor(struct device *dev,
916 void clk_hw_unregister_fixed_factor(struct clk_hw *hw);
941 struct clk_hw hw;
950 void (*approximation)(struct clk_hw *hw,
966 struct clk_hw *clk_hw_register_fractional_divider(struct device *dev,
970 void clk_hw_unregister_fractional_divider(struct clk_hw *hw);
997 struct clk_hw hw;
1025 struct clk_hw hw;
1028 struct clk_hw *mux_hw;
1029 struct clk_hw *rate_hw;
1030 struct clk_hw *gate_hw;
1041 struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
1042 struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
1043 struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
1047 struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
1048 struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
1049 struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
1052 struct clk_hw *clk_hw_register_composite(struct device *dev, const char *name,
1054 struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
1055 struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
1056 struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
1058 struct clk_hw *clk_hw_register_composite_pdata(struct device *dev,
1061 struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
1062 struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
1063 struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
1065 void clk_hw_unregister_composite(struct clk_hw *hw);
1067 struct clk *clk_register(struct device *dev, struct clk_hw *hw);
1068 struct clk *devm_clk_register(struct device *dev, struct clk_hw *hw);
1070 int __must_check clk_hw_register(struct device *dev, struct clk_hw *hw);
1071 int __must_check devm_clk_hw_register(struct device *dev, struct clk_hw *hw);
1072 int __must_check of_clk_hw_register(struct device_node *node, struct clk_hw *hw);
1077 void clk_hw_unregister(struct clk_hw *hw);
1078 void devm_clk_hw_unregister(struct device *dev, struct clk_hw *hw);
1082 const char *clk_hw_get_name(const struct clk_hw *hw);
1084 struct clk_hw *__clk_get_hw(struct clk *clk);
1086 static inline struct clk_hw *__clk_get_hw(struct clk *clk) in __clk_get_hw()
1088 return (struct clk_hw *)clk; in __clk_get_hw()
1091 unsigned int clk_hw_get_num_parents(const struct clk_hw *hw);
1092 struct clk_hw *clk_hw_get_parent(const struct clk_hw *hw);
1093 struct clk_hw *clk_hw_get_parent_by_index(const struct clk_hw *hw,
1095 int clk_hw_get_parent_index(struct clk_hw *hw);
1096 int clk_hw_set_parent(struct clk_hw *hw, struct clk_hw *new_parent);
1098 unsigned long clk_hw_get_rate(const struct clk_hw *hw);
1099 unsigned long clk_hw_get_flags(const struct clk_hw *hw);
1103 bool clk_hw_is_prepared(const struct clk_hw *hw);
1104 bool clk_hw_rate_is_protected(const struct clk_hw *hw);
1105 bool clk_hw_is_enabled(const struct clk_hw *hw);
1108 int __clk_mux_determine_rate(struct clk_hw *hw,
1110 int __clk_determine_rate(struct clk_hw *core, struct clk_rate_request *req);
1111 int __clk_mux_determine_rate_closest(struct clk_hw *hw,
1113 int clk_mux_determine_rate_flags(struct clk_hw *hw,
1116 void clk_hw_reparent(struct clk_hw *hw, struct clk_hw *new_parent);
1117 void clk_hw_set_rate_range(struct clk_hw *hw, unsigned long min_rate,
1120 static inline void __clk_hw_set_clk(struct clk_hw *dst, struct clk_hw *src) in __clk_hw_set_clk()
1126 static inline long divider_round_rate(struct clk_hw *hw, unsigned long rate, in divider_round_rate()
1135 static inline long divider_ro_round_rate(struct clk_hw *hw, unsigned long rate, in divider_ro_round_rate()
1149 unsigned long clk_hw_round_rate(struct clk_hw *hw, unsigned long rate);
1158 struct clk_hw *hws[];
1188 .parent_hws = (const struct clk_hw*[]) { _parent }, \
1308 struct clk_hw *(*get)(struct of_phandle_args *clkspec,
1312 struct clk_hw *(*get)(struct of_phandle_args *clkspec,
1319 struct clk_hw *of_clk_hw_simple_get(struct of_phandle_args *clkspec,
1322 struct clk_hw *of_clk_hw_onecell_get(struct of_phandle_args *clkspec,
1339 struct clk_hw *(*get)(struct of_phandle_args *clkspec, in of_clk_add_hw_provider()
1346 struct clk_hw *(*get)(struct of_phandle_args *clkspec, in devm_of_clk_add_hw_provider()
1359 static inline struct clk_hw *
1369 static inline struct clk_hw *
1386 void clk_gate_restore_context(struct clk_hw *hw);