Hi Hans, > Thank you for your work on this and thank you for the comprehensive write-up > on how Windows does modern standby. > > First of all may I suggest that you take the above write-up, minus the ROG > Ally specific bits and turn this into a new documentation file under > Documentation/power ? And also document at which point Linux currently > makes the various transitions. I will try to move some of that documentation there, this is a great idea. > And then in patches where you move the transitions, also update the docs > on what Linux does to match. > > I have read the discussion about tying the display on/off calls to CRTC state > and/or exposing a userspace knob for that. I think that this needs more > discussion / design work. Yes, you are right. To become a knob this would require a much bigger discussion. I would also like to move Sleep calls as part of that. The Legion Go and OneXPlayer devices turn off their controllers as part of that and other modern standby devices limit their power envelope (perhaps the Legion Go too). I think the Sleep call is where most of the userspace usability will come from. Display On/Off is a bit of a NOOP on most devices. As for the LSB0 enter and exit, I do not know where the correct place for those would be, and perhaps someone from Microsoft needs to be consulted on that. The documentation is very vague. However it is clear to me that they should be close to where they are right now, so they very likely do not need to move. There is also the new _DSM intent to turn display on 9 call. Which meshes with the sleep call. That call is made before Sleep Exit, if the kernel knows that the wake-up will cause the display to turn on, to boost the thermal envelope of the device and help it wake up quicker. If the Sleep call is moved then we would also have to introduce that somewhere to avoid wake-up time regressions on devices that support it, which also raises the question of how would the kernel decide if an interrupt will cause the display to turn on before unfreezing userspace (bulk of resume) (or should it be done after unfreezing?). > OTOH IMHO it would be good to take patches 1 - 3 . Certainly 1 + 2 would > be good to have. 3 is a bit unfortunate and not necessary with the current > special ROG Ally handling in the asus-wmi driver. It might be better to > just keep the quirks there.