Part Number: DP83869HM
Other Parts Discussed in Thread: DP83869
I used DP83869 as a 1000M media-converter, and I need configure it as master or slave manually. But it did not works as what I wanted. The device state as a master or slave seems random.
The connection is as follows:
Master equipemt -->twisted-pair cable -->1st DP83869 media converter-->fiber -->2nd DP83869 media converter-->twisted-pair cable-->slave equipemt.
The 1st converter should works as a slave, and the 2nd one should be a master.
The strap pins are configured as follows:
Fiber forced and Copper : Auto Negotiation ( 1000 Advertised), Auto MDIX, i.e that pin[45:47] are pulled up with resistors. I tried to left pin 47 float to enable fiber auto-negotiation. But the fiber can not establish link. The value of reg[0xC1] is 0x6149.
I wrote reg[9] of the two converters with value 0x1200 and 0x1A00 respectively, then reset PHY with reg[0]=0x9140. After that, I read reg[0x0A], the return value would be 0x3800 or 0x7800 randomly. And the value of reg[0x09] returns 0x300, the default value. It did not say clearly if I should reset PHY in the datasheet. In general, It should be reset. But the reg[0x09] remains the value I wrote in if I didn't reset the PHY after the write.
It did not establish a link(reg[0x01]=0x7949) if I disable auto-negotiation(reg[0x00] = 0x0140).
Now I need to make clear:
(1) Do I need to reset PHY when I modify some bits of register, for example, the bit[12] of reg[0x09]?
(2) Why tihe link can not be up when fiber auto-negotiation enbaled?
(3) How can I force the device to work as slave or master?
And another question, the default value of bit[6] of reg[0x01] is 1, PHY will accept management frames with preamble suppressed. But It returns 0xFFFF when I read a registers if I did not write preamble before reading.