lkml.org 
[lkml]   [2018]   [Oct]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 4.9 11/38] net: macb: Clean 64b dma addresses if they are not detected
    Date
    From: Michal Simek <michal.simek@xilinx.com>

    [ Upstream commit e1e5d8a9fe737d94ccc0ccbaf0c97f69a8f3e000 ]

    Clear ADDR64 dma bit in DMACFG register in case that HW_DMA_CAP_64B is
    not detected on 64bit system.
    The issue was observed when bootloader(u-boot) does not check macb
    feature at DCFG6 register (DAW64_OFFSET) and enabling 64bit dma support
    by default. Then macb driver is reading DMACFG register back and only
    adding 64bit dma configuration but not cleaning it out.

    Signed-off-by: Michal Simek <michal.simek@xilinx.com>
    Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/net/ethernet/cadence/macb.c | 1 +
    1 file changed, 1 insertion(+)

    diff --git a/drivers/net/ethernet/cadence/macb.c b/drivers/net/ethernet/cadence/macb.c
    index 2e1585635083..515b53ef39ed 100644
    --- a/drivers/net/ethernet/cadence/macb.c
    +++ b/drivers/net/ethernet/cadence/macb.c
    @@ -1737,6 +1737,7 @@ static void macb_configure_dma(struct macb *bp)
    else
    dmacfg &= ~GEM_BIT(TXCOEN);

    + dmacfg &= ~GEM_BIT(ADDR64);
    #ifdef CONFIG_ARCH_DMA_ADDR_T_64BIT
    dmacfg |= GEM_BIT(ADDR64);
    #endif
    --
    2.17.1
    \
     
     \ /
      Last update: 2018-10-16 06:23    [W:2.946 / U:1.444 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site