* What I understand from reading i2c-demux-pinctrl.c, a slave device
will only ever be observable from one master at a time, when you
switch over, all children get removed on one master and added to
the other one, to be probed again by their respective drivers.
Yes. The very first versions of the demuxer tried to do it in a
hot-swapping like fashion but then I switched over because of...
it definitely opens up questions in what happens to e.g. the sysfs
representation, lock order, and power management that I'd rather
not have to think about.
... this! There are dragons, I can tell you :)
* The other thing we definitely have to support for i3c is to deal with
handing over control of the bus between the i3c master owned
by Linux, and other masters that are /not/ owned by the same
Linux instance. This is the part that the spec discusses in much
detail, with the intention of temporarily giving up control of the
bus to let another master do its thing on a shared slave without
user interaction.
I can't comment about this one.