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;

-- 
/Allan

Reply via email to