net: dsa: felix: disable always guard band bit for TAS config
authorXiaoliang Yang <xiaoliang.yang_1@nxp.com>
Mon, 19 Apr 2021 10:25:30 +0000 (18:25 +0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 20 Apr 2021 23:09:42 +0000 (16:09 -0700)
commit316bcffe44798d37144e908dea96ad7f8093114c
treecdf06092b0568b02100e9fef881fb0412019d23c
parente655bbf90330684ed377d19a0f3ac87525c292d7
net: dsa: felix: disable always guard band bit for TAS config

ALWAYS_GUARD_BAND_SCH_Q bit in TAS config register is descripted as
this:
0: Guard band is implemented for nonschedule queues to schedule
   queues transition.
1: Guard band is implemented for any queue to schedule queue
   transition.

The driver set guard band be implemented for any queue to schedule queue
transition before, which will make each GCL time slot reserve a guard
band time that can pass the max SDU frame. Because guard band time could
not be set in tc-taprio now, it will use about 12000ns to pass 1500B max
SDU. This limits each GCL time interval to be more than 12000ns.

This patch change the guard band to be only implemented for nonschedule
queues to schedule queues transition, so that there is no need to reserve
guard band on each GCL. Users can manually add guard band time for each
schedule queues in their configuration if they want.

Signed-off-by: Xiaoliang Yang <xiaoliang.yang_1@nxp.com>
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/ocelot/felix_vsc9959.c