Voxia OS v0.0.1
Hobby Project Operating System Targeting x86-64
Loading...
Searching...
No Matches
e1000.hpp File Reference
#include "ioforge/ioforge_nic.h"
#include "ioforge/ioforge_pci.hpp"
#include <type.h>

Go to the source code of this file.

Data Structures

struct  e1000_rx_desc
 
struct  e1000_rx_comp
 
struct  e1000_tx_desc
 
class  E1000Module
 

Macros

#define E1000_NUM_RX_DESC   256
 
#define E1000_NUM_RX_MASK   (E1000_NUM_RX_DESC - 1)
 
#define E1000_NUM_TX_DESC   64
 
#define E1000_VENDOR_ID   0x8086
 
#define E1000_DEVICE_ID   0x100c
 

Functions

struct e1000_rx_desc __attribute__ ((packed))
 

Variables

volatile uint64_t addr
 
volatile uint16_t length
 
volatile uint16_t checksum
 
volatile uint8_t status
 
volatile uint8_t errors
 
volatile uint16_t special
 
struct e1000_rx_comp __attribute__
 
volatile uint8_t cso
 
volatile uint8_t cmd
 
volatile uint8_t css
 

Macro Definition Documentation

◆ E1000_DEVICE_ID

#define E1000_DEVICE_ID   0x100c

Definition at line 12 of file e1000.hpp.

◆ E1000_NUM_RX_DESC

#define E1000_NUM_RX_DESC   256

Definition at line 8 of file e1000.hpp.

Referenced by E1000Module::initReceiverX().

◆ E1000_NUM_RX_MASK

#define E1000_NUM_RX_MASK   (E1000_NUM_RX_DESC - 1)

Definition at line 9 of file e1000.hpp.

Referenced by E1000Module::receiveHandle().

◆ E1000_NUM_TX_DESC

#define E1000_NUM_TX_DESC   64

Definition at line 10 of file e1000.hpp.

Referenced by E1000Module::initTransmitterX(), and E1000Module::sendPacket().

◆ E1000_VENDOR_ID

#define E1000_VENDOR_ID   0x8086

Definition at line 11 of file e1000.hpp.

Function Documentation

◆ __attribute__()

struct e1000_rx_desc __attribute__ ( (packed) )

Definition at line 1 of file tcp.h.

Variable Documentation

◆ __attribute__

E1000Module __attribute__

◆ addr

◆ checksum

volatile uint16_t checksum

Definition at line 2 of file e1000.hpp.

◆ cmd

◆ cso

volatile uint8_t cso

Definition at line 2 of file e1000.hpp.

◆ css

volatile uint8_t css

Definition at line 5 of file e1000.hpp.

◆ errors

volatile uint8_t errors

Definition at line 4 of file e1000.hpp.

◆ length

volatile uint16_t length

Definition at line 1 of file e1000.hpp.

◆ special

volatile uint16_t special

Definition at line 5 of file e1000.hpp.

◆ status