tomba: pinchartl: on the suspend/resume issues, i think pm_notifier() hooks can be used. the v4l2 framework registers a notifier for each subdev in the media graph, and has separate callbacks that the video device driver registers with the framework to run after all subdevs have resumed. https://www.kernel.org/doc/html/latest/driver-api/pm/notifiers.html it would be quite a complicated change though. a `.resume_late` would have been quite simpler jluthra: that sounds painful in the specific case you're considering (TI), I think creating a child device for the CSI-2 RX DMA engine would be cleaner hmm makes sense, but that would break DT compatibility or do you mean we can create a new optional child node for the DMA shim under the main ti csi node, while maintaining backward compatibility? the latter, without changing DT assuming we can set pm ops for a struct device without having to bind it to a separate driver hmmmm may be difficult I think this needs to be discussed with PM maintainers ah just a dummy device struct in C.. yeah I don't know enough (yet) about how child devices get bound to parents without "devicetree" will discuss more with TI folks and send an email to linux-pm@ describing the problem that part should be ok, but the pm operations are accessed through dev->type->pm I'm not sure if we can easily set a custom device type please CC the linux-media list, as well as Sakari and I sure!