net: ethernet: mtk_ppe: add MTK_FOE_ENTRY_V{1,2}_SIZE macros
authorLorenzo Bianconi <lorenzo@kernel.org>
Wed, 19 Jul 2023 10:29:49 +0000 (12:29 +0200)
committerDavid S. Miller <davem@davemloft.net>
Fri, 21 Jul 2023 07:49:51 +0000 (08:49 +0100)
Introduce MTK_FOE_ENTRY_V{1,2}_SIZE macros in order to make more
explicit foe_entry size for different chipset revisions.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mediatek/mtk_eth_soc.c
drivers/net/ethernet/mediatek/mtk_ppe.h

index 2d15342..18a8aca 100644 (file)
@@ -4804,7 +4804,7 @@ static const struct mtk_soc_data mt7621_data = {
        .required_pctl = false,
        .offload_version = 1,
        .hash_offset = 2,
-       .foe_entry_size = sizeof(struct mtk_foe_entry) - 16,
+       .foe_entry_size = MTK_FOE_ENTRY_V1_SIZE,
        .txrx = {
                .txd_size = sizeof(struct mtk_tx_dma),
                .rxd_size = sizeof(struct mtk_rx_dma),
@@ -4825,7 +4825,7 @@ static const struct mtk_soc_data mt7622_data = {
        .offload_version = 2,
        .hash_offset = 2,
        .has_accounting = true,
-       .foe_entry_size = sizeof(struct mtk_foe_entry) - 16,
+       .foe_entry_size = MTK_FOE_ENTRY_V1_SIZE,
        .txrx = {
                .txd_size = sizeof(struct mtk_tx_dma),
                .rxd_size = sizeof(struct mtk_rx_dma),
@@ -4844,7 +4844,7 @@ static const struct mtk_soc_data mt7623_data = {
        .required_pctl = true,
        .offload_version = 1,
        .hash_offset = 2,
-       .foe_entry_size = sizeof(struct mtk_foe_entry) - 16,
+       .foe_entry_size = MTK_FOE_ENTRY_V1_SIZE,
        .txrx = {
                .txd_size = sizeof(struct mtk_tx_dma),
                .rxd_size = sizeof(struct mtk_rx_dma),
@@ -4882,8 +4882,8 @@ static const struct mtk_soc_data mt7981_data = {
        .required_pctl = false,
        .offload_version = 2,
        .hash_offset = 4,
-       .foe_entry_size = sizeof(struct mtk_foe_entry),
        .has_accounting = true,
+       .foe_entry_size = MTK_FOE_ENTRY_V2_SIZE,
        .txrx = {
                .txd_size = sizeof(struct mtk_tx_dma_v2),
                .rxd_size = sizeof(struct mtk_rx_dma_v2),
@@ -4903,8 +4903,8 @@ static const struct mtk_soc_data mt7986_data = {
        .required_pctl = false,
        .offload_version = 2,
        .hash_offset = 4,
-       .foe_entry_size = sizeof(struct mtk_foe_entry),
        .has_accounting = true,
+       .foe_entry_size = MTK_FOE_ENTRY_V2_SIZE,
        .txrx = {
                .txd_size = sizeof(struct mtk_tx_dma_v2),
                .rxd_size = sizeof(struct mtk_rx_dma_v2),
index e51de31..fb6bf58 100644 (file)
@@ -216,6 +216,9 @@ struct mtk_foe_ipv6_6rd {
        struct mtk_foe_mac_info l2;
 };
 
+#define MTK_FOE_ENTRY_V1_SIZE  80
+#define MTK_FOE_ENTRY_V2_SIZE  96
+
 struct mtk_foe_entry {
        u32 ib1;