From: Joachim Foerster Date: Mon, 17 Oct 2011 05:24:43 +0000 (+0000) Subject: altera_tse: Fix SGDMA reset triggering X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=29095f1a5cfdbc2e40178f6fbf9267e0df11f6f5;p=project%2Fbcm63xx%2Fu-boot.git altera_tse: Fix SGDMA reset triggering The SW_RESET needs to be set instead of being masked out! Signed-off-by: Joachim Foerster --- diff --git a/drivers/net/altera_tse.c b/drivers/net/altera_tse.c index 47d0047fd6..47b57616d9 100644 --- a/drivers/net/altera_tse.c +++ b/drivers/net/altera_tse.c @@ -357,8 +357,8 @@ static void tse_eth_reset(struct eth_device *dev) if (counter >= ALT_TSE_SGDMA_BUSY_WATCHDOG_CNTR) { debug("Timeout waiting for rx sgdma!\n"); - rx_sgdma->control &= ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; - rx_sgdma->control &= ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; + rx_sgdma->control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; + rx_sgdma->control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; } counter = 0; @@ -370,8 +370,8 @@ static void tse_eth_reset(struct eth_device *dev) if (counter >= ALT_TSE_SGDMA_BUSY_WATCHDOG_CNTR) { debug("Timeout waiting for tx sgdma!\n"); - tx_sgdma->control &= ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; - tx_sgdma->control &= ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; + tx_sgdma->control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; + tx_sgdma->control = ALT_SGDMA_CONTROL_SOFTWARERESET_MSK; } /* reset the mac */ mac_dev->command_config.bits.transmit_enable = 1;