]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
net: ethernet: mtk_eth_soc: fix RSTCTRL_PPE{0,1} definitions
authorLorenzo Bianconi <lorenzo@kernel.org>
Thu, 17 Nov 2022 14:29:53 +0000 (15:29 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:32:13 +0000 (13:32 +0100)
[ Upstream commit ef8c373bd91df3cf70596497da0955d218961ead ]

Fix RSTCTRL_PPE0 and RSTCTRL_PPE1 register mask definitions for
MTK_NETSYS_V2.
Remove duplicated definitions.

Fixes: 160d3a9b1929 ("net: ethernet: mtk_eth_soc: introduce MTK_NETSYS_V2 support")
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/mediatek/mtk_eth_soc.c
drivers/net/ethernet/mediatek/mtk_eth_soc.h

index 1148e22001c07dfb7e0d4e6b9a9ede9cdf98191a..864452e4426be96f150ed5f6f4d5a52c142fc6f0 100644 (file)
@@ -3292,16 +3292,17 @@ static int mtk_hw_init(struct mtk_eth *eth)
                return 0;
        }
 
-       val = RSTCTRL_FE | RSTCTRL_PPE;
        if (MTK_HAS_CAPS(eth->soc->caps, MTK_NETSYS_V2)) {
                regmap_write(eth->ethsys, ETHSYS_FE_RST_CHK_IDLE_EN, 0);
-
-               val |= RSTCTRL_ETH;
-               if (MTK_HAS_CAPS(eth->soc->caps, MTK_RSTCTRL_PPE1))
-                       val |= RSTCTRL_PPE1;
+               val = RSTCTRL_PPE0_V2;
+       } else {
+               val = RSTCTRL_PPE0;
        }
 
-       ethsys_reset(eth, val);
+       if (MTK_HAS_CAPS(eth->soc->caps, MTK_RSTCTRL_PPE1))
+               val |= RSTCTRL_PPE1;
+
+       ethsys_reset(eth, RSTCTRL_ETH | RSTCTRL_FE | val);
 
        if (MTK_HAS_CAPS(eth->soc->caps, MTK_NETSYS_V2)) {
                regmap_write(eth->ethsys, ETHSYS_FE_RST_CHK_IDLE_EN,
index b52f3b0177efb9ed4db04567d5e58211c9b83f84..9eaca55a106e90d99c9505eb5e12eb9243af12c0 100644 (file)
 /* ethernet reset control register */
 #define ETHSYS_RSTCTRL                 0x34
 #define RSTCTRL_FE                     BIT(6)
-#define RSTCTRL_PPE                    BIT(31)
-#define RSTCTRL_PPE1                   BIT(30)
+#define RSTCTRL_PPE0                   BIT(31)
+#define RSTCTRL_PPE0_V2                        BIT(30)
+#define RSTCTRL_PPE1                   BIT(31)
 #define RSTCTRL_ETH                    BIT(23)
 
 /* ethernet reset check idle register */
 #define ETHSYS_FE_RST_CHK_IDLE_EN      0x28
 
-/* ethernet reset control register */
-#define ETHSYS_RSTCTRL         0x34
-#define RSTCTRL_FE             BIT(6)
-#define RSTCTRL_PPE            BIT(31)
-
 /* ethernet dma channel agent map */
 #define ETHSYS_DMA_AG_MAP      0x408
 #define ETHSYS_DMA_AG_MAP_PDMA BIT(0)