cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F107 - Ethernet, can't restart DMA

adi-mistrzu
Associate
Posted on April 12, 2015 at 20:30

Hi,

I tring to turn on ethernet on my board, but I stuck on problem with ETH DMA.

ETH->DMABMR = ETH_DMABMR_SR;

 

while (ETH->DMABMR & ETH_DMABMR_SR);

Above the line is reseting DMA, but it's never ending and I don't know why. In datasheet we have:

When this bit is set, the MAC DMA controller resets all MAC Subsystem internal registers and logic. It is cleared automatically after the reset operation has completed in all of the core clock domains. Read a 0 value in this bit before re-programming any register of the core.

I connected clock source to eth, I can comunication with PHY via ETH_MACMIIDR register, but I can't complete initialization of eth .

Where it's can be my mistake?

#dma #ethernet #stm32f107
1 REPLY 1
balazs
Associate II
Posted on September 21, 2015 at 00:09

Hi ADI,

Have you been able to resolve the issue you described?

I'm having exactly the same problem - could not reset the MAC subsystem. When I write in the reset bit, nothing happens, and the while cycle is running forever in the HAL driver.

Thanks,

Balas