This patch performs code cleanup by defining macros for the ptp-timestamp
filters.

Signed-off-by: Sudarsana Reddy Kalluru <skall...@marvell.com>
Signed-off-by: Ariel Elior <ael...@marvell.com>
---
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | 50 ++++++++++++++----------
 1 file changed, 30 insertions(+), 20 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 
b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
index 626b491..0ebc526 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
@@ -15376,27 +15376,45 @@ static int bnx2x_enable_ptp_packets(struct bnx2x *bp)
        return 0;
 }
 
+#define BNX2X_PTP_TX_ON_PARAM_MASK 0x6AA
+#define BNX2X_PTP_TX_ON_RULE_MASK 0x3EEE
+#define BNX2X_PTP_V1_L4_PARAM_MASK 0x7EE
+#define BNX2X_PTP_V1_L4_RULE_MASK 0x3FFE
+#define BNX2X_PTP_V2_L4_PARAM_MASK 0x7EA
+#define BNX2X_PTP_V2_L4_RULE_MASK 0x3FEE
+#define BNX2X_PTP_V2_L2_PARAM_MASK 0x6BF
+#define BNX2X_PTP_V2_L2_RULE_MASK 0x3EFF
+#define BNX2X_PTP_V2_PARAM_MASK 0x6AA
+#define BNX2X_PTP_V2_RULE_MASK 0x3EEE
+
 int bnx2x_configure_ptp_filters(struct bnx2x *bp)
 {
        int port = BP_PORT(bp);
+       u32 param, rule;
        int rc;
 
        if (!bp->hwtstamp_ioctl_called)
                return 0;
 
+       param = port ? NIG_REG_P1_TLLH_PTP_PARAM_MASK :
+               NIG_REG_P0_TLLH_PTP_PARAM_MASK;
+       rule = port ? NIG_REG_P1_TLLH_PTP_RULE_MASK :
+               NIG_REG_P0_TLLH_PTP_RULE_MASK;
        switch (bp->tx_type) {
        case HWTSTAMP_TX_ON:
                bp->flags |= TX_TIMESTAMPING_EN;
-               REG_WR(bp, port ? NIG_REG_P1_TLLH_PTP_PARAM_MASK :
-                      NIG_REG_P0_TLLH_PTP_PARAM_MASK, 0x6AA);
-               REG_WR(bp, port ? NIG_REG_P1_TLLH_PTP_RULE_MASK :
-                      NIG_REG_P0_TLLH_PTP_RULE_MASK, 0x3EEE);
+               REG_WR(bp, param, BNX2X_PTP_TX_ON_PARAM_MASK);
+               REG_WR(bp, rule, BNX2X_PTP_TX_ON_RULE_MASK);
                break;
        case HWTSTAMP_TX_ONESTEP_SYNC:
                BNX2X_ERR("One-step timestamping is not supported\n");
                return -ERANGE;
        }
 
+       param = port ? NIG_REG_P1_LLH_PTP_PARAM_MASK :
+               NIG_REG_P0_LLH_PTP_PARAM_MASK;
+       rule = port ? NIG_REG_P1_LLH_PTP_RULE_MASK :
+               NIG_REG_P0_LLH_PTP_RULE_MASK;
        switch (bp->rx_filter) {
        case HWTSTAMP_FILTER_NONE:
                break;
@@ -15410,30 +15428,24 @@ int bnx2x_configure_ptp_filters(struct bnx2x *bp)
        case HWTSTAMP_FILTER_PTP_V1_L4_DELAY_REQ:
                bp->rx_filter = HWTSTAMP_FILTER_PTP_V1_L4_EVENT;
                /* Initialize PTP detection for UDP/IPv4 events */
-               REG_WR(bp, port ? NIG_REG_P1_LLH_PTP_PARAM_MASK :
-                      NIG_REG_P0_LLH_PTP_PARAM_MASK, 0x7EE);
-               REG_WR(bp, port ? NIG_REG_P1_LLH_PTP_RULE_MASK :
-                      NIG_REG_P0_LLH_PTP_RULE_MASK, 0x3FFE);
+               REG_WR(bp, param, BNX2X_PTP_V1_L4_PARAM_MASK);
+               REG_WR(bp, rule, BNX2X_PTP_V1_L4_RULE_MASK);
                break;
        case HWTSTAMP_FILTER_PTP_V2_L4_EVENT:
        case HWTSTAMP_FILTER_PTP_V2_L4_SYNC:
        case HWTSTAMP_FILTER_PTP_V2_L4_DELAY_REQ:
                bp->rx_filter = HWTSTAMP_FILTER_PTP_V2_L4_EVENT;
                /* Initialize PTP detection for UDP/IPv4 or UDP/IPv6 events */
-               REG_WR(bp, port ? NIG_REG_P1_LLH_PTP_PARAM_MASK :
-                      NIG_REG_P0_LLH_PTP_PARAM_MASK, 0x7EA);
-               REG_WR(bp, port ? NIG_REG_P1_LLH_PTP_RULE_MASK :
-                      NIG_REG_P0_LLH_PTP_RULE_MASK, 0x3FEE);
+               REG_WR(bp, param, BNX2X_PTP_V2_L4_PARAM_MASK);
+               REG_WR(bp, rule, BNX2X_PTP_V2_L4_RULE_MASK);
                break;
        case HWTSTAMP_FILTER_PTP_V2_L2_EVENT:
        case HWTSTAMP_FILTER_PTP_V2_L2_SYNC:
        case HWTSTAMP_FILTER_PTP_V2_L2_DELAY_REQ:
                bp->rx_filter = HWTSTAMP_FILTER_PTP_V2_L2_EVENT;
                /* Initialize PTP detection L2 events */
-               REG_WR(bp, port ? NIG_REG_P1_LLH_PTP_PARAM_MASK :
-                      NIG_REG_P0_LLH_PTP_PARAM_MASK, 0x6BF);
-               REG_WR(bp, port ? NIG_REG_P1_LLH_PTP_RULE_MASK :
-                      NIG_REG_P0_LLH_PTP_RULE_MASK, 0x3EFF);
+               REG_WR(bp, param, BNX2X_PTP_V2_L2_PARAM_MASK);
+               REG_WR(bp, rule, BNX2X_PTP_V2_L2_RULE_MASK);
 
                break;
        case HWTSTAMP_FILTER_PTP_V2_EVENT:
@@ -15441,10 +15453,8 @@ int bnx2x_configure_ptp_filters(struct bnx2x *bp)
        case HWTSTAMP_FILTER_PTP_V2_DELAY_REQ:
                bp->rx_filter = HWTSTAMP_FILTER_PTP_V2_EVENT;
                /* Initialize PTP detection L2, UDP/IPv4 or UDP/IPv6 events */
-               REG_WR(bp, port ? NIG_REG_P1_LLH_PTP_PARAM_MASK :
-                      NIG_REG_P0_LLH_PTP_PARAM_MASK, 0x6AA);
-               REG_WR(bp, port ? NIG_REG_P1_LLH_PTP_RULE_MASK :
-                      NIG_REG_P0_LLH_PTP_RULE_MASK, 0x3EEE);
+               REG_WR(bp, param, BNX2X_PTP_V2_PARAM_MASK);
+               REG_WR(bp, rule, BNX2X_PTP_V2_RULE_MASK);
                break;
        }
 
-- 
1.8.3.1

Reply via email to