2018-03-08 07:09:59

by Shunyong Yang

[permalink] [raw]
Subject: [PATCH] vfio-mdev/samples: change RDI interrupt condition

When FIFO mode is enabled, the receive data available interrupt
(UART_IIR_RDI in code) should be triggered when the number of data
in FIFO is equal or larger than interrupt trigger level.

This patch changes the trigger level check to ensure multiple bytes
received from upper layer can trigger RDI interrupt correctly.

Cc: Joey Zheng <[email protected]>
Signed-off-by: Shunyong Yang <[email protected]>
---
samples/vfio-mdev/mtty.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/samples/vfio-mdev/mtty.c b/samples/vfio-mdev/mtty.c
index 09f255bdf3ac..7abb79d8313d 100644
--- a/samples/vfio-mdev/mtty.c
+++ b/samples/vfio-mdev/mtty.c
@@ -534,7 +534,7 @@ static void handle_bar_read(unsigned int index, struct mdev_state *mdev_state,

/* Interrupt priority 2: Fifo trigger level reached */
if ((ier & UART_IER_RDI) &&
- (mdev_state->s[index].rxtx.count ==
+ (mdev_state->s[index].rxtx.count >=
mdev_state->s[index].intr_trigger_level))
*buf |= UART_IIR_RDI;

--
1.8.3.1



2018-03-09 06:08:09

by Kirti Wankhede

[permalink] [raw]
Subject: Re: [PATCH] vfio-mdev/samples: change RDI interrupt condition


Thanks for fixing it.
Patch looks good to me.
+Alex to pull this patch.

Reviewed by: Kirti Wankhede <[email protected]>

Thanks,
Kirti

On 3/8/2018 12:38 PM, Shunyong Yang wrote:
> When FIFO mode is enabled, the receive data available interrupt
> (UART_IIR_RDI in code) should be triggered when the number of data
> in FIFO is equal or larger than interrupt trigger level.
>
> This patch changes the trigger level check to ensure multiple bytes
> received from upper layer can trigger RDI interrupt correctly.
>
> Cc: Joey Zheng <[email protected]>
> Signed-off-by: Shunyong Yang <[email protected]>
> ---
> samples/vfio-mdev/mtty.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/samples/vfio-mdev/mtty.c b/samples/vfio-mdev/mtty.c
> index 09f255bdf3ac..7abb79d8313d 100644
> --- a/samples/vfio-mdev/mtty.c
> +++ b/samples/vfio-mdev/mtty.c
> @@ -534,7 +534,7 @@ static void handle_bar_read(unsigned int index, struct mdev_state *mdev_state,
>
> /* Interrupt priority 2: Fifo trigger level reached */
> if ((ier & UART_IER_RDI) &&
> - (mdev_state->s[index].rxtx.count ==
> + (mdev_state->s[index].rxtx.count >=
> mdev_state->s[index].intr_trigger_level))
> *buf |= UART_IIR_RDI;
>
>

2018-03-20 07:55:13

by Shunyong Yang

[permalink] [raw]
Subject: Re: [PATCH] vfio-mdev/samples: change RDI interrupt condition

Hi, Alex,

Gentle ping. Could you please help to pull this patch?
It's a small fix and Kirti has reviewed.

Thanks.
Shunyong.


On Fri, 2018-03-09 at 11:36 +0530, Kirti Wankhede wrote:
> Thanks for fixing it.
> Patch looks good to me.
> +Alex to pull this patch.
>
> Reviewed by: Kirti Wankhede <[email protected]>
>
> Thanks,
> Kirti
>
> On 3/8/2018 12:38 PM, Shunyong Yang wrote:
> >
> > When FIFO mode is enabled, the receive data available interrupt
> > (UART_IIR_RDI in code) should be triggered when the number of data
> > in FIFO is equal or larger than interrupt trigger level.
> >
> > This patch changes the trigger level check to ensure multiple bytes
> > received from upper layer can trigger RDI interrupt correctly.
> >
> > Cc: Joey Zheng <[email protected]>
> > Signed-off-by: Shunyong Yang <[email protected]>
> > ---
> > ?samples/vfio-mdev/mtty.c | 2 +-
> > ?1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/samples/vfio-mdev/mtty.c b/samples/vfio-mdev/mtty.c
> > index 09f255bdf3ac..7abb79d8313d 100644
> > --- a/samples/vfio-mdev/mtty.c
> > +++ b/samples/vfio-mdev/mtty.c
> > @@ -534,7 +534,7 @@ static void handle_bar_read(unsigned int index,
> > struct mdev_state *mdev_state,
> > ?
> > ? /* Interrupt priority 2: Fifo trigger level
> > reached */
> > ? if ((ier & UART_IER_RDI) &&
> > - ????(mdev_state->s[index].rxtx.count ==
> > + ????(mdev_state->s[index].rxtx.count >=
> > ? ??????mdev_state->s[index].intr_trigger_level))
> > ? *buf |= UART_IIR_RDI;
> > ?
> >

2018-03-22 21:49:21

by Alex Williamson

[permalink] [raw]
Subject: Re: [PATCH] vfio-mdev/samples: change RDI interrupt condition

On Fri, 9 Mar 2018 11:36:05 +0530
Kirti Wankhede <[email protected]> wrote:

> Thanks for fixing it.
> Patch looks good to me.
> +Alex to pull this patch.
>
> Reviewed by: Kirti Wankhede <[email protected]>

Applied to vfio next branch for v4.17 with Kirti's Rb. Thanks,

Alex

> On 3/8/2018 12:38 PM, Shunyong Yang wrote:
> > When FIFO mode is enabled, the receive data available interrupt
> > (UART_IIR_RDI in code) should be triggered when the number of data
> > in FIFO is equal or larger than interrupt trigger level.
> >
> > This patch changes the trigger level check to ensure multiple bytes
> > received from upper layer can trigger RDI interrupt correctly.
> >
> > Cc: Joey Zheng <[email protected]>
> > Signed-off-by: Shunyong Yang <[email protected]>
> > ---
> > samples/vfio-mdev/mtty.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/samples/vfio-mdev/mtty.c b/samples/vfio-mdev/mtty.c
> > index 09f255bdf3ac..7abb79d8313d 100644
> > --- a/samples/vfio-mdev/mtty.c
> > +++ b/samples/vfio-mdev/mtty.c
> > @@ -534,7 +534,7 @@ static void handle_bar_read(unsigned int index, struct mdev_state *mdev_state,
> >
> > /* Interrupt priority 2: Fifo trigger level reached */
> > if ((ier & UART_IER_RDI) &&
> > - (mdev_state->s[index].rxtx.count ==
> > + (mdev_state->s[index].rxtx.count >=
> > mdev_state->s[index].intr_trigger_level))
> > *buf |= UART_IIR_RDI;
> >
> >