Lines Matching +full:opp +full:- +full:level
1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Generic OPP Interface
5 * Copyright (C) 2009-2010 Texas Instruments Incorporated.
31 * struct dev_pm_opp_supply - Power supply voltage/current values
32 * @u_volt: Target voltage in microvolts corresponding to this OPP
33 * @u_volt_min: Minimum voltage in microvolts corresponding to this OPP
34 * @u_volt_max: Maximum voltage in microvolts corresponding to this OPP
54 struct dev_pm_opp *opp, void *data, bool scaling_down);
57 * struct dev_pm_opp_config - Device OPP configuration values
65 * @required_dev: The required OPP device.
66 * @required_dev_index: The index of the required OPP for the @required_dev.
68 * This structure contains platform specific OPP configurations for the device.
86 * struct dev_pm_opp_data - The data to use to initialize an OPP.
87 * @turbo: Flag to indicate whether the OPP is to be marked turbo or not.
88 * @level: The performance level for the OPP. Set level to OPP_LEVEL_UNSET if
89 * level field isn't used.
90 * @freq: The clock rate in Hz for the OPP.
91 * @u_volt: The voltage in uV for the OPP.
95 unsigned int level; member
106 unsigned long dev_pm_opp_get_bw(struct dev_pm_opp *opp, bool peak, int index);
108 unsigned long dev_pm_opp_get_voltage(struct dev_pm_opp *opp);
110 int dev_pm_opp_get_supplies(struct dev_pm_opp *opp, struct dev_pm_opp_supply *supplies);
112 unsigned long dev_pm_opp_get_power(struct dev_pm_opp *opp);
114 unsigned long dev_pm_opp_get_freq_indexed(struct dev_pm_opp *opp, u32 index);
116 unsigned int dev_pm_opp_get_level(struct dev_pm_opp *opp);
118 unsigned int dev_pm_opp_get_required_pstate(struct dev_pm_opp *opp,
121 bool dev_pm_opp_is_turbo(struct dev_pm_opp *opp);
150 unsigned int level);
153 unsigned int *level);
156 unsigned int *level);
164 void dev_pm_opp_get(struct dev_pm_opp *opp);
165 void dev_pm_opp_put(struct dev_pm_opp *opp);
167 int dev_pm_opp_add_dynamic(struct device *dev, struct dev_pm_opp_data *opp);
187 struct opp_table *opp_table, struct dev_pm_opp *opp, void *data,
193 int dev_pm_opp_set_opp(struct device *dev, struct dev_pm_opp *opp);
202 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_get_opp_table()
207 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_get_opp_table_indexed()
214 static inline unsigned long dev_pm_opp_get_bw(struct dev_pm_opp *opp, bool peak, int index) in dev_pm_opp_get_bw() argument
219 static inline unsigned long dev_pm_opp_get_voltage(struct dev_pm_opp *opp) in dev_pm_opp_get_voltage() argument
224 static inline int dev_pm_opp_get_supplies(struct dev_pm_opp *opp, struct dev_pm_opp_supply *supplie… in dev_pm_opp_get_supplies() argument
226 return -EOPNOTSUPP; in dev_pm_opp_get_supplies()
229 static inline unsigned long dev_pm_opp_get_power(struct dev_pm_opp *opp) in dev_pm_opp_get_power() argument
234 static inline unsigned long dev_pm_opp_get_freq_indexed(struct dev_pm_opp *opp, u32 index) in dev_pm_opp_get_freq_indexed() argument
239 static inline unsigned int dev_pm_opp_get_level(struct dev_pm_opp *opp) in dev_pm_opp_get_level() argument
245 unsigned int dev_pm_opp_get_required_pstate(struct dev_pm_opp *opp, in dev_pm_opp_get_required_pstate() argument
251 static inline bool dev_pm_opp_is_turbo(struct dev_pm_opp *opp) in dev_pm_opp_is_turbo() argument
284 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_freq_exact()
291 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_freq_exact_indexed()
297 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_freq_floor()
303 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_freq_floor_indexed()
309 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_freq_ceil()
315 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_freq_ceil_indexed()
319 unsigned int level) in dev_pm_opp_find_level_exact() argument
321 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_level_exact()
325 unsigned int *level) in dev_pm_opp_find_level_ceil() argument
327 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_level_ceil()
331 unsigned int *level) in dev_pm_opp_find_level_floor() argument
333 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_level_floor()
339 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_bw_ceil()
345 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_find_bw_floor()
348 static inline void dev_pm_opp_get(struct dev_pm_opp *opp) {} in dev_pm_opp_get() argument
350 static inline void dev_pm_opp_put(struct dev_pm_opp *opp) {} in dev_pm_opp_put() argument
353 dev_pm_opp_add_dynamic(struct device *dev, struct dev_pm_opp_data *opp) in dev_pm_opp_add_dynamic() argument
355 return -EOPNOTSUPP; in dev_pm_opp_add_dynamic()
386 return -EOPNOTSUPP; in dev_pm_opp_register_notifier()
391 return -EOPNOTSUPP; in dev_pm_opp_unregister_notifier()
396 return -EOPNOTSUPP; in dev_pm_opp_set_config()
401 return -EOPNOTSUPP; in devm_pm_opp_set_config()
407 struct opp_table *opp_table, struct dev_pm_opp *opp, void *data, in dev_pm_opp_config_clks_simple() argument
410 return -EOPNOTSUPP; in dev_pm_opp_config_clks_simple()
416 return ERR_PTR(-EOPNOTSUPP); in dev_pm_opp_xlate_required_opp()
421 return -EOPNOTSUPP; in dev_pm_opp_xlate_performance_state()
426 return -EOPNOTSUPP; in dev_pm_opp_set_rate()
429 static inline int dev_pm_opp_set_opp(struct device *dev, struct dev_pm_opp *opp) in dev_pm_opp_set_opp() argument
431 return -EOPNOTSUPP; in dev_pm_opp_set_opp()
436 return -EOPNOTSUPP; in dev_pm_opp_set_sharing_cpus()
441 return -EINVAL; in dev_pm_opp_get_sharing_cpus()
454 return -EOPNOTSUPP; in dev_pm_opp_sync_regulators()
465 return -EINVAL; in dev_pm_opp_init_cpufreq_table()
484 struct device_node *dev_pm_opp_get_of_node(struct dev_pm_opp *opp);
498 return -EOPNOTSUPP; in dev_pm_opp_of_add_table()
503 return -EOPNOTSUPP; in dev_pm_opp_of_add_table_indexed()
508 return -EOPNOTSUPP; in devm_pm_opp_of_add_table_indexed()
517 return -EOPNOTSUPP; in devm_pm_opp_of_add_table()
522 return -EOPNOTSUPP; in dev_pm_opp_of_cpumask_add_table()
531 return -EOPNOTSUPP; in dev_pm_opp_of_get_sharing_cpus()
539 static inline struct device_node *dev_pm_opp_get_of_node(struct dev_pm_opp *opp) in dev_pm_opp_get_of_node() argument
547 return -EOPNOTSUPP; in dev_pm_opp_of_register_em()
557 return -EOPNOTSUPP; in dev_pm_opp_calc_power()
562 return -EOPNOTSUPP; in of_get_required_opp_performance_state()
572 return -EOPNOTSUPP; in dev_pm_opp_of_find_icc_paths()
576 /* OPP Configuration helpers */
615 /* Supported-hw helpers */
671 /* config-regulators helpers */
687 /* prop-name helpers */
702 static inline unsigned long dev_pm_opp_get_freq(struct dev_pm_opp *opp) in dev_pm_opp_get_freq() argument
704 return dev_pm_opp_get_freq_indexed(opp, 0); in dev_pm_opp_get_freq()