Additional power management updates for 6.13-rc1

Update the OPP (Operating Performance Points) DT bindings for
 ti-cpu (Dhruva Gole) and remove unused declarations from the
 OPP header file (Zhang Zekun).
 -----BEGIN PGP SIGNATURE-----
 
 iQJGBAABCAAwFiEE4fcc61cGeeHD/fCwgsRv/nhiVHEFAmdHYnUSHHJqd0Byand5
 c29ja2kubmV0AAoJEILEb/54YlRxMkcP/jJMorNzdZiu5o13yfvbxF9NO5OWNvit
 cMvDMO3nCIxdU5ujEPf7ibDRvshAuT3px4qdnGo1860e5TFVJYZXAhfctwJpC3Ab
 4E6AyDSFFc7e/TFXkGJAZB4nM2uvYzfrO5IdtKt0t3RwKHrnwe4iLo7fI3JOBvol
 9iTIlUZ+88JZlv8chBE1Wo9l0/EIMUncvtEwud2Jh8bLlLgSJtq2RADFjtw2rot0
 e2S8VB/XQQ2fnF8hhlClyZ6Zs5gkDiw4j+Lv8ctcO31uYfYxcHOeKWkye2E3uJLR
 JorEnowCSjZyfJolmmbq6CEbyOKB/vU5mYJMja447QI7Y05u7ChLD5qse5D55dcL
 uw6iUVN41Mm7ng2A0GIV8y2GQYxtG/xbX4jbZujxx+RhFuhHVxW+6FgGb50h1zhr
 s8Hik/1r8V8lMLDTNgwA146b0meL2FozL2Z7FYHur7aqU0ywYaIBkLZRXvzKlz7Q
 Vu3d43xbe1iRnjhJ6k6SDs2TlzDqwWBO1ctUDcTVXsfa0i0LYs4khjLROxfrJYDO
 uNIXPGe6kCYJjeCovIo1mXxSomHmRufJcQTc9aqdi34NpZskwyVU7HMmMcUAqPob
 XK35tyG83yzRLQfl7+CSvxY1lzrCMyAcdbUnQhvplnatdnVYY/3b0q36ilqqGG8w
 EW1Vml8RfPyx
 =9/iX
 -----END PGP SIGNATURE-----

Merge tag 'pm-6.13-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull morepower management updates from Rafael Wysocki:
 "These update the OPP (Operating Performance Points) DT bindings for
  ti-cpu (Dhruva Gole) and remove unused declarations from the OPP
  header file (Zhang Zekun)"

* tag 'pm-6.13-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  dt-bindings: opp: operating-points-v2-ti-cpu: Describe opp-supported-hw
  OPP: Remove unused declarations in header file
This commit is contained in:
Linus Torvalds 2024-11-27 14:40:33 -08:00
commit 79525e24af
2 changed files with 19 additions and 3 deletions

View File

@ -45,7 +45,25 @@ patternProperties:
clock-latency-ns: true clock-latency-ns: true
opp-hz: true opp-hz: true
opp-microvolt: true opp-microvolt: true
opp-supported-hw: true opp-supported-hw:
items:
items:
- description:
The revision of the SoC the OPP is supported by.
This can be easily obtained from the datasheet of the
part being ordered/used. For example, it will be 0x01 for SR1.0
- description:
The eFuse bits that indicate the particular OPP is available.
The device datasheet has a table talking about Device Speed Grades.
This table is to be sorted with only the unique elements of the
MAXIMUM OPERATING FREQUENCY starting from the first row which
tells the lowest OPP, to the highest. The corresponding bits
need to be set based on N elements of speed grade the device supports.
So, if there are 3 possible unique MAXIMUM OPERATING FREQUENCY
in the table, then BIT(0) | (1) | (2) will be set, which means
the value shall be 0x7.
opp-suspend: true opp-suspend: true
turbo-mode: true turbo-mode: true

View File

@ -263,9 +263,7 @@ int _opp_add(struct device *dev, struct dev_pm_opp *new_opp, struct opp_table *o
int _opp_add_v1(struct opp_table *opp_table, struct device *dev, struct dev_pm_opp_data *data, bool dynamic); int _opp_add_v1(struct opp_table *opp_table, struct device *dev, struct dev_pm_opp_data *data, bool dynamic);
void _dev_pm_opp_cpumask_remove_table(const struct cpumask *cpumask, int last_cpu); void _dev_pm_opp_cpumask_remove_table(const struct cpumask *cpumask, int last_cpu);
struct opp_table *_add_opp_table_indexed(struct device *dev, int index, bool getclk); struct opp_table *_add_opp_table_indexed(struct device *dev, int index, bool getclk);
void _put_opp_list_kref(struct opp_table *opp_table);
void _required_opps_available(struct dev_pm_opp *opp, int count); void _required_opps_available(struct dev_pm_opp *opp, int count);
void _update_set_required_opps(struct opp_table *opp_table);
static inline bool lazy_linking_pending(struct opp_table *opp_table) static inline bool lazy_linking_pending(struct opp_table *opp_table)
{ {