English
Language : 

82598EB Datasheet, PDF (132/596 Pages) Intel Corporation – Intel® 82598EB 10 Gigabit Ethernet Controller Datasheet
Intel® 82598EB 10 GbE Controller - Software Initialization and Diagnostics
4. The BIOS drives the LANx_DIS_N signals to the low level.
5. BIOS issues PE_RST_N or an In-Band PCIe reset.
6. As a result, the 82598 samples the LANx_DIS_N signals, disables the LAN ports, and the PCIe
connection.
7. Re-enabling could be done by driving at least one of the LANx_DIS_N signals high and then issue a
PE_RST_N to restart the 82598.
3.2.3 Software Initialization and Diagnostics
This section discusses general software notes for the 82598, especially initialization steps. This includes
general hardware power-up state, basic device configuration, initialization of transmit and receive
operation, link configuration, software reset capability, statistics, and diagnostic hints.
3.2.3.1 Power Up State
When the 82598 powers up, it automatically reads the EEPROM. The EEPROM contains sufficient
information to bring the link up and configure the 82598 for manageability and/or APM wake up.
However, software initialization is required for normal operation.
3.2.3.2 Initialization Sequence
The following sequence of commands is typically issued to the 82598 by the software device driver in
order to initialize the 82598 for normal operation. The major initialization steps are:
1. Disable interrupts.
2. Issue a global reset and perform general configuration.
3. Wait for the EEPROM auto read to complete.
4. Wait for a manageability configuration done indication (EEMNGCTL.CFG_DONE).
5. Wait for a DMA init done (RDRXCTL.DMAIDONE)
6. Setup the PHY and the link.
7. Initialize all statistical counters.
8. Initialize receive.
9. Initialize transmit.
10. Enable interrupts.
3.2.3.2.1 Disabling Interrupts During Initialization
Most drivers disable interrupts during initialization to prevent re-entrancy. Interrupts are disabled by
writing to the EIMC register. Note that the interrupts need to also be disabled after issuing a global
reset, so a typical driver initialization flow is:
• Disable interrupts
• Issue a global reset
• Disable interrupts (again)
After the initialization completes, a typical driver enables the desired interrupts by writing to the IMS
register.
132