Skip to contentSkip to conversation

i2c-xiic driver changes from Cisco

DISCUSSION Daniel Walker (danielwa) 2 participants 2 messages Dec 2, 2025 – Dec 4, 2025

lore
Share & tools
lore
#0 lore raw

Hi,

We have a slightly modified version of the Xilinx IP which the i2c-xiic.c sources seem to support.

We made one (or at least one) change to the IP were we don't supply it with an interrupt line. It doesn't appear the driver supports this configuration. Is that accurate to your knowledge ?

If the drivers doesn't support some type of polling mode, is Xilinx willing to accept changes which would make the driver compatible with a polling mode if an interrupt is not supplied thru the device tree ?

It seems like it makes sense the driver should support a polling mode because Xilinx customers may make a product where the interrupt line doesn't function properly. In that case the customer would need a contingency which could be polling for interrupts.

Daniel

#1 lore raw

Hi,

Quoted 9 lines · Daniel Walker (danielwa)

Hi,

We have a slightly modified version of the Xilinx IP which the i2c-xiic.c sources seem to support.

We made one (or at least one) change to the IP were we don't supply it with an interrupt line. It doesn't appear the driver supports this configuration. Is that accurate to your knowledge ?

Quoted 8 lines

If the drivers doesn't support some type of polling mode, is Xilinx willing to accept changes which would make the driver compatible with a polling mode if an interrupt is not supplied thru the device tree ?

It seems like it makes sense the driver should support a polling mode because Xilinx customers may make a product where the interrupt line doesn't function properly. In that case the customer would need a contingency which could be polling for interrupts.

Not sure what that change means but if you don't connect IRQ in design I expect vivado removes the whole logic around it at synthesis time.

Anyway using this IP without IRQ is perfectly valid use case and no issue from my side to also support it in the kernel.

Thanks,
Michal