Re: [PATCH 1/3] dt-bindings: i3c: xlnx: Add IBI and hot-join capability properties
From: Frank Li
Date: Tue Aug 18 2026 - 12:54:49 EST
On Tue, Aug 18, 2026 at 05:29:19PM +0530, Patil, Shubham Sanjay wrote:
> [You don't often get email from shubpati@xxxxxxx. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
>
> Hi Frank,
>
> On 8/14/2026 10:37 PM, Frank Li wrote:
> > [You don't often get email from frank.li@xxxxxxxxxxx. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
> >
> > Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
> >
> >
> > On Fri, Aug 14, 2026 at 05:21:53PM +0530, Shubham Patil wrote:
> > > In-Band Interrupt and Hot-Join are synthesis-time options of the AXI I3C
> > > IP. Describe them with two boolean properties.
> > >
> > > A Hot-Join request is acknowledged by the IBI machinery, so a hot-join
> > > capable design is always IBI capable as well. Both events are reported
> > > through the controller interrupt, which is therefore required whenever
> > > the capability is present.
> > >
> > > Signed-off-by: Shubham Patil <shubhamsanjay.patil@xxxxxxx>
> > > ---
> > > .../bindings/i3c/xlnx,axi-i3c-1.0.yaml | 23 +++++++++++++++++++
> > > 1 file changed, 23 insertions(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/i3c/xlnx,axi-i3c-1.0.yaml b/Documentation/devicetree/bindings/i3c/xlnx,axi-i3c-1.0.yaml
> > > index 2caa245a8656..07e3d0b4d767 100644
> > > --- a/Documentation/devicetree/bindings/i3c/xlnx,axi-i3c-1.0.yaml
> > > +++ b/Documentation/devicetree/bindings/i3c/xlnx,axi-i3c-1.0.yaml
> > > @@ -32,13 +32,34 @@ properties:
> > > interrupts:
> > > maxItems: 1
> > >
> > > + xlnx,ibi-capable:
> > > + type: boolean
> > > + description:
> > > + The IP is synthesized with In-Band Interrupt support. IBIs are reported
> > > + through the controller interrupt.
> > > +
> > > + xlnx,hj-capable:
> > > + type: boolean
> > > + description:
> > > + The IP is synthesized with Hot-Join support. A Hot-Join request is
> > > + acknowledged by the same machinery as an In-Band Interrupt.
> > > +
> >
> > The compatiblity xlnx,axi-i3c-1.0 already indicates such cap. Do you have
> > variance. such as
> >
> > one Soc have two instances.
> > instance 1 have hj and ibi cap
> > instance 2 no hj and ibi cap
>
> Yes, exactly that. The AXI I3C core is not a hard block: it is soft IP
> instantiated in the FPGA fabric, and IBI and Hot-Join are per-instance
> parameters selected in Vivado when the design is built.
I suggest put it i3c.yaml
capable-ibi:
- enum: ["default", "enable", "disable"] to overwrite auto detect from
hardware for difference instances case. put default here to allow overlay
dtso to overwrite it since overlay can't delete property.
I suppose not only xlnx have such problems.
Anyways, need dt team to provide suggestions
Frank
>
> >
> > If new version support HJ and IBI, need use new compatible string.
>
> The compatible does track the IP version, and a future AXI I3C v2.0
> would get its own string. But IBI and Hot-Join are not version
> differences: they are independent build time options of this same v1.0
> core, so putting them in the compatible would mean several strings for
> one IP version, growing combinatorially with every future option.
>
> Thanks,
> Shubham>
> > Frank
> >
> > > required:
> > > - compatible
> > > - reg
> > > - clocks
> > >
> > > +dependencies:
> > > + xlnx,hj-capable: ["xlnx,ibi-capable"]
> > > +
> > > allOf:
> > > - $ref: i3c.yaml#
> > > + - if:
> > > + required:
> > > + - xlnx,ibi-capable
> > > + then:
> > > + required:
> > > + - interrupts
> > >
> > > unevaluatedProperties: false
> > >
> > > @@ -54,5 +75,7 @@ examples:
> > > interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
> > > #address-cells = <3>;
> > > #size-cells = <0>;
> > > + xlnx,ibi-capable;
> > > + xlnx,hj-capable;
> > > };
> > > ...
> > > --
> > > 2.34.1
> > >
>