Re: [PATCH v13 5/7] i3c: hub: Add support for the I3C interface in the I3C hub

Frank Li <[email protected]> Mon, 6 Jul 2026 12:55:54 -0400
Newsgroups org.infradead.lists.linux-i3c,dev.linux.lists.sashiko-reviews,org.kernel.vger.linux-devicetree
Message-ID <akveGouWzKOKLiqo@lizhi-Precision-Tower-5810>
On Fri, Jul 03, 2026 at 10:50:30AM +0000, Lakshay Piplani wrote:
>
>
> > -----Original Message-----
> > From: Frank Li (OSS) <[email protected]>
> > Sent: Thursday, July 2, 2026 1:12 AM
> > To: [email protected]
> > Cc: Lakshay Piplani <[email protected]>; [email protected];
> > [email protected]; Alexandre Belloni <[email protected]>;
> > [email protected]; [email protected]; [email protected]
> > Subject: Re: [PATCH v13 5/7] i3c: hub: Add support for the I3C interface in the
> > I3C hub
> >
...
> > > > +static int i3c_hub_request_ibi(struct i3c_dev_desc *desc,
> > > > +			       const struct i3c_ibi_setup *req) {
> > > > +	struct i3c_master_controller *controller = i3c_dev_get_master(desc);
> > > > +	struct i3c_hub_controller *hub_controller;
> > > > +	struct i3c_master_controller *orig_parent;
> > > > +	struct i3c_master_controller *parent;
> > > > +	struct i3c_hub *hub;
> > > > +	int ret;
> > >
> > > [ ... ]
> > >
> > > > +	orig_parent = i3c_hub_update_desc_parent(&desc->common, parent);
> > > > +
> > > > +	ret = i3c_master_direct_attach_i3c_dev_locked(parent, desc);
> >
> > All IBI cap devices should be already attached to master bus when DAA? need
> > attach again here?
> > Actived port's devices logically attached to master bus?
> >
> > So needn't switch port.
> >
>
> No. During DAA, downstream devices are enumerated on the virtual controller, but they are not attached to the parent controller.
> The virtual controller's attach_i3c_dev() callback is intentionally a no-op.
> For private transfers, we temporarily update the hub's dynamic address to the target device's address, perform the transfer through the
> parent controller and then restore the hub's original address. This does not establish any parent controller-specific attachment state.
>
> Therefore, i3c_master_direct_attach_i3c_dev_locked() is still required here so the parent controller can establish its controller-private state before requesting IBI.

Okay,

Frank

-- 
linux-i3c mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-i3c