On Tue, Nov 07, 2023 at 01:18:14PM +0100, Maxime Ripard wrote: > On Tue, Nov 07, 2023 at 12:22:21PM +0100, Greg Kroah-Hartman wrote: > > On Tue, Nov 07, 2023 at 11:57:49AM +0100, Maxime Ripard wrote: > > > +GKH > > > > Why? I don't see a question for me here, sorry. > > I guess the question is: we have a bus with various power states > (powered off, low power, high speed) Great, have fun! And is this per-device or per-bus-instance? > low power is typically used to send commands to a device, high speed to > transmit pixels, but still allows to send commands. > > Depending on the devices, there's different requirements about the state > devices expect the bus to be in to send commands. Some will need to send > all the commands in the low power state, some don't care, etc. See > the mail I was replying too for more details. > > We've tried so far to model that in KMS itself, so the framework the > drivers would register too, but we're kind of reaching the limits of > what we can do there. It also feels to me that "the driver can't access > its device" is more of a problem for the bus to solve rather than the > framework. This is up to the specific bus to resolve, there's nothing special needed in the driver core for it, right? > Do you agree? Are you aware of any other bus in Linux with similar > requirements we could look at? Or any suggestion on how to solve it? There might be others, yes, look at how the dynamic power management works for different devices on most busses, that might help you out here. good luck! greg k-h