DP8390 network interface types and structures ports. More...
#include <errno.h>#include <mem.h>#include <stdio.h>#include <libarch/ddi.h>#include <sys/types.h>

Data Structures | |
| struct | eth_stat |
| Ethernet statistics. More... | |
| struct | ether_addr |
| Ethernet address type definition. More... | |
| struct | iovec_t |
| Type definition of the input/output vector. More... | |
Defines | |
| #define | _PROTOTYPE(function, params) function params |
| Macro for difining functions. | |
| #define | OK EOK |
| Success error code. | |
| #define | memcmp(first, second, size) bcmp((char *) (first), (char *) (second), (size)) |
| Compares two memory blocks. | |
| #define | inb(port) pio_read_8((ioport8_t *) (port)) |
| Reads 1 byte. | |
| #define | inw(port) pio_read_16((ioport16_t *) (port)) |
| Reads 1 word (2 bytes). | |
| #define | outb(port, value) pio_write_8((ioport8_t *) (port), (value)) |
| Writes 1 byte. | |
| #define | outw(port, value) pio_write_16((ioport16_t *) (port), (value)) |
| Writes 1 word (2 bytes). | |
| #define | panic(...) printf("%s%s%d", __VA_ARGS__) |
| Prints out the driver critical error. | |
| #define | sys_vircopy(proc, src_s, src, me, dst_s, dst, bytes) ({memcpy((void *)(dst), (void *)(src), (bytes)); EOK;}) |
| Copies a memory block. | |
| #define | do_vir_insb(port, proc, dst, bytes) insb((port), (void *)(dst), (bytes)) |
| Reads a memory block byte by byte. | |
| #define | do_vir_insw(port, proc, dst, bytes) insw((port), (void *)(dst), (bytes)) |
| Reads a memory block word by word (2 bytes). | |
| #define | do_vir_outsb(port, proc, src, bytes) outsb((port), (void *)(src), (bytes)) |
| Writes a memory block byte by byte. | |
| #define | do_vir_outsw(port, proc, src, bytes) outsw((port), (void *)(src), (bytes)) |
| Writes a memory block word by word (2 bytes). | |
| #define | DL_NOMODE 0x0 |
| #define | DL_PROMISC_REQ 0x2 |
| #define | DL_MULTI_REQ 0x4 |
| #define | DL_BROAD_REQ 0x8 |
| #define | TRUE 1 |
| True value. | |
| #define | FALSE 0 |
| False value. | |
| #define | NO_NUM 0x8000 |
| No number value. | |
| #define | EGENERIC EINVAL |
| Generic error. | |
| #define | ETH_MIN_PACK_SIZE 60 |
| Minimum Ethernet packet size in bytes. | |
| #define | ETH_MAX_PACK_SIZE_TAGGED 1518 |
| Maximum Ethernet packet size in bytes. | |
Typedefs | |
| typedef uint8_t | u8_t |
| Type definition of the unsigned byte. | |
| typedef uint16_t | u16_t |
| Type definition of the unsigned short. | |
| typedef long | port_t |
| Type definition of a port. | |
| typedef struct eth_stat | eth_stat_t |
| Ethernet statistics. | |
| typedef struct ether_addr | ether_addr_t |
| Ethernet address type definition. | |
| typedef unsigned long | phys_bytes |
| Type definition of the physical addresses and lengths in bytes. | |
| typedef unsigned long | vir_bytes |
| Type definition of the virtual addresses and lengths in bytes. | |
DP8390 network interface types and structures ports.
1.6.1