Hello Hans, this is the result of the discussion we had yesterday, sent out just to have a taste of how it looks like. I won't pretend I like the outcome: it feels a bit hackish and meant to support this precise use case. Compared to the proposal to resurect 'init()' it indeed has the advantage that the subdevice driver works in both deffered and non-deferred mode, but the notifier flags seems really custom. Also, being the new flag part of the notifier it won't be available for i2c subdevs. What do you think ? Does the result match your understanding ? Thanks j Jacopo Mondi (4): media: v4l2-subdev: Introduce post_register() core op media: v4l2-async: Add notifier flags media: v4l2-async: Call post_register() subdev op media: i2c: gmsl: Defer camera intialization drivers/media/i2c/max9286.c | 21 ++++++-- drivers/media/i2c/rdacm20.c | 81 ++++++++++++++++------------ drivers/media/v4l2-core/v4l2-async.c | 11 ++++ include/media/v4l2-async.h | 10 ++++ include/media/v4l2-subdev.h | 3 ++ 5 files changed, 89 insertions(+), 37 deletions(-) -- 2.31.1