On Thu, Sep 25, 2025 at 05:30:35PM +0530, Jyothi Kumar Seerapu wrote: > From: Jyothi Kumar Seerapu <quic_jseer...@quicinc.com> > > The I2C driver gets an interrupt upon transfer completion. > When handling multiple messages in a single transfer, this > results in N interrupts for N messages, leading to significant > software interrupt latency. > > To mitigate this latency, utilize Block Event Interrupt (BEI) > mechanism. Enabling BEI instructs the hardware to prevent interrupt > generation and BEI is disabled when an interrupt is necessary. > > Large I2C transfer can be divided into chunks of messages internally. > Interrupts are not expected for the messages for which BEI bit set, > only the last message triggers an interrupt, indicating the completion of > N messages. This BEI mechanism enhances overall transfer efficiency. > > BEI optimizations are currently implemented for I2C write transfers only, > as there is no use case for multiple I2C read messages in a single transfer > at this time. > > Signed-off-by: Jyothi Kumar Seerapu <quic_jseer...@quicinc.com> > --- >
Reviewed-by: Dmitry Baryshkov <dmitry.barysh...@oss.qualcomm.com> -- With best wishes Dmitry