Intel IXF1104 Computer Hardware User Manual


 
Intel
®
IXF1104 4-Port Gigabit Ethernet Media Access Controller
Datasheet 130
Document Number: 278757
Revision Number: 009
Revision Date: 27-Oct-2005
6.0 Applications
6.1 Change Port Mode Initialization Sequence
Use the change port mode initialization sequence after power-up and anytime a port is configured
into or switching between fiber or copper mode, switching to/from RGMII and GMII modes, or
switching speeds and duplex in RGMII mode.
The following sequence applies to all four ports and can be done simultaneously for all ports or as
a subset of the ports.
1. Place the MAC in reset for the port(s) which require a change by asserting (set to 1) the “MAC
Soft Reset ($0x505)”.
2. Place the TX FIFO in reset for the port(s) which require a change by asserting (set to 1) the
“TX FIFO Port Reset ($0x620)”.
3. Disable the port(s) which require change by de-asserting (set to 0) the appropriate bits in the
“Port Enable ($0x500)”.
4. Wait 1 μs.
5. De-assert (set to 0) “Clock and Interface Mode Change Enable Ports 0 - 3 ($0x794)” for the
ports being changed.
6. Set the speed, mode, and duplex as follows for the ports being changed:
a. Copper mode:
Select copper mode for the “Interface Mode ($0x501)” ports.
Set the per-port “MAC IF Mode and RGMII Speed ($ Port_Index + 0x10)” to the
appropriate speed and RGMII/GMII interface setting.
Set the per-port “Desired Duplex ($ Port_Index + 0x02)”.
Note: Half-duplex is supported only when RGMII 10 Mbps or 100 Mbps is selected in the
“MAC IF Mode and RGMII Speed ($ Port_Index + 0x10)”.
b. Fiber mode:
Select fiber mode by setting the appropriate bit to 0 in the “Interface Mode ($0x501)”
ports.
7. Assert (set to 1) “Clock and Interface Mode Change Enable Ports 0 - 3 ($0x794)” for the ports
being changed.
8. Wait 1 μs.
9. De-assert (set to 0) “MAC Soft Reset ($0x505)” for the ports being changed.
10. De-assert (set to 0) “TX FIFO Port Reset ($0x620)” for the ports being changed.
11. Wait 1 to 2 μs.
12. Set the “Diverse Config Write ($ Port_Index + 0x18)” to the appropriate value as follows:
a. Copper mode:
Write the reserved bits to the default value.