提交 783e7856 编写于 作者: S Stefan Chulski 提交者: Stefan Roese

net: mvpp2x: Set BM pool high address

MVPP22 driver support 64 Bit arch and require BM pool
high address configuration.
Signed-off-by: NStefan Chulski <stefanc@marvell.com>
Tested-by: NiSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: NNadav Haklai <nadavh@marvell.com>
Reviewed-by: NIgal Liberman <igall@marvell.com>
Acked-by: NJoe Hershberger <joe.hershberger@ni.com>
Signed-off-by: NStefan Roese <sr@denx.de>
上级 16f18d2a
......@@ -316,6 +316,8 @@ do { \
#define MVPP22_BM_ADDR_HIGH_VIRT_RLS_MASK 0xff00
#define MVPP22_BM_ADDR_HIGH_VIRT_RLS_SHIFT 8
#define MVPP22_BM_MC_RLS_REG 0x64d4
#define MVPP22_BM_POOL_BASE_HIGH_REG 0x6310
#define MVPP22_BM_POOL_BASE_HIGH_MASK 0xff
/* TX Scheduler registers */
#define MVPP2_TXP_SCHED_PORT_INDEX_REG 0x8000
......@@ -2594,6 +2596,10 @@ static int mvpp2_bm_pool_create(struct udevice *dev,
mvpp2_write(priv, MVPP2_BM_POOL_BASE_REG(bm_pool->id),
lower_32_bits(bm_pool->dma_addr));
if (priv->hw_version == MVPP22)
mvpp2_write(priv, MVPP22_BM_POOL_BASE_HIGH_REG,
(upper_32_bits(bm_pool->dma_addr) &
MVPP22_BM_POOL_BASE_HIGH_MASK));
mvpp2_write(priv, MVPP2_BM_POOL_SIZE_REG(bm_pool->id), size);
val = mvpp2_read(priv, MVPP2_BM_POOL_CTRL_REG(bm_pool->id));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册