Commit 99acfa82 authored by Arınç ÜNAL's avatar Arınç ÜNAL Committed by David S. Miller

net: dsa: mt7530: refactor MT7530_PMEEECR_P()

The MT7530_PMEEECR_P() register is on MT7530, MT7531, and the switch on the
MT7988 SoC. Rename the definition for them to MT753X_PMEEECR_P(). Use the
FIELD_PREP and FIELD_GET macros. Rename GET_LPI_THRESH() and
SET_LPI_THRESH() to LPI_THRESH_GET() and LPI_THRESH_SET().
Signed-off-by: default avatarArınç ÜNAL <arinc.unal@arinc9.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 379f7bf8
...@@ -3051,10 +3051,10 @@ static int mt753x_get_mac_eee(struct dsa_switch *ds, int port, ...@@ -3051,10 +3051,10 @@ static int mt753x_get_mac_eee(struct dsa_switch *ds, int port,
struct ethtool_keee *e) struct ethtool_keee *e)
{ {
struct mt7530_priv *priv = ds->priv; struct mt7530_priv *priv = ds->priv;
u32 eeecr = mt7530_read(priv, MT7530_PMEEECR_P(port)); u32 eeecr = mt7530_read(priv, MT753X_PMEEECR_P(port));
e->tx_lpi_enabled = !(eeecr & LPI_MODE_EN); e->tx_lpi_enabled = !(eeecr & LPI_MODE_EN);
e->tx_lpi_timer = GET_LPI_THRESH(eeecr); e->tx_lpi_timer = LPI_THRESH_GET(eeecr);
return 0; return 0;
} }
...@@ -3068,11 +3068,11 @@ static int mt753x_set_mac_eee(struct dsa_switch *ds, int port, ...@@ -3068,11 +3068,11 @@ static int mt753x_set_mac_eee(struct dsa_switch *ds, int port,
if (e->tx_lpi_timer > 0xFFF) if (e->tx_lpi_timer > 0xFFF)
return -EINVAL; return -EINVAL;
set = SET_LPI_THRESH(e->tx_lpi_timer); set = LPI_THRESH_SET(e->tx_lpi_timer);
if (!e->tx_lpi_enabled) if (!e->tx_lpi_enabled)
/* Force LPI Mode without a delay */ /* Force LPI Mode without a delay */
set |= LPI_MODE_EN; set |= LPI_MODE_EN;
mt7530_rmw(priv, MT7530_PMEEECR_P(port), mask, set); mt7530_rmw(priv, MT753X_PMEEECR_P(port), mask, set);
return 0; return 0;
} }
......
...@@ -364,13 +364,14 @@ enum mt7530_vlan_port_acc_frm { ...@@ -364,13 +364,14 @@ enum mt7530_vlan_port_acc_frm {
PMCR_FORCE_SPEED_100 | \ PMCR_FORCE_SPEED_100 | \
PMCR_FORCE_FDX | PMCR_FORCE_LNK) PMCR_FORCE_FDX | PMCR_FORCE_LNK)
#define MT7530_PMEEECR_P(x) (0x3004 + (x) * 0x100) #define MT753X_PMEEECR_P(x) (0x3004 + (x) * 0x100)
#define WAKEUP_TIME_1000(x) (((x) & 0xFF) << 24) #define WAKEUP_TIME_1000_MASK GENMASK(31, 24)
#define WAKEUP_TIME_100(x) (((x) & 0xFF) << 16) #define WAKEUP_TIME_1000(x) FIELD_PREP(WAKEUP_TIME_1000_MASK, x)
#define WAKEUP_TIME_100_MASK GENMASK(23, 16)
#define WAKEUP_TIME_100(x) FIELD_PREP(WAKEUP_TIME_100_MASK, x)
#define LPI_THRESH_MASK GENMASK(15, 4) #define LPI_THRESH_MASK GENMASK(15, 4)
#define LPI_THRESH_SHT 4 #define LPI_THRESH_GET(x) FIELD_GET(LPI_THRESH_MASK, x)
#define SET_LPI_THRESH(x) (((x) << LPI_THRESH_SHT) & LPI_THRESH_MASK) #define LPI_THRESH_SET(x) FIELD_PREP(LPI_THRESH_MASK, x)
#define GET_LPI_THRESH(x) (((x) & LPI_THRESH_MASK) >> LPI_THRESH_SHT)
#define LPI_MODE_EN BIT(0) #define LPI_MODE_EN BIT(0)
#define MT7530_PMSR_P(x) (0x3008 + (x) * 0x100) #define MT7530_PMSR_P(x) (0x3008 + (x) * 0x100)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment