[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <46ffe0a3-f870-431d-aff3-69ccb0c93615@loongson.cn>
Date: Mon, 18 Dec 2023 18:09:46 +0800
From: Yanteng Si <siyanteng@...ngson.cn>
To: Andrew Lunn <andrew@...n.ch>
Cc: hkallweit1@...il.com, peppe.cavallaro@...com,
alexandre.torgue@...s.st.com, joabreu@...opsys.com, fancer.lancer@...il.com,
Jose.Abreu@...opsys.com, chenhuacai@...ngson.cn, linux@...linux.org.uk,
guyinggang@...ngson.cn, netdev@...r.kernel.org, loongarch@...ts.linux.dev,
chris.chenfeiyang@...il.com
Subject: Re: [PATCH v6 1/9] net: stmmac: Pass stmmac_priv and chan in some
callbacks
在 2023/12/16 21:01, Andrew Lunn 写道:
>> -static void sun8i_dwmac_enable_dma_transmission(void __iomem *ioaddr)
>> +static void sun8i_dwmac_enable_dma_transmission(void __iomem *ioaddr, u32 chan)
>
>>
>> - stmmac_enable_dma_transmission(priv, priv->ioaddr);
>> + stmmac_enable_dma_transmission(priv, priv->ioaddr, queue);
> As i've said a few times, i don't know this driver.
>
> Is it a queue or is it a chan? Is this change consistent with the
> reset of the code base?
It is a chan, but there is only queue here. so we refer to dwmac4:
static void dwmac4_rx_watchdog(struct stmmac_priv *priv, void __iomem
*ioaddr,
u32 riwt, u32 queue)
{
const struct dwmac4_addrs *dwmac4_addrs = priv->plat->dwmac4_addrs;
writel(riwt, ioaddr + DMA_CHAN_RX_WATCHDOG(dwmac4_addrs, queue));
}
---------------------------------------------------------------------------------
@@ -271,12 +299,13 @@ static int dwmac1000_get_hw_feature(void __iomem
*ioaddr,
static void dwmac1000_rx_watchdog(struct stmmac_priv *priv,
void __iomem *ioaddr, u32 riwt, u32 queue)
{
- writel(riwt, ioaddr + DMA_RX_WATCHDOG);
+ writel(riwt, ioaddr + DMA_CHAN_RX_WATCHDOG(queue));
}
We also use queue instead of chan.
Thanks,
Yanteng
> Andrew
Powered by blists - more mailing lists