Hi,

> -----Original Message-----
> From: netdev-ow...@vger.kernel.org <netdev-ow...@vger.kernel.org> On
> Behalf Of Allan W . Nielsen
> Sent: Tuesday, August 13, 2019 2:30 PM
> To: Y.b. Lu <yangbo...@nxp.com>
> Cc: netdev@vger.kernel.org; David S . Miller <da...@davemloft.net>;
> Alexandre Belloni <alexandre.bell...@bootlin.com>; Microchip Linux Driver
> Support <unglinuxdri...@microchip.com>
> Subject: Re: [v2, 3/4] ocelot_ace: fix action of trap
> 
> The 08/13/2019 08:16, Allan W . Nielsen wrote:
> > The 08/13/2019 10:52, Yangbo Lu wrote:
> > > The trap action should be copying the frame to CPU and dropping it
> > > for forwarding, but current setting was just copying frame to CPU.
> > >
> > > Signed-off-by: Yangbo Lu <yangbo...@nxp.com>
> > > ---
> > > Changes for v2:
> > >   - None.
> > > ---
> > >  drivers/net/ethernet/mscc/ocelot_ace.c | 6 +++---
> > >  1 file changed, 3 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/drivers/net/ethernet/mscc/ocelot_ace.c
> > > b/drivers/net/ethernet/mscc/ocelot_ace.c
> > > index 91250f3..59ad590 100644
> > > --- a/drivers/net/ethernet/mscc/ocelot_ace.c
> > > +++ b/drivers/net/ethernet/mscc/ocelot_ace.c
> > > @@ -317,9 +317,9 @@ static void is2_action_set(struct vcap_data *data,
> > >           break;
> > >   case OCELOT_ACL_ACTION_TRAP:
> > >           VCAP_ACT_SET(PORT_MASK, 0x0);
> > > -         VCAP_ACT_SET(MASK_MODE, 0x0);
> > > -         VCAP_ACT_SET(POLICE_ENA, 0x0);
> > > -         VCAP_ACT_SET(POLICE_IDX, 0x0);
> > > +         VCAP_ACT_SET(MASK_MODE, 0x1);
> > > +         VCAP_ACT_SET(POLICE_ENA, 0x1);
> > > +         VCAP_ACT_SET(POLICE_IDX, OCELOT_POLICER_DISCARD);
> > >           VCAP_ACT_SET(CPU_QU_NUM, 0x0);
> > >           VCAP_ACT_SET(CPU_COPY_ENA, 0x1);
> > >           break;
> >
> > This is still wrong, please see the comments provided the first time
> > you submitted this.
> >
> > /Allan
> 
> I believe this will make it work - but I have not tested it:
> 
>       case OCELOT_ACL_ACTION_TRAP:
>               VCAP_ACT_SET(PORT_MASK, 0x0);
> -             VCAP_ACT_SET(MASK_MODE, 0x0);
> +             VCAP_ACT_SET(MASK_MODE, 0x1);
>               VCAP_ACT_SET(CPU_QU_NUM, 0x0);
>               VCAP_ACT_SET(CPU_COPY_ENA, 0x1);
>               break;
> 

[Y.b. Lu] It makes sense. And it worked.
I have sent out v3 which only included this one patch. I'd like to send the 
other patches once Felix driver is accepted, but I'd like to collect the 
suggestions :)
Thanks.

Sorry, I missed to add change logs for v3 patch...
https://patchwork.ozlabs.org/patch/1149770/


> --
> /Allan

Reply via email to