amd-xgbe: Prepare for more fine grained cache coherency controls
In prep for setting fine grained read and write DMA cache coherency controls, allow specific values to be used to set the cache coherency registers. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
f00ba49d8e
commit
9916716a1b
@@ -2146,27 +2146,8 @@ static void xgbe_config_dma_bus(struct xgbe_prv_data *pdata)
|
||||
|
||||
static void xgbe_config_dma_cache(struct xgbe_prv_data *pdata)
|
||||
{
|
||||
unsigned int arcache, awcache;
|
||||
|
||||
arcache = 0;
|
||||
XGMAC_SET_BITS(arcache, DMA_AXIARCR, DRC, pdata->arcache);
|
||||
XGMAC_SET_BITS(arcache, DMA_AXIARCR, DRD, pdata->axdomain);
|
||||
XGMAC_SET_BITS(arcache, DMA_AXIARCR, TEC, pdata->arcache);
|
||||
XGMAC_SET_BITS(arcache, DMA_AXIARCR, TED, pdata->axdomain);
|
||||
XGMAC_SET_BITS(arcache, DMA_AXIARCR, THC, pdata->arcache);
|
||||
XGMAC_SET_BITS(arcache, DMA_AXIARCR, THD, pdata->axdomain);
|
||||
XGMAC_IOWRITE(pdata, DMA_AXIARCR, arcache);
|
||||
|
||||
awcache = 0;
|
||||
XGMAC_SET_BITS(awcache, DMA_AXIAWCR, DWC, pdata->awcache);
|
||||
XGMAC_SET_BITS(awcache, DMA_AXIAWCR, DWD, pdata->axdomain);
|
||||
XGMAC_SET_BITS(awcache, DMA_AXIAWCR, RPC, pdata->awcache);
|
||||
XGMAC_SET_BITS(awcache, DMA_AXIAWCR, RPD, pdata->axdomain);
|
||||
XGMAC_SET_BITS(awcache, DMA_AXIAWCR, RHC, pdata->awcache);
|
||||
XGMAC_SET_BITS(awcache, DMA_AXIAWCR, RHD, pdata->axdomain);
|
||||
XGMAC_SET_BITS(awcache, DMA_AXIAWCR, TDC, pdata->awcache);
|
||||
XGMAC_SET_BITS(awcache, DMA_AXIAWCR, TDD, pdata->axdomain);
|
||||
XGMAC_IOWRITE(pdata, DMA_AXIAWCR, awcache);
|
||||
XGMAC_IOWRITE(pdata, DMA_AXIARCR, pdata->arcr);
|
||||
XGMAC_IOWRITE(pdata, DMA_AXIAWCR, pdata->awcr);
|
||||
}
|
||||
|
||||
static void xgbe_config_mtl_mode(struct xgbe_prv_data *pdata)
|
||||
|
Reference in New Issue
Block a user