[PATCH 1/3] dt-bindings: i3c: xlnx: Add IBI and hot-join capability properties

Patil, Shubham Sanjay shubpati at amd.com
Tue Aug 18 03:38:44 PDT 2026


Hi Conor,

On 8/14/2026 9:08 PM, Conor Dooley wrote:
> 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 at amd.com>
>> ---
>>   .../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:
> 
> tbh, I'd prefer if these were spelt out a little bit more, characters
> are cheap. Not a big deal though.

Fair enough. In v2 they become xlnx,in-band-interrupt-capable and
xlnx,hot-join-capable, and I have expanded both descriptions to say what
the features actually do.

> 
>> +    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.
>> +
>>   required:
>>     - compatible
>>     - reg
>>     - clocks
>>   
>> +dependencies:
>> +  xlnx,hj-capable: ["xlnx,ibi-capable"]
>> +
>>   allOf:
>>     - $ref: i3c.yaml#
>> +  - if:
>> +      required:
>> +        - xlnx,ibi-capable
>> +    then:
>> +      required:
>> +        - interrupts
> 
> Why is one dependency expressed this way, and the other expressed using
> the dependencies property? Can the interrupts property be handled that
> way too?

No reason other than an oversight on my part, and yes it can. Both are
expressed with dependencies in v2.

Thanks,
Shubham

> 
> Cheers,
> Conor.
> 
>>   
>>   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
>>




More information about the linux-i3c mailing list