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!