|
@@ -27,7 +27,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
#include <linux/of_mdio.h>
|
|
|
#include <linux/of_net.h>
|
|
|
#include <linux/of_platform.h>
|
|
|
-@@ -602,18 +603,14 @@ mt7530_mib_reset(struct dsa_switch *ds)
|
|
|
+@@ -600,18 +601,14 @@ mt7530_mib_reset(struct dsa_switch *ds)
|
|
|
mt7530_write(priv, MT7530_MIB_CCR, CCR_MIB_ACTIVATE);
|
|
|
}
|
|
|
|
|
@@ -48,7 +48,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
return mdiobus_write_nested(priv->bus, port, regnum, val);
|
|
|
}
|
|
|
|
|
|
-@@ -791,9 +788,8 @@ out:
|
|
|
+@@ -789,9 +786,8 @@ out:
|
|
|
}
|
|
|
|
|
|
static int
|
|
@@ -59,7 +59,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
int devad;
|
|
|
int ret;
|
|
|
|
|
|
-@@ -809,10 +805,9 @@ mt7531_ind_phy_read(struct dsa_switch *d
|
|
|
+@@ -807,10 +803,9 @@ mt7531_ind_phy_read(struct dsa_switch *d
|
|
|
}
|
|
|
|
|
|
static int
|
|
@@ -71,7 +71,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
int devad;
|
|
|
int ret;
|
|
|
|
|
|
-@@ -828,6 +823,22 @@ mt7531_ind_phy_write(struct dsa_switch *
|
|
|
+@@ -826,6 +821,22 @@ mt7531_ind_phy_write(struct dsa_switch *
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
@@ -94,7 +94,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
static void
|
|
|
mt7530_get_strings(struct dsa_switch *ds, int port, u32 stringset,
|
|
|
uint8_t *data)
|
|
|
-@@ -1824,6 +1835,210 @@ mt7530_setup_gpio(struct mt7530_priv *pr
|
|
|
+@@ -1793,6 +1804,210 @@ mt7530_setup_gpio(struct mt7530_priv *pr
|
|
|
return devm_gpiochip_add_data(dev, gc, priv);
|
|
|
}
|
|
|
|
|
@@ -305,7 +305,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
static int
|
|
|
mt7530_setup(struct dsa_switch *ds)
|
|
|
{
|
|
|
-@@ -2798,24 +3013,20 @@ static int
|
|
|
+@@ -2749,24 +2964,20 @@ static int
|
|
|
mt753x_setup(struct dsa_switch *ds)
|
|
|
{
|
|
|
struct mt7530_priv *priv = ds->priv;
|
|
@@ -340,7 +340,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
}
|
|
|
|
|
|
static int mt753x_get_mac_eee(struct dsa_switch *ds, int port,
|
|
|
-@@ -2852,8 +3063,6 @@ static const struct dsa_switch_ops mt753
|
|
|
+@@ -2803,8 +3014,6 @@ static const struct dsa_switch_ops mt753
|
|
|
.get_tag_protocol = mtk_get_tag_protocol,
|
|
|
.setup = mt753x_setup,
|
|
|
.get_strings = mt7530_get_strings,
|
|
@@ -349,7 +349,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
.get_ethtool_stats = mt7530_get_ethtool_stats,
|
|
|
.get_sset_count = mt7530_get_sset_count,
|
|
|
.set_ageing_time = mt7530_set_ageing_time,
|
|
|
-@@ -3036,6 +3245,9 @@ mt7530_remove(struct mdio_device *mdiode
|
|
|
+@@ -2987,6 +3196,9 @@ mt7530_remove(struct mdio_device *mdiode
|
|
|
dev_err(priv->dev, "Failed to disable io pwr: %d\n",
|
|
|
ret);
|
|
|
|
|
@@ -369,7 +369,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
#define MT7530_CPU_PORT 6
|
|
|
#define MT7530_NUM_FDB_RECORDS 2048
|
|
|
#define MT7530_ALL_MEMBERS 0xff
|
|
|
-@@ -401,6 +402,12 @@ enum mt7531_sgmii_force_duplex {
|
|
|
+@@ -392,6 +393,12 @@ enum mt7531_sgmii_force_duplex {
|
|
|
#define SYS_CTRL_SW_RST BIT(1)
|
|
|
#define SYS_CTRL_REG_RST BIT(0)
|
|
|
|
|
@@ -382,7 +382,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
/* Register for PHY Indirect Access Control */
|
|
|
#define MT7531_PHY_IAC 0x701C
|
|
|
#define MT7531_PHY_ACS_ST BIT(31)
|
|
|
-@@ -722,6 +729,8 @@ static const char *p5_intf_modes(unsigne
|
|
|
+@@ -713,6 +720,8 @@ static const char *p5_intf_modes(unsigne
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -391,7 +391,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
/* struct mt753x_info - This is the main data structure for holding the specific
|
|
|
* part for each supported device
|
|
|
* @sw_setup: Holding the handler to a device initialization
|
|
|
-@@ -746,8 +755,8 @@ struct mt753x_info {
|
|
|
+@@ -737,8 +746,8 @@ struct mt753x_info {
|
|
|
enum mt753x_id id;
|
|
|
|
|
|
int (*sw_setup)(struct dsa_switch *ds);
|
|
@@ -402,7 +402,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
int (*pad_setup)(struct dsa_switch *ds, phy_interface_t interface);
|
|
|
int (*cpu_port_config)(struct dsa_switch *ds, int port);
|
|
|
bool (*phy_mode_supported)(struct dsa_switch *ds, int port,
|
|
|
-@@ -781,6 +790,10 @@ struct mt753x_info {
|
|
|
+@@ -772,6 +781,10 @@ struct mt753x_info {
|
|
|
* registers
|
|
|
* @p6_interface Holding the current port 6 interface
|
|
|
* @p5_intf_sel: Holding the current port 5 interface select
|
|
@@ -413,7 +413,7 @@ Signed-off-by: David S. Miller <[email protected]>
|
|
|
*/
|
|
|
struct mt7530_priv {
|
|
|
struct device *dev;
|
|
|
-@@ -802,6 +815,9 @@ struct mt7530_priv {
|
|
|
+@@ -793,6 +806,9 @@ struct mt7530_priv {
|
|
|
struct mt7530_port ports[MT7530_NUM_PORTS];
|
|
|
/* protect among processes for registers access*/
|
|
|
struct mutex reg_mutex;
|