diff options
author | Marek Vasut <marex@denx.de> | 2025-01-16 05:03:24 +0100 |
---|---|---|
committer | Fabio Estevam <festevam@gmail.com> | 2025-01-20 08:40:39 -0300 |
commit | f0faa5a0de89e978a3a76a9c9e2e1e2b2dd74139 (patch) | |
tree | 19101599bfa395ad4ea604c5b14674611aa7d793 /drivers/net/fsl_enetc.c | |
parent | 4eb5ef73a9565a78dd2a18d0ff4576701bedf872 (diff) |
net: fsl_enetc: Inline register accessors
Move register accessors from header files and turn them into proper
inline functions, so typechecking can be done on them. Drop no longer
enetc_port_regs() and unused enetc_read() and enetc_bdr_read().
Signed-off-by: Marek Vasut <marex@denx.de>
Diffstat (limited to 'drivers/net/fsl_enetc.c')
-rw-r--r-- | drivers/net/fsl_enetc.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/drivers/net/fsl_enetc.c b/drivers/net/fsl_enetc.c index e6f5ca633aa..ace1069efd9 100644 --- a/drivers/net/fsl_enetc.c +++ b/drivers/net/fsl_enetc.c @@ -40,6 +40,40 @@ static int enetc_dev_id(struct udevice *dev) return 0; } +/* register accessors */ +static u32 enetc_read_reg(void __iomem *addr) +{ + return readl(addr); +} + +static void enetc_write_reg(void __iomem *addr, u32 val) +{ + writel(val, addr); +} + +static void enetc_write(struct enetc_priv *priv, u32 off, u32 val) +{ + enetc_write_reg(priv->regs_base + off, val); +} + +/* port register accessors */ +static u32 enetc_read_port(struct enetc_priv *priv, u32 off) +{ + return enetc_read_reg(priv->port_regs + off); +} + +static void enetc_write_port(struct enetc_priv *priv, u32 off, u32 val) +{ + enetc_write_reg(priv->port_regs + off, val); +} + +/* BDR register accessor, see also ENETC_BDR() */ +static void enetc_bdr_write(struct enetc_priv *priv, int type, int n, + u32 off, u32 val) +{ + enetc_write(priv, ENETC_BDR(type, n, off), val); +} + /* * sets the MAC address in IERB registers, this setting is persistent and * carried over to Linux. |