On Fri, May 08, 2020 at 07:26:42PM -0700, Bhaumik Bhatt wrote: > From: Hemant Kumar <hemantk@xxxxxxxxxxxxxx> > > Driver is using zero initialized intmod value from mhi channel when > configuring TRE for bei field. This prevents interrupt moderation to > take effect in case it is supported by an event ring. Fix this by > copying intmod value from associated event ring to mhi channel upon > registering mhi controller. > > Signed-off-by: Hemant Kumar <hemantk@xxxxxxxxxxxxxx> > Signed-off-by: Bhaumik Bhatt <bbhatt@xxxxxxxxxxxxxx> > Reviewed-by: Jeffrey Hugo <jhugo@xxxxxxxxxxxxxx> Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> Thanks, Mani > --- > drivers/bus/mhi/core/init.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/bus/mhi/core/init.c b/drivers/bus/mhi/core/init.c > index eb2ab05..1a93d24 100644 > --- a/drivers/bus/mhi/core/init.c > +++ b/drivers/bus/mhi/core/init.c > @@ -863,6 +863,10 @@ int mhi_register_controller(struct mhi_controller *mhi_cntrl, > mutex_init(&mhi_chan->mutex); > init_completion(&mhi_chan->completion); > rwlock_init(&mhi_chan->lock); > + > + /* used in setting bei field of TRE */ > + mhi_event = &mhi_cntrl->mhi_event[mhi_chan->er_index]; > + mhi_chan->intmod = mhi_event->intmod; > } > > if (mhi_cntrl->bounce_buf) { > -- > The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, > a Linux Foundation Collaborative Project