ramips: remove further mt7621 code from local ethernet driver
authorAdrian Schmutzler <freifunk@adrianschmutzler.de>
Fri, 21 Aug 2020 14:18:23 +0000 (16:18 +0200)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Wed, 26 Aug 2020 21:58:01 +0000 (23:58 +0200)
While commit 734a8c46e703 focussed on removing stuff directly
selected by the NET_RALINK_* symbols, this patch removes additional
unused mt7621-specific code from the ethernet driver.

As with the previous patch, the main reason is to reduce the amount
of code we have to maintain and care about.

Note that this patch still keeps a few lines with
IS_ENABLED(CONFIG_SOC_MT7621) in mtk_eth_soc.h/.c, as this file is
still selected for the mt7621 subtarget.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
target/linux/ramips/files/drivers/net/ethernet/ralink/gsw_mt7620.h
target/linux/ramips/files/drivers/net/ethernet/ralink/mt7530.c
target/linux/ramips/files/drivers/net/ethernet/ralink/mt7530.h
target/linux/ramips/files/drivers/net/ethernet/ralink/mtk_eth_soc.h
target/linux/ramips/files/drivers/net/ethernet/ralink/soc_mt7620.c

index 03d030446a53c8261bfc4eb41f708a4ae914fcff..f10946a1738811f24eb34b86077f4684cf67b051 100644 (file)
 
 #define GSW_REG_PHY_TIMEOUT    (5 * HZ)
 
-#ifdef CONFIG_SOC_MT7621
-#define MT7620A_GSW_REG_PIAC   0x0004
-#else
 #define MT7620A_GSW_REG_PIAC   0x7004
-#endif
 
 #define GSW_NUM_VLANS          16
 #define GSW_NUM_VIDS           4096
 
 #define PORT_IRQ_ST_CHG                0x7f
 
-#ifdef CONFIG_SOC_MT7621
-#define ESW_PHY_POLLING                0x0000
-#else
 #define ESW_PHY_POLLING                0x7000
-#endif
 
 #define        PMCR_IPG                BIT(18)
 #define        PMCR_MAC_MODE           BIT(16)
index 367b8d9ac4569f00972e89f3a48e45b09718293b..be1b8a6d8ed0d51a536bd37bdc471db9cdb34260 100644 (file)
 
 #define MT7530_CPU_PORT                6
 #define MT7530_NUM_PORTS       8
-#ifdef CONFIG_SOC_MT7621
-#define MT7530_NUM_VLANS       4095
-#else
 #define MT7530_NUM_VLANS       16
-#endif
 #define MT7530_MAX_VID         4095
 #define MT7530_MIN_VID         0
 #define MT7530_NUM_ARL_RECORDS 2048
@@ -50,9 +46,6 @@
 #define MT7530_PORT_MIB_TXB_ID 2       /* TxGOC */
 #define MT7530_PORT_MIB_RXB_ID 6       /* RxGOC */
 
-#define MT7621_PORT_MIB_TXB_ID 18      /* TxByte */
-#define MT7621_PORT_MIB_RXB_ID 37      /* RxByte */
-
 /* registers */
 #define REG_ESW_WT_MAC_MFC             0x10
 
@@ -159,50 +152,6 @@ static const struct mt7xxx_mib_desc mt7620_port_mibs[] = {
        MIB_DESC(1, MT7620_MIB_STATS_PORT_REPC2N, "RxEPC2")
 };
 
-static const struct mt7xxx_mib_desc mt7621_mibs[] = {
-       MIB_DESC(1, MT7621_STATS_TDPC, "TxDrop"),
-       MIB_DESC(1, MT7621_STATS_TCRC, "TxCRC"),
-       MIB_DESC(1, MT7621_STATS_TUPC, "TxUni"),
-       MIB_DESC(1, MT7621_STATS_TMPC, "TxMulti"),
-       MIB_DESC(1, MT7621_STATS_TBPC, "TxBroad"),
-       MIB_DESC(1, MT7621_STATS_TCEC, "TxCollision"),
-       MIB_DESC(1, MT7621_STATS_TSCEC, "TxSingleCol"),
-       MIB_DESC(1, MT7621_STATS_TMCEC, "TxMultiCol"),
-       MIB_DESC(1, MT7621_STATS_TDEC, "TxDefer"),
-       MIB_DESC(1, MT7621_STATS_TLCEC, "TxLateCol"),
-       MIB_DESC(1, MT7621_STATS_TXCEC, "TxExcCol"),
-       MIB_DESC(1, MT7621_STATS_TPPC, "TxPause"),
-       MIB_DESC(1, MT7621_STATS_TL64PC, "Tx64Byte"),
-       MIB_DESC(1, MT7621_STATS_TL65PC, "Tx65Byte"),
-       MIB_DESC(1, MT7621_STATS_TL128PC, "Tx128Byte"),
-       MIB_DESC(1, MT7621_STATS_TL256PC, "Tx256Byte"),
-       MIB_DESC(1, MT7621_STATS_TL512PC, "Tx512Byte"),
-       MIB_DESC(1, MT7621_STATS_TL1024PC, "Tx1024Byte"),
-       MIB_DESC(2, MT7621_STATS_TOC, "TxByte"),
-       MIB_DESC(1, MT7621_STATS_RDPC, "RxDrop"),
-       MIB_DESC(1, MT7621_STATS_RFPC, "RxFiltered"),
-       MIB_DESC(1, MT7621_STATS_RUPC, "RxUni"),
-       MIB_DESC(1, MT7621_STATS_RMPC, "RxMulti"),
-       MIB_DESC(1, MT7621_STATS_RBPC, "RxBroad"),
-       MIB_DESC(1, MT7621_STATS_RAEPC, "RxAlignErr"),
-       MIB_DESC(1, MT7621_STATS_RCEPC, "RxCRC"),
-       MIB_DESC(1, MT7621_STATS_RUSPC, "RxUnderSize"),
-       MIB_DESC(1, MT7621_STATS_RFEPC, "RxFragment"),
-       MIB_DESC(1, MT7621_STATS_ROSPC, "RxOverSize"),
-       MIB_DESC(1, MT7621_STATS_RJEPC, "RxJabber"),
-       MIB_DESC(1, MT7621_STATS_RPPC, "RxPause"),
-       MIB_DESC(1, MT7621_STATS_RL64PC, "Rx64Byte"),
-       MIB_DESC(1, MT7621_STATS_RL65PC, "Rx65Byte"),
-       MIB_DESC(1, MT7621_STATS_RL128PC, "Rx128Byte"),
-       MIB_DESC(1, MT7621_STATS_RL256PC, "Rx256Byte"),
-       MIB_DESC(1, MT7621_STATS_RL512PC, "Rx512Byte"),
-       MIB_DESC(1, MT7621_STATS_RL1024PC, "Rx1024Byte"),
-       MIB_DESC(2, MT7621_STATS_ROC, "RxByte"),
-       MIB_DESC(1, MT7621_STATS_RDPC_CTRL, "RxCtrlDrop"),
-       MIB_DESC(1, MT7621_STATS_RDPC_ING, "RxIngDrop"),
-       MIB_DESC(1, MT7621_STATS_RDPC_ARL, "RxARLDrop")
-};
-
 enum {
        /* Global attributes. */
        MT7530_ATTR_ENABLE_VLAN,
@@ -510,14 +459,6 @@ mt7530_set_vid(struct switch_dev *dev, const struct switch_attr *attr,
        return 0;
 }
 
-static int
-mt7621_get_vid(struct switch_dev *dev, const struct switch_attr *attr,
-               struct switch_val *val)
-{
-       val->value.i = val->port_vlan;
-       return 0;
-}
-
 static int
 mt7530_get_vid(struct switch_dev *dev, const struct switch_attr *attr,
                struct switch_val *val)
@@ -610,7 +551,6 @@ mt7530_write_vlan_entry(struct mt7530_priv *priv, int vlan, u16 vid,
        int port;
        u32 val;
 
-#ifndef CONFIG_SOC_MT7621
        /* vid of vlan */
        val = mt7530_r32(priv, REG_ESW_VLAN_VTIM(vlan));
        if (vlan % 2 == 0) {
@@ -621,7 +561,6 @@ mt7530_write_vlan_entry(struct mt7530_priv *priv, int vlan, u16 vid,
                val |= (vid << 12);
        }
        mt7530_w32(priv, REG_ESW_VLAN_VTIM(vlan), val);
-#endif
 
        /* vlan port membership */
        if (ports)
@@ -642,11 +581,7 @@ mt7530_write_vlan_entry(struct mt7530_priv *priv, int vlan, u16 vid,
        mt7530_w32(priv, REG_ESW_VLAN_VAWD2, val);
 
        /* write to vlan table */
-#ifdef CONFIG_SOC_MT7621
-       mt7530_vtcr(priv, 1, vid);
-#else
        mt7530_vtcr(priv, 1, vlan);
-#endif
 }
 
 static int
@@ -799,53 +734,6 @@ mt7530_get_port_link(struct switch_dev *dev,  int port,
        return 0;
 }
 
-static u64 get_mib_counter(struct mt7530_priv *priv, int i, int port)
-{
-       unsigned int port_base;
-       u64 lo;
-
-       port_base = MT7621_MIB_COUNTER_BASE +
-                   MT7621_MIB_COUNTER_PORT_OFFSET * port;
-
-       lo = mt7530_r32(priv, port_base + mt7621_mibs[i].offset);
-       if (mt7621_mibs[i].size == 2) {
-               u64 hi;
-
-               hi = mt7530_r32(priv, port_base + mt7621_mibs[i].offset + 4);
-               lo |= hi << 32;
-       }
-
-       return lo;
-}
-
-static int mt7621_sw_get_port_mib(struct switch_dev *dev,
-                                 const struct switch_attr *attr,
-                                 struct switch_val *val)
-{
-       static char buf[4096];
-       struct mt7530_priv *priv = container_of(dev, struct mt7530_priv, swdev);
-       int i, len = 0;
-
-       if (val->port_vlan >= MT7530_NUM_PORTS)
-               return -EINVAL;
-
-       len += snprintf(buf + len, sizeof(buf) - len,
-                       "Port %d MIB counters\n", val->port_vlan);
-
-       for (i = 0; i < ARRAY_SIZE(mt7621_mibs); ++i) {
-               u64 counter;
-               len += snprintf(buf + len, sizeof(buf) - len,
-                               "%-11s: ", mt7621_mibs[i].name);
-               counter = get_mib_counter(priv, i, val->port_vlan);
-               len += snprintf(buf + len, sizeof(buf) - len, "%llu\n",
-                               counter);
-       }
-
-       val->value.s = buf;
-       val->len = len;
-       return 0;
-}
-
 static u64 get_mib_counter_7620(struct mt7530_priv *priv, int i)
 {
        return mt7530_r32(priv, MT7620_MIB_COUNTER_BASE + mt7620_mibs[i].offset);
@@ -1019,20 +907,6 @@ static int mt7530_get_port_stats(struct switch_dev *dev, int port,
        return 0;
 }
 
-static int mt7621_get_port_stats(struct switch_dev *dev, int port,
-                                       struct switch_port_stats *stats)
-{
-       struct mt7530_priv *priv = container_of(dev, struct mt7530_priv, swdev);
-
-       if (port < 0 || port >= MT7530_NUM_PORTS)
-               return -EINVAL;
-
-       stats->tx_bytes = get_mib_counter(priv, MT7621_PORT_MIB_TXB_ID, port);
-       stats->rx_bytes = get_mib_counter(priv, MT7621_PORT_MIB_RXB_ID, port);
-
-       return 0;
-}
-
 static const struct switch_attr mt7530_global[] = {
        {
                .type = SWITCH_TYPE_INT,
@@ -1065,41 +939,6 @@ static const struct switch_attr mt7530_global[] = {
        },
 };
 
-static const struct switch_attr mt7621_port[] = {
-       {
-               .type = SWITCH_TYPE_STRING,
-               .name = "mib",
-               .description = "Get MIB counters for port",
-               .get = mt7621_sw_get_port_mib,
-               .set = NULL,
-       }, {
-               .type = SWITCH_TYPE_INT,
-               .name = "enable_mirror_rx",
-               .description = "Enable mirroring of RX packets",
-               .set = mt7530_set_port_mirror_rx,
-               .get = mt7530_get_port_mirror_rx,
-               .max = 1,
-       }, {
-               .type = SWITCH_TYPE_INT,
-               .name = "enable_mirror_tx",
-               .description = "Enable mirroring of TX packets",
-               .set = mt7530_set_port_mirror_tx,
-               .get = mt7530_get_port_mirror_tx,
-               .max = 1,
-       },
-};
-
-static const struct switch_attr mt7621_vlan[] = {
-       {
-               .type = SWITCH_TYPE_INT,
-               .name = "vid",
-               .description = "VLAN ID (0-4094)",
-               .set = mt7530_set_vid,
-               .get = mt7621_get_vid,
-               .max = 4094,
-       },
-};
-
 static const struct switch_attr mt7530_port[] = {
        {
                .type = SWITCH_TYPE_STRING,
@@ -1135,29 +974,6 @@ static const struct switch_attr mt7530_vlan[] = {
        },
 };
 
-static const struct switch_dev_ops mt7621_ops = {
-       .attr_global = {
-               .attr = mt7530_global,
-               .n_attr = ARRAY_SIZE(mt7530_global),
-       },
-       .attr_port = {
-               .attr = mt7621_port,
-               .n_attr = ARRAY_SIZE(mt7621_port),
-       },
-       .attr_vlan = {
-               .attr = mt7621_vlan,
-               .n_attr = ARRAY_SIZE(mt7621_vlan),
-       },
-       .get_vlan_ports = mt7530_get_vlan_ports,
-       .set_vlan_ports = mt7530_set_vlan_ports,
-       .get_port_pvid = mt7530_get_port_pvid,
-       .set_port_pvid = mt7530_set_port_pvid,
-       .get_port_link = mt7530_get_port_link,
-       .get_port_stats = mt7621_get_port_stats,
-       .apply_config = mt7530_apply_config,
-       .reset_switch = mt7530_reset_switch,
-};
-
 static const struct switch_dev_ops mt7530_ops = {
        .attr_global = {
                .attr = mt7530_global,
@@ -1201,9 +1017,6 @@ mt7530_probe(struct device *dev, void __iomem *base, struct mii_bus *bus, int vl
        if (bus) {
                swdev->alias = "mt7530";
                swdev->name = "mt7530";
-       } else if (IS_ENABLED(CONFIG_SOC_MT7621)) {
-               swdev->alias = "mt7621";
-               swdev->name = "mt7621";
        } else {
                swdev->alias = "mt7620";
                swdev->name = "mt7620";
@@ -1211,10 +1024,7 @@ mt7530_probe(struct device *dev, void __iomem *base, struct mii_bus *bus, int vl
        swdev->cpu_port = MT7530_CPU_PORT;
        swdev->ports = MT7530_NUM_PORTS;
        swdev->vlans = MT7530_NUM_VLANS;
-       if (IS_ENABLED(CONFIG_SOC_MT7621))
-               swdev->ops = &mt7621_ops;
-       else
-               swdev->ops = &mt7530_ops;
+       swdev->ops = &mt7530_ops;
 
        ret = register_switch(swdev, NULL);
        if (ret) {
@@ -1229,7 +1039,7 @@ mt7530_probe(struct device *dev, void __iomem *base, struct mii_bus *bus, int vl
        mt7530_apply_config(swdev);
 
        /* magic vodoo */
-       if (!IS_ENABLED(CONFIG_SOC_MT7621) && bus && mt7530_r32(mt7530, REG_HWTRAP) !=  0x1117edf) {
+       if (bus && mt7530_r32(mt7530, REG_HWTRAP) !=  0x1117edf) {
                dev_info(dev, "fixing up MHWTRAP register - bootloader probably played with it\n");
                mt7530_w32(mt7530, REG_HWTRAP, 0x1117edf);
        }
index cf725c2f2ba91db3263786123b6b2d80e1fbc12e..53e1d2ce55a07e81565c9bfc92a8c5a4b420562c 100644 (file)
 /* Rx Event Packet Counter of Port n */
 #define MT7620_MIB_STATS_PORT_REPC2N   0x30
 
-#define MT7621_MIB_COUNTER_BASE        0x4000
-#define MT7621_MIB_COUNTER_PORT_OFFSET 0x100
-#define MT7621_STATS_TDPC      0x00
-#define MT7621_STATS_TCRC      0x04
-#define MT7621_STATS_TUPC      0x08
-#define MT7621_STATS_TMPC      0x0C
-#define MT7621_STATS_TBPC      0x10
-#define MT7621_STATS_TCEC      0x14
-#define MT7621_STATS_TSCEC     0x18
-#define MT7621_STATS_TMCEC     0x1C
-#define MT7621_STATS_TDEC      0x20
-#define MT7621_STATS_TLCEC     0x24
-#define MT7621_STATS_TXCEC     0x28
-#define MT7621_STATS_TPPC      0x2C
-#define MT7621_STATS_TL64PC    0x30
-#define MT7621_STATS_TL65PC    0x34
-#define MT7621_STATS_TL128PC   0x38
-#define MT7621_STATS_TL256PC   0x3C
-#define MT7621_STATS_TL512PC   0x40
-#define MT7621_STATS_TL1024PC  0x44
-#define MT7621_STATS_TOC       0x48
-#define MT7621_STATS_RDPC      0x60
-#define MT7621_STATS_RFPC      0x64
-#define MT7621_STATS_RUPC      0x68
-#define MT7621_STATS_RMPC      0x6C
-#define MT7621_STATS_RBPC      0x70
-#define MT7621_STATS_RAEPC     0x74
-#define MT7621_STATS_RCEPC     0x78
-#define MT7621_STATS_RUSPC     0x7C
-#define MT7621_STATS_RFEPC     0x80
-#define MT7621_STATS_ROSPC     0x84
-#define MT7621_STATS_RJEPC     0x88
-#define MT7621_STATS_RPPC      0x8C
-#define MT7621_STATS_RL64PC    0x90
-#define MT7621_STATS_RL65PC    0x94
-#define MT7621_STATS_RL128PC   0x98
-#define MT7621_STATS_RL256PC   0x9C
-#define MT7621_STATS_RL512PC   0xA0
-#define MT7621_STATS_RL1024PC  0xA4
-#define MT7621_STATS_ROC       0xA8
-#define MT7621_STATS_RDPC_CTRL 0xB0
-#define MT7621_STATS_RDPC_ING  0xB4
-#define MT7621_STATS_RDPC_ARL  0xB8
-
 int mt7530_probe(struct device *dev, void __iomem *base, struct mii_bus *bus, int vlan);
 
 #endif
index 2f6fe1724c8c784d9f6b30ab09918da1f210398d..00f1a0e7e6a4ddda1165f25289acb5e6fd97e91f 100644 (file)
@@ -519,14 +519,5 @@ static inline void *priv_netdev(struct fe_priv *priv)
        return (char *)priv - ALIGN(sizeof(struct net_device), NETDEV_ALIGN);
 }
 
-int mtk_ppe_probe(struct fe_priv *eth);
-void mtk_ppe_remove(struct fe_priv *eth);
-int mtk_flow_offload(struct fe_priv *eth,
-                    enum flow_offload_type type,
-                    struct flow_offload *flow,
-                    struct flow_offload_hw_path *src,
-                    struct flow_offload_hw_path *dest);
-int mtk_offload_check_rx(struct fe_priv *eth, struct sk_buff *skb, u32 rxd4);
-
 
 #endif /* FE_ETH_H */
index c4684d02d6671feee76547822e757b2569dedb86..f442d558e1cb0952656e0487fb72f6cd8951fc0d 100644 (file)
 
 #define MT7620A_CDMA_CSG_CFG   0x400
 #define MT7620_DMA_VID         (MT7620A_CDMA_CSG_CFG | 0x30)
-#define MT7621_CDMP_IG_CTRL    (MT7620A_CDMA_CSG_CFG + 0x00)
-#define MT7621_CDMP_EG_CTRL    (MT7620A_CDMA_CSG_CFG + 0x04)
 #define MT7620A_RESET_FE       BIT(21)
-#define MT7621_RESET_FE                BIT(6)
 #define MT7620A_RESET_ESW      BIT(23)
 #define MT7620_L4_VALID                BIT(23)
-#define MT7621_L4_VALID                BIT(24)
 
 #define MT7620_TX_DMA_UDF      BIT(15)
-#define MT7621_TX_DMA_UDF      BIT(19)
 #define TX_DMA_FP_BMAP         ((0xff) << 19)
 
 #define CDMA_ICS_EN            BIT(2)
 #define MT7620_GDM1_TX_GBCNT   (MT7620_REG_MIB_OFFSET + 0x300)
 #define MT7620_GDM2_TX_GBCNT   (MT7620_GDM1_TX_GBCNT + 0x40)
 
-#define MT7621_REG_MIB_OFFSET  0x2000
-#define MT7621_PPE_AC_BCNT0    (MT7621_REG_MIB_OFFSET + 0x00)
-#define MT7621_GDM1_TX_GBCNT   (MT7621_REG_MIB_OFFSET + 0x400)
-#define MT7621_GDM2_TX_GBCNT   (MT7621_GDM1_TX_GBCNT + 0x40)
-
 #define GSW_REG_GDMA1_MAC_ADRL 0x508
 #define GSW_REG_GDMA1_MAC_ADRH 0x50C
 
@@ -68,8 +58,6 @@
  * but after test it should be BIT(13).
  */
 #define MT7620_FE_GDM1_AF      BIT(13)
-#define MT7621_FE_GDM1_AF      BIT(28)
-#define MT7621_FE_GDM2_AF      BIT(29)
 
 static const u16 mt7620_reg_table[FE_REG_COUNT] = {
        [FE_REG_PDMA_GLO_CFG] = RT5350_PDMA_GLO_CFG,