New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Thermald 2 5 merge #359
Merged
Merged
Thermald 2 5 merge #359
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some of the newer device PSVT is replaced with ITMT table. Here Adaptive Action table will point to ITMT table instead of PSVT. Parse ITMT, if present while parsing other adaptive tables.
A trip currenly have - A threshold temperature - Sampling period - Influence - Target state Add also possible minimum and maximum state. This can be used when target state is missing and minimum and maximum state depends on cooling device minimum and maximum. With this capability cooling device minimum and maximum state can be limited per trip.
Similar to PSVT install, implement ITMT install. When APAT calls for ITMT instead of ITMT install ITMT target. The install portion is much simpler. There can be only one trip in a ITMT entry so no need to consolidate. An ITMT entry will have a trip, min and max value for RAPL PL1. So create trip with this information and bind RAPL cooling device to this.
When throttling action takes place, use the trip specfic min max if valid. But it will require some conflicts when two trips in different zones calls for different min and max while they are active. Use the most constrained one in this case. Refer to code comments for changes.
Update the sysfs path for INT3400 sysfs to be able to run adaptive mode.
Move debug_mode_on() to thd_engine class instead of thd_engine_default so it can be accessed via thd_engine pointer.
To better organize code, separate into two classes. One just implement GDDV parsing and other actually doing adaptive processing. No functional changes are expected.
Read idsp and trip from data vault as the existing sysfs read values may not be present or wrong.
Make a placeholder for parsing _TRT from data vault. The existing sysfs read data may be invalid. But this is not fully integrated to passive policy as there is no such system available for test.
When Adaptive or Passive 2 policy are present in the idsp, use RAPL PL1 max/min from PPCC table in data vault without checking if that is lower than what system is booted with.
When condition table refers to some sensor which is not present, don't print warning on every check. Just use information level instead of warning.
Parse GDDV tables so that IDSP and PPCC information is available for RAPL cdev. This is just parsing GDDV not evaluating any conditions. Evaulating conditions will require all sensors and zone intialized, so that is done during thd_engine_start().
Since there is a sysfs interface now, remove this direct access.
When both tables are specified for the same action, merge them.
These files have no headers, so protex complains.
Update version and license info.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Version 2.5 pre release.