History log of /barrelfish-master/devices/e1000.dev
Revision Date Author Comments
# 9bd8d1d5 03-Apr-2019 Reto Achermann <reto.achermann@inf.ethz.ch>

replacing umlaute and fixing address in headers Haldeneggsteig -> Universitaetsstrasse

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# 584d4472 06-Oct-2017 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Getting the 82574 to trigger MSIxs...

The msix controller gets instantiated in the card, it gets
the correct message. The card is being set up to use MSIx.
But something is not working yet...

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 293bd541 06-Jun-2017 Adam Turowski <adam.turowski@inf.ethz.ch>

devif: e1000 backend initial version

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# 7852ff04 14-Oct-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

T308: Improve support for Intel 82574 gbe network cards

It turns out the card is too similiar to give it an extra driver, remove
the e1000e binary and improve e1000n instead. e1000n needs refactoring.
The driver does not hang on hw reset (on the 82574) and the interrupt
handling is correct enough to let irqtest pass (with legacy interrupts).

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 0970b862 25-Aug-2014 Reto Achermann <acreto@student.ethz.ch>

e1000: adding final extensions for the I350 support.


# 16168a49 24-Aug-2014 Reto Achermann <acreto@student.ethz.ch>

Added new registers for the I350 to the e1000.dev file


# 690dd152 22-May-2013 Gerd Zellweger <mail@gerdzellweger.com>

Write Interrupt interval in extended register for 82575 cards.


# 92aa81b6 24-May-2013 Gerd Zellweger <mail@gerdzellweger.com>

Use different rxdctl register for 82575 cards.


# cb3e3abe 23-May-2013 Gerd Zellweger <mail@gerdzellweger.com>

Added another version for the txdctl register for the 82575 cards.

This is especially important because the new cards have the enable bit inside this register to enable/disable queues.
The code for the older cards set this bit to 0, therefore disabling the transmit queue.


# 40f20c4e 22-May-2013 Gerd Zellweger <mail@gerdzellweger.com>

Fixed false register name in e1000 mackerel file (was bst, now cold) and adjusted the function call in the C code.


# dbed7c53 14-May-2013 Mateusz Olczak <mateusz@olczak.se>

I've finished the work on the e1000 driver. All previous out standing issues have now been resolved.

* e1000 driver now works under Qemu, Simics and VirtualBox.
* Extended the number of supported NICs.
* Moved the e1000 driver to Mackerel 2 interface.
* e1000n_hwinit.c:
* e1000 driver now takes in consideration what card you have. Handles different cards more correctly.
* EEPROM: Extended the set of cards where eeprom reads are handled correctly for that card.
* Extended this set of supported cards.
* Checking that EEPROM read is done.
* Bailout and inform if EEPROM is not present.
* New read MAC address code.
* New card reset code.
* MAC address: Was not programmed correctly.
* Setting serial interface correctly for more cards. (previously same setting was made for all cards.)
* Link auto-negotiation. (previously link type and speed was forced disregarding if it was supported by media)
* Correctly setting hardware supported receive buffer size.
* Setting Transmit Inter Packet Gap (TIPG) correctly for more cards.
* Setting Interrupt Throttling to recommended values.
* e1000.dev: added register and updated various registers.
* e1000n.c: Removed uncommented code.
* Renamed some variables and function to make clear what they do.
* Added #ifdefine for parts that wore commented out but marked as "useful" for some purpose, such as CONFIG_MICROBENCHMARKS.
* Added probing for card type.
* Added help option.
* Added comments/documentation.
* Print of detected link speed and type.
* Updated printing of debug messages and ordinary messages.
* Fixed wrong max packet receive length for ethernet. (previous value was the max transmit size - They differ due to CRC)
* Other bug fixes minor.


# 9299dcef 08-Jul-2011 Stefan Kästle <stefan.kaestle@inf.ethz.ch>

Initial version of public stable barrelfish repository.