Lines Matching refs:clk_hw

37 struct clk_hw;
62 struct clk_hw *best_parent_hw;
65 void clk_hw_init_rate_request(const struct clk_hw *hw,
68 void clk_hw_forward_rate_request(const struct clk_hw *core,
70 const struct clk_hw *parent,
233 int (*prepare)(struct clk_hw *hw);
234 void (*unprepare)(struct clk_hw *hw);
235 int (*is_prepared)(struct clk_hw *hw);
236 void (*unprepare_unused)(struct clk_hw *hw);
237 int (*enable)(struct clk_hw *hw);
238 void (*disable)(struct clk_hw *hw);
239 int (*is_enabled)(struct clk_hw *hw);
240 void (*disable_unused)(struct clk_hw *hw);
241 int (*save_context)(struct clk_hw *hw);
242 void (*restore_context)(struct clk_hw *hw);
243 unsigned long (*recalc_rate)(struct clk_hw *hw,
245 long (*round_rate)(struct clk_hw *hw, unsigned long rate,
247 int (*determine_rate)(struct clk_hw *hw,
249 int (*set_parent)(struct clk_hw *hw, u8 index);
250 u8 (*get_parent)(struct clk_hw *hw);
251 int (*set_rate)(struct clk_hw *hw, unsigned long rate,
253 int (*set_rate_and_parent)(struct clk_hw *hw,
256 unsigned long (*recalc_accuracy)(struct clk_hw *hw,
258 int (*get_phase)(struct clk_hw *hw);
259 int (*set_phase)(struct clk_hw *hw, int degrees);
260 int (*get_duty_cycle)(struct clk_hw *hw,
262 int (*set_duty_cycle)(struct clk_hw *hw,
264 int (*init)(struct clk_hw *hw);
265 void (*terminate)(struct clk_hw *hw);
266 void (*debug_init)(struct clk_hw *hw, struct dentry *dentry);
277 const struct clk_hw *hw;
303 const struct clk_hw **parent_hws;
324 struct clk_hw { struct
351 struct clk_hw hw;
360 struct clk_hw *__clk_hw_register_fixed_rate(struct device *dev,
362 const char *parent_name, const struct clk_hw *parent_hw,
483 void clk_hw_unregister_fixed_rate(struct clk_hw *hw);
511 struct clk_hw hw;
525 struct clk_hw *__clk_hw_register_gate(struct device *dev,
527 const char *parent_name, const struct clk_hw *parent_hw,
532 struct clk_hw *__devm_clk_hw_register_gate(struct device *dev,
534 const char *parent_name, const struct clk_hw *parent_hw,
610 void clk_hw_unregister_gate(struct clk_hw *hw);
611 int clk_gate_is_enabled(struct clk_hw *hw);
659 struct clk_hw hw;
683 unsigned long divider_recalc_rate(struct clk_hw *hw, unsigned long parent_rate,
686 long divider_round_rate_parent(struct clk_hw *hw, struct clk_hw *parent,
690 long divider_ro_round_rate_parent(struct clk_hw *hw, struct clk_hw *parent,
694 int divider_determine_rate(struct clk_hw *hw, struct clk_rate_request *req,
697 int divider_ro_determine_rate(struct clk_hw *hw, struct clk_rate_request *req,
704 struct clk_hw *__clk_hw_register_divider(struct device *dev,
706 const char *parent_name, const struct clk_hw *parent_hw,
710 struct clk_hw *__devm_clk_hw_register_divider(struct device *dev,
712 const char *parent_name, const struct clk_hw *parent_hw,
915 void clk_hw_unregister_divider(struct clk_hw *hw);
947 struct clk_hw hw;
968 struct clk_hw *__clk_hw_register_mux(struct device *dev, struct device_node *np,
971 const struct clk_hw **parent_hws,
975 struct clk_hw *__devm_clk_hw_register_mux(struct device *dev, struct device_node *np,
978 const struct clk_hw **parent_hws,
1051 int clk_mux_val_to_index(struct clk_hw *hw, const u32 *table, unsigned int flags,
1056 void clk_hw_unregister_mux(struct clk_hw *hw);
1073 struct clk_hw hw;
1085 struct clk_hw *clk_hw_register_fixed_factor(struct device *dev,
1088 void clk_hw_unregister_fixed_factor(struct clk_hw *hw);
1089 struct clk_hw *devm_clk_hw_register_fixed_factor(struct device *dev,
1092 struct clk_hw *devm_clk_hw_register_fixed_factor_index(struct device *dev,
1096 struct clk_hw *devm_clk_hw_register_fixed_factor_parent_hw(struct device *dev,
1097 const char *name, const struct clk_hw *parent_hw,
1100 struct clk_hw *clk_hw_register_fixed_factor_parent_hw(struct device *dev,
1101 const char *name, const struct clk_hw *parent_hw,
1132 struct clk_hw hw;
1141 void (*approximation)(struct clk_hw *hw,
1157 struct clk_hw *clk_hw_register_fractional_divider(struct device *dev,
1161 void clk_hw_unregister_fractional_divider(struct clk_hw *hw);
1188 struct clk_hw hw;
1216 struct clk_hw hw;
1219 struct clk_hw *mux_hw;
1220 struct clk_hw *rate_hw;
1221 struct clk_hw *gate_hw;
1232 struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
1233 struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
1234 struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
1238 struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
1239 struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
1240 struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
1243 struct clk_hw *clk_hw_register_composite(struct device *dev, const char *name,
1245 struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
1246 struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
1247 struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
1249 struct clk_hw *clk_hw_register_composite_pdata(struct device *dev,
1252 struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
1253 struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
1254 struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
1256 struct clk_hw *devm_clk_hw_register_composite_pdata(struct device *dev,
1259 struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
1260 struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
1261 struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
1263 void clk_hw_unregister_composite(struct clk_hw *hw);
1265 struct clk *clk_register(struct device *dev, struct clk_hw *hw);
1266 struct clk *devm_clk_register(struct device *dev, struct clk_hw *hw);
1268 int __must_check clk_hw_register(struct device *dev, struct clk_hw *hw);
1269 int __must_check devm_clk_hw_register(struct device *dev, struct clk_hw *hw);
1270 int __must_check of_clk_hw_register(struct device_node *node, struct clk_hw *hw);
1274 void clk_hw_unregister(struct clk_hw *hw);
1278 const char *clk_hw_get_name(const struct clk_hw *hw);
1280 struct clk_hw *__clk_get_hw(struct clk *clk);
1282 static inline struct clk_hw *__clk_get_hw(struct clk *clk) in __clk_get_hw()
1284 return (struct clk_hw *)clk; in __clk_get_hw()
1288 struct clk *clk_hw_get_clk(struct clk_hw *hw, const char *con_id);
1289 struct clk *devm_clk_hw_get_clk(struct device *dev, struct clk_hw *hw,
1292 unsigned int clk_hw_get_num_parents(const struct clk_hw *hw);
1293 struct clk_hw *clk_hw_get_parent(const struct clk_hw *hw);
1294 struct clk_hw *clk_hw_get_parent_by_index(const struct clk_hw *hw,
1296 int clk_hw_get_parent_index(struct clk_hw *hw);
1297 int clk_hw_set_parent(struct clk_hw *hw, struct clk_hw *new_parent);
1299 unsigned long clk_hw_get_rate(const struct clk_hw *hw);
1300 unsigned long clk_hw_get_flags(const struct clk_hw *hw);
1304 bool clk_hw_is_prepared(const struct clk_hw *hw);
1305 bool clk_hw_rate_is_protected(const struct clk_hw *hw);
1306 bool clk_hw_is_enabled(const struct clk_hw *hw);
1309 int __clk_mux_determine_rate(struct clk_hw *hw,
1311 int __clk_determine_rate(struct clk_hw *core, struct clk_rate_request *req);
1312 int __clk_mux_determine_rate_closest(struct clk_hw *hw,
1314 int clk_mux_determine_rate_flags(struct clk_hw *hw,
1317 void clk_hw_reparent(struct clk_hw *hw, struct clk_hw *new_parent);
1318 void clk_hw_get_rate_range(struct clk_hw *hw, unsigned long *min_rate,
1320 void clk_hw_set_rate_range(struct clk_hw *hw, unsigned long min_rate,
1323 static inline void __clk_hw_set_clk(struct clk_hw *dst, struct clk_hw *src) in __clk_hw_set_clk()
1329 static inline long divider_round_rate(struct clk_hw *hw, unsigned long rate, in divider_round_rate()
1338 static inline long divider_ro_round_rate(struct clk_hw *hw, unsigned long rate, in divider_ro_round_rate()
1352 unsigned long clk_hw_round_rate(struct clk_hw *hw, unsigned long rate);
1361 struct clk_hw *hws[];
1391 .parent_hws = (const struct clk_hw*[]) { _parent }, \
1511 struct clk_hw *(*get)(struct of_phandle_args *clkspec,
1515 struct clk_hw *(*get)(struct of_phandle_args *clkspec,
1522 struct clk_hw *of_clk_hw_simple_get(struct of_phandle_args *clkspec,
1525 struct clk_hw *of_clk_hw_onecell_get(struct of_phandle_args *clkspec,
1542 struct clk_hw *(*get)(struct of_phandle_args *clkspec, in of_clk_add_hw_provider()
1549 struct clk_hw *(*get)(struct of_phandle_args *clkspec, in devm_of_clk_add_hw_provider()
1562 static inline struct clk_hw *
1572 static inline struct clk_hw *
1589 void clk_gate_restore_context(struct clk_hw *hw);