[PATCH net v3] net: ti: icssg-prueth: Fix r30 CMDs bitmasks

MD Danish Anwar posted 1 patch 2 years, 1 month ago
drivers/net/ethernet/ti/icssg/icssg_config.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH net v3] net: ti: icssg-prueth: Fix r30 CMDs bitmasks
Posted by MD Danish Anwar 2 years, 1 month ago
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>
---
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Ravi Gunasekaran <r-gunasekaran@ti.com>

Changes from v2 to v3:
*) Updated the commit message mentioning that the patch is infact backwards
   compatible after testing the patch with multiple firmwares. The patch works
   with both old and new ICSSG firmwares.
*) Rebased on latest net/main.

Changes from v1 to v2:
*) Added firmware version in commit message as asked by Ravi.
*) Mentioned in commit message that the patch is not backwards compatible
   as asked by Andrew.

v1: https://lore.kernel.org/all/20231013111758.213769-1-danishanwar@ti.com/
v2: https://lore.kernel.org/all/20231016161525.1695795-1-danishanwar@ti.com/

 drivers/net/ethernet/ti/icssg/icssg_config.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/ti/icssg/icssg_config.c b/drivers/net/ethernet/ti/icssg/icssg_config.c
index 933b84666574..b272361e378f 100644
--- a/drivers/net/ethernet/ti/icssg/icssg_config.c
+++ b/drivers/net/ethernet/ti/icssg/icssg_config.c
@@ -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 */

base-commit: 2915240eddba96b37de4c7e9a3d0ac6f9548454b
-- 
2.34.1
Re: [PATCH net v3] net: ti: icssg-prueth: Fix r30 CMDs bitmasks
Posted by patchwork-bot+netdevbpf@kernel.org 2 years, 1 month ago
Hello:

This patch was applied to netdev/net.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Wed, 18 Oct 2023 20:37:15 +0530 you wrote:
> 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.
> 
> [...]

Here is the summary with links:
  - [net,v3] net: ti: icssg-prueth: Fix r30 CMDs bitmasks
    https://git.kernel.org/netdev/net/c/389db4fd673e

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
Re: [PATCH net v3] net: ti: icssg-prueth: Fix r30 CMDs bitmasks
Posted by Andrew Lunn 2 years, 1 month ago
On Wed, Oct 18, 2023 at 08:37:15PM +0530, MD Danish Anwar wrote:
> 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>

    Andrew