| Zeile 20: | Zeile 20: | ||
#define RTL8168_TXCONFIG 0x40 // Tx config | #define RTL8168_TXCONFIG 0x40 // Tx config | ||
#define RTL8168_RXCONFIG 0x44 // Rx config | #define RTL8168_RXCONFIG 0x44 // Rx config | ||
| − | |||
#define RTL8168_RPS 0xDA // Max Receive Packet Size | #define RTL8168_RPS 0xDA // Max Receive Packet Size | ||
#define RTL8168_ETTHR 0xEC // Early transmit threshold | #define RTL8168_ETTHR 0xEC // Early transmit threshold | ||
| Zeile 57: | Zeile 56: | ||
Dieser Beispielcode konfiguriert die Karte für das Senden und Empfangen von Paketen. Hierbei wird die Karte in den sog. "promiscuous mode" gesetzt, in dem alle Pakete akzeptiert werden, auch solche, die nicht an das Gerät gerichtet sind. Weiterhin werden Interrupts aktiviert. | Dieser Beispielcode konfiguriert die Karte für das Senden und Empfangen von Paketen. Hierbei wird die Karte in den sog. "promiscuous mode" gesetzt, in dem alle Pakete akzeptiert werden, auch solche, die nicht an das Gerät gerichtet sind. Weiterhin werden Interrupts aktiviert. | ||
<c> | <c> | ||
| − | |||
outl(port_base + RTL8168_RXCONFIG, 0x0000E70F); // RxConfig = Rx FIFO threshold: no; Max DMA burst size: unbeschränkt; Promiscuous mode | outl(port_base + RTL8168_RXCONFIG, 0x0000E70F); // RxConfig = Rx FIFO threshold: no; Max DMA burst size: unbeschränkt; Promiscuous mode | ||
outb(port_base + RTL8168_CHIPCMD, 0x04); // Aktiviere Tx, bevor TxConfig gesetzt wird | outb(port_base + RTL8168_CHIPCMD, 0x04); // Aktiviere Tx, bevor TxConfig gesetzt wird | ||
| Zeile 69: | Zeile 67: | ||
outw(port_base + RTL8168_INTRMASK, 0xC3FF); // Aktiviere alle Interrupts | outw(port_base + RTL8168_INTRMASK, 0xC3FF); // Aktiviere alle Interrupts | ||
outb(port_base + RTL8168_CHIPCMD, 0x0C); // Aktivere Senden und Empfangen | outb(port_base + RTL8168_CHIPCMD, 0x0C); // Aktivere Senden und Empfangen | ||
| − | |||
</c> | </c> | ||