Other Parts Discussed in Thread: DP83867CR, , DP83867IS, MSP-EXP430F5529LP
Tool/software: Linux
Hello. I'm Paul.
I'm trying to implement Wake On Lan(WOL) on DP83867CR(RGZ 48pin).
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<My goal>
- If DP83867CR(RGZ 48pin) on my custom board receives a magic packet, then GPIO0 or GPIO1 pin on DP83867CR(RGZ) generates signal.
(First, I want to mesuare CRS_GPIO_CTRL or COL_GPIO_CTRL or RX_ER_GPIO_CTRL pins on DP83867IRPAP-EVM(64pin).
Second, I want to apply identical settings to DP83867CR(RGZ 48pin) on my custom board)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
I found very similar informations.(DP83867IS: DP83867 - WoL interrupt on pattern match[e2e.ti.com/.../2187213])
(DP83822 Wake-On-LAN Application Report[www.ti.com/.../snla261.pdf]).
I tried to follow this informations, but I didn't succeed. So, I ask for help. (I have asked my Field Applications Engineer for help for several months. But He couldn't find solutions.)
I have both DP83867CR(RGZ 48pin) on my custom board and DP83867IRPAP-EVM(64pin). (I think if I use DP83867IRPAP-EVM, then I can get help more easily than my custom board.)
I describe what I have tried.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<Using Board>
- DP83867IRPAP-EVM, MSP-EXP430F5529LP(To write & read DP83867 registers)
<Setting Register>
- addr(0x000d) : 0x001f // Register Control Register(REGCR), DEAV, [0000 0000 0001 1111]
- addr(0x0012) : 0x0008 // MII Interrupt Control Register(MICR), WOL_INT_EN, [0000 0000 0000 1000]
- addr(0x0134) : 0x0407 // Receive Configuration Register(RXFCFG), WOL_OUT_STRETCH(32_clock_cycles) | WAKE_ON_BCAST | WAKE_ON_PATTERN | WAKE_ON_MAGIC, [0000 0100 0000 0111]
- addr(0x0136) : 0xebe8 // Pattern Match Data Register1(RXFPMD1)
- addr(0x0137) : 0xd111 // Pattern Match Data Register2(RXFPMD2)
- addr(0x0138) : 0xbe5e // Pattern Match Data Register3(RXFPMD3)
→ I undertand if I set Mac Address : E8-EB-11-D1-5E-BE, then I can send magic packet this mac address from PC.
- addr(0x0172) : 0x0333 // GPIO Mux Control Register2(GPIO_MUX_CTRL2), CRS_GPIO_CTRL(WOL) | COL_GPIO_CTRL(WOL) | RX_ER_GPIO_CTRL(WOL), [0000 0011 0011 0011]
→ I set this register to measure CRS_GPIO_CTRL or COL_GPIO_CTRL or RX_ER_GPIO_CTRL pins
<Test Result>
- I couldn't measure any signal changed on CRS_GPIO_CTRL or COL_GPIO_CTRL or RX_ER_GPIO_CTRL pins.
- I tried to read status register(0x0135) to received magic packet properly. But, MAGIC_RCVD(BIT0) and PATTERN_RCVD(BIT1) register are 0.(I don't know why it can't receive magic packet.)
<Questions>
- Please, could you help me implement properly?
- WOL programs have IP address input which users have to write. I know that magic packet includes mac address without IP address. Why do WOL programs need IP address?
If IP address is needed, how do I test DP83867IRPAP-EVM(I know that phy evm board doen't have IP address)?
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Thanks,
Paul.