net: ti: icssg-prueth: Fix r30 CMDs bitmasks
authorMD Danish Anwar <danishanwar@ti.com>
Wed, 18 Oct 2023 15:07:15 +0000 (20:37 +0530)
committerJakub Kicinski <kuba@kernel.org>
Thu, 19 Oct 2023 16:04:43 +0000 (09:04 -0700)
The bitmasks for EMAC_PORT_DISABLE and EMAC_PORT_FORWARD r30 commands are
wrong in the driver.

Update the bitmasks of these commands to the correct ones as used by the
ICSSG firmware. These bitmasks are backwards compatible and work with
any ICSSG firmware version.

Fixes: e9b4ece7d74b ("net: ti: icssg-prueth: Add Firmware config and classification APIs.")
Signed-off-by: MD Danish Anwar <danishanwar@ti.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://lore.kernel.org/r/20231018150715.3085380-1-danishanwar@ti.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/ti/icssg/icssg_config.c

index 933b846..b272361 100644 (file)
@@ -379,9 +379,9 @@ int icssg_config(struct prueth *prueth, struct prueth_emac *emac, int slice)
 
 /* Bitmask for ICSSG r30 commands */
 static const struct icssg_r30_cmd emac_r32_bitmask[] = {
-       {{0xffff0004, 0xffff0100, 0xffff0100, EMAC_NONE}},      /* EMAC_PORT_DISABLE */
+       {{0xffff0004, 0xffff0100, 0xffff0004, EMAC_NONE}},      /* EMAC_PORT_DISABLE */
        {{0xfffb0040, 0xfeff0200, 0xfeff0200, EMAC_NONE}},      /* EMAC_PORT_BLOCK */
-       {{0xffbb0000, 0xfcff0000, 0xdcff0000, EMAC_NONE}},      /* EMAC_PORT_FORWARD */
+       {{0xffbb0000, 0xfcff0000, 0xdcfb0000, EMAC_NONE}},      /* EMAC_PORT_FORWARD */
        {{0xffbb0000, 0xfcff0000, 0xfcff2000, EMAC_NONE}},      /* EMAC_PORT_FORWARD_WO_LEARNING */
        {{0xffff0001, EMAC_NONE,  EMAC_NONE, EMAC_NONE}},       /* ACCEPT ALL */
        {{0xfffe0002, EMAC_NONE,  EMAC_NONE, EMAC_NONE}},       /* ACCEPT TAGGED */