Other Parts Discussed in Thread: DP83869
Hi, I found a strange situation to configure DP83869.
I used DP83869 as a 1000M media converter and configure operation mode by MCU. I need the PHY works as soon as possible. So I configure it right after MCU is up. But I found the operation mode is not modified by MCU and is still the mode set by straps. Operation mode can be configured correctly if I wait a few time after power-up.
I test many times and found that the operation mode can not be configured successfully if I configure the PHY when time is less than 150ms from power-up. It will be successful randomly if time delayed to 200ms and will work if time delayed more than 300ms.
The initialization routine is very simple as follows.
InitialGPIO();
delay_ms(300); // Config DID NOT success if delay time is less 200, why?
InitialPHY(2); // pull reset pin for PHY low about 2ms
void InitialPHY(uint rstTime)
{
uintx i;
RSTOUTLOW; //reset PHY
delay_ms(rstTime);
RSTOUTHIGH;
delay_ms(15);
InitialPHY(MediaConverterPHYAddr,MediaConverter1000Base); //Media Converter
}
So, Would you please to check if it is MUST to wait some times to configure DP83869? Thanks.