Commit aa906126 authored by Russell King (Oracle)'s avatar Russell King (Oracle) Committed by Jakub Kicinski
Browse files

net: stmmac: pass struct stmmac_priv to host_irq_status() method



Rather than passing struct mac_device_info to the host_irq_status()
method, pass struct stmmac_priv so that we can pass the integrated
PCS to the PCS interrupt handler.

Signed-off-by: default avatarRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link: https://patch.msgid.link/E1vevHr-00000002YoY-2X2i@rmk-PC.armlinux.org.uk


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 879070eb
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -265,10 +265,10 @@ static void dwmac1000_pmt(struct mac_device_info *hw, unsigned long mode)
	writel(pmt, ioaddr + GMAC_PMT);
}

static int dwmac1000_irq_status(struct mac_device_info *hw,
static int dwmac1000_irq_status(struct stmmac_priv *priv,
				struct stmmac_extra_stats *x)
{
	void __iomem *ioaddr = hw->pcsr;
	void __iomem *ioaddr = priv->hw->pcsr;
	u32 intr_status = readl(ioaddr + GMAC_INT_STATUS);
	u32 intr_mask = readl(ioaddr + GMAC_INT_MASK);
	int ret = 0;
+1 −1
Original line number Diff line number Diff line
@@ -53,7 +53,7 @@ static int dwmac100_rx_ipc_enable(struct mac_device_info *hw)
	return 0;
}

static int dwmac100_irq_status(struct mac_device_info *hw,
static int dwmac100_irq_status(struct stmmac_priv *priv,
			       struct stmmac_extra_stats *x)
{
	return 0;
+2 −2
Original line number Diff line number Diff line
@@ -615,10 +615,10 @@ static int dwmac4_irq_mtl_status(struct stmmac_priv *priv,
	return ret;
}

static int dwmac4_irq_status(struct mac_device_info *hw,
static int dwmac4_irq_status(struct stmmac_priv *priv,
			     struct stmmac_extra_stats *x)
{
	void __iomem *ioaddr = hw->pcsr;
	void __iomem *ioaddr = priv->hw->pcsr;
	u32 intr_status = readl(ioaddr + GMAC_INT_STATUS);
	u32 intr_enable = readl(ioaddr + GMAC_INT_EN);
	int ret = 0;
+2 −2
Original line number Diff line number Diff line
@@ -298,10 +298,10 @@ static void dwxgmac2_dump_regs(struct mac_device_info *hw, u32 *reg_space)
		reg_space[i] = readl(ioaddr + i * 4);
}

static int dwxgmac2_host_irq_status(struct mac_device_info *hw,
static int dwxgmac2_host_irq_status(struct stmmac_priv *priv,
				    struct stmmac_extra_stats *x)
{
	void __iomem *ioaddr = hw->pcsr;
	void __iomem *ioaddr = priv->hw->pcsr;
	u32 stat, en;
	int ret = 0;

+2 −2
Original line number Diff line number Diff line
@@ -354,7 +354,7 @@ struct stmmac_ops {
	/* Dump MAC registers */
	void (*dump_regs)(struct mac_device_info *hw, u32 *reg_space);
	/* Handle extra events on specific interrupts hw dependent */
	int (*host_irq_status)(struct mac_device_info *hw,
	int (*host_irq_status)(struct stmmac_priv *priv,
			       struct stmmac_extra_stats *x);
	/* Handle MTL interrupts */
	int (*host_mtl_irq_status)(struct stmmac_priv *priv,
@@ -453,7 +453,7 @@ struct stmmac_ops {
#define stmmac_dump_mac_regs(__priv, __args...) \
	stmmac_do_void_callback(__priv, mac, dump_regs, __args)
#define stmmac_host_irq_status(__priv, __args...) \
	stmmac_do_callback(__priv, mac, host_irq_status, __args)
	stmmac_do_callback(__priv, mac, host_irq_status, __priv, __args)
#define stmmac_host_mtl_irq_status(__priv, __args...) \
	stmmac_do_callback(__priv, mac, host_mtl_irq_status, __priv, __args)
#define stmmac_set_filter(__priv, __args...) \
Loading