|
XenevaOS
|
#include <pcie.h>#include <audrv.h>#include <Hal/AA64/aa64lowlevel.h>#include <Hal/AA64/gic.h>#include <Fs/Dev/devinput.h>#include <Fs/vfs.h>#include <Drivers/virtio.h>#include <Drivers/uart.h>#include <Net/wifi.h>#include <Mm/pmmngr.h>#include <Mm/kmalloc.h>#include <aucon.h>#include <Mm/vmmngr.h>#include <Hal/AA64/sched.h>#include <Net/aunet.h>#include <Net/ethernet.h>#include <string.h>
Classes | |
| struct | VirtioNetCfg |
Macros | |
| #define | RX_BUFFER_COUNT 8 |
| #define | TX_BUFFER_COUNT 8 |
| #define | TX_BUFFER_SIZE 2048 |
| #define | RX_BUFFER_SIZE 2048 |
| #define | MAKE_IP(a, b, c, d) ((uint32_t)(d) << 24 | (uint32_t)(c) << 16 | (uint32_t)(b) << 8 | (uint32_t)(a)) |
Functions | |
| void | AuVirtioNetHandler (int spiNum) |
| void | AuVirtioNetPortalTx (void *packet, uint16_t len) |
| void | AuVirtioNetInitialize (uint64_t device, int bus, int dev, int func) |
| AuVirtioNetInitialize – initialize the virtio network device. | |
| AU_DRIVER_FLAGS (AU_DRV_FLAG_UNLOADABLE) | |
| AU_EXTERN AU_EXPORT int | AuDriverUnload () |
| AU_EXTERN AU_EXPORT int | AuDriverMain () |
| #define MAKE_IP | ( | a, | |
| b, | |||
| c, | |||
| d | |||
| ) | ((uint32_t)(d) << 24 | (uint32_t)(c) << 16 | (uint32_t)(b) << 8 | (uint32_t)(a)) |
| #define RX_BUFFER_COUNT 8 |
| #define RX_BUFFER_SIZE 2048 |
| #define TX_BUFFER_COUNT 8 |
| #define TX_BUFFER_SIZE 2048 |
| AU_DRIVER_FLAGS | ( | AU_DRV_FLAG_UNLOADABLE | ) |
| void AuVirtioNetHandler | ( | int | spiNum | ) |
| void AuVirtioNetInitialize | ( | uint64_t | device, |
| int | bus, | ||
| int | dev, | ||
| int | func | ||
| ) |
AuVirtioNetInitialize – initialize the virtio network device.
| device | – device address passed by PCIe |
| void AuVirtioNetPortalTx | ( | void * | packet, |
| uint16_t | len | ||
| ) |