Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/hw/netif/dp8390/dp8390_port.h

    r66b628a r849ed54  
    4444#include <sys/types.h>
    4545
     46/** Macro for difining functions.
     47 *  @param[in] function The function type and name definition.
     48 *  @param[in] params The function parameters definition.
     49 */
     50#define _PROTOTYPE(function, params) function params
     51
     52/** Success error code.
     53 */
     54#define OK      EOK
     55
     56/** Type definition of the unsigned byte.
     57 */
     58typedef uint8_t u8_t;
     59
     60/** Type definition of the unsigned short.
     61 */
     62typedef uint16_t u16_t;
     63
    4664/** Compares two memory blocks.
    4765 *  @param[in] first The first memory block.
     
    5270 *  @returns 1 if the second is greater than the first.
    5371 */
    54 #define memcmp(first, second, size)  bcmp((char *) (first), (char *) (second), (size))
     72#define memcmp(first, second, size)     bcmp((char *) (first), (char *) (second), (size))
    5573
    5674/** Reads 1 byte.
     
    5876 *  @returns The read value.
    5977 */
    60 #define inb(port)  pio_read_8((ioport8_t *) (port))
     78#define inb(port)       pio_read_8((ioport8_t *) (port))
    6179
    6280/** Reads 1 word (2 bytes).
     
    6482 *  @returns The read value.
    6583 */
    66 #define inw(port)  pio_read_16((ioport16_t *) (port))
     84#define inw(port)       pio_read_16((ioport16_t *) (port))
    6785
    6886/** Writes 1 byte.
     
    7088 *  @param[in] value The value to be written.
    7189 */
    72 #define outb(port, value)  pio_write_8((ioport8_t *) (port), (value))
     90#define outb(port, value)       pio_write_8((ioport8_t *) (port), (value))
    7391
    7492/** Writes 1 word (2 bytes).
     
    7694 *  @param[in] value The value to be written.
    7795 */
    78 #define outw(port, value)  pio_write_16((ioport16_t *) (port), (value))
    79 
     96#define outw(port, value)       pio_write_16((ioport16_t *) (port), (value))
     97
     98/** Prints out the driver critical error.
     99 *  Does not call the system panic().
     100 */
     101#define panic(...)      printf("%s%s%d", __VA_ARGS__)
     102
     103/** Copies a memory block.
     104 *  @param proc The source process. Ignored parameter.
     105 *  @param src_s Ignored parameter.
     106 *  @param[in] src The source address.
     107 *  @param me The current proces. Ignored parameter.
     108 *  @param dst_s Ignored parameter.
     109 *  @param[in] dst The destination address.
     110 *  @param[in] bytes The block size in bytes.
     111 *  @returns EOK.
     112 */
     113#define sys_vircopy(proc, src_s, src, me, dst_s, dst, bytes)    ({memcpy((void *)(dst), (void *)(src), (bytes)); EOK;})
     114
     115/** Reads a memory block byte by byte.
     116 *  @param[in] port The address to be written.
     117 *  @param proc The source process. Ignored parameter.
     118 *  @param[in] dst The destination address.
     119 *  @param[in] bytes The block size in bytes.
     120 */
     121#define do_vir_insb(port, proc, dst, bytes)     insb((port), (void *)(dst), (bytes))
     122
     123/** Reads a memory block word by word (2 bytes).
     124 *  @param[in] port The address to be written.
     125 *  @param proc The source process. Ignored parameter.
     126 *  @param[in] dst The destination address.
     127 *  @param[in] bytes The block size in bytes.
     128 */
     129#define do_vir_insw(port, proc, dst, bytes)     insw((port), (void *)(dst), (bytes))
     130
     131/** Writes a memory block byte by byte.
     132 *  @param[in] port The address to be written.
     133 *  @param proc The source process. Ignored parameter.
     134 *  @param[in] src The source address.
     135 *  @param[in] bytes The block size in bytes.
     136 */
     137#define do_vir_outsb(port, proc, src, bytes)    outsb((port), (void *)(src), (bytes))
     138
     139/** Writes a memory block word by word (2 bytes).
     140 *  @param[in] port The address to be written.
     141 *  @param proc The source process. Ignored parameter.
     142 *  @param[in] src The source address.
     143 *  @param[in] bytes The block size in bytes.
     144 */
     145#define do_vir_outsw(port, proc, src, bytes)    outsw((port), (void *)(src), (bytes))
     146
     147/* com.h */
     148/* Bits in 'DL_MODE' field of DL requests. */
     149#  define DL_NOMODE             0x0
     150#  define DL_PROMISC_REQ        0x2
     151#  define DL_MULTI_REQ          0x4
     152#  define DL_BROAD_REQ          0x8
     153
     154/* const.h */
     155/** True value.
     156 */
     157#define TRUE               1    /* used for turning integers into Booleans */
     158
     159/** False value.
     160 */
     161#define FALSE              0    /* used for turning integers into Booleans */
     162
     163/** No number value.
     164 */
     165#define NO_NUM        0x8000    /* used as numerical argument to panic() */
     166
     167/* devio.h */
     168//typedef u16_t port_t;
    80169/** Type definition of a port.
    81170 */
    82171typedef long port_t;
    83172
     173/* dl_eth.h */
    84174/** Ethernet statistics.
    85175 */
    86 typedef struct eth_stat {
     176typedef struct eth_stat
     177{
    87178        /** Number of receive errors.
    88179         */
     
    135226} eth_stat_t;
    136227
     228/* errno.h */
     229/** Generic error.
     230 */
     231#define EGENERIC     EINVAL
     232
     233/* ether.h */
    137234/** Minimum Ethernet packet size in bytes.
    138235 */
    139 #define ETH_MIN_PACK_SIZE  60
     236#define ETH_MIN_PACK_SIZE                 60
    140237
    141238/** Maximum Ethernet packet size in bytes.
    142239 */
    143 #define ETH_MAX_PACK_SIZE_TAGGED  1518
     240#define ETH_MAX_PACK_SIZE_TAGGED        1518
    144241
    145242/** Ethernet address type definition.
    146243 */
    147 typedef struct ether_addr {
     244typedef struct ether_addr
     245{
    148246        /** Address data.
    149247         */
    150         uint8_t ea_addr[6];
     248        u8_t ea_addr[6];
    151249} ether_addr_t;
    152250
     251/* type.h */
     252/** Type definition of the physical addresses and lengths in bytes.
     253 */
     254typedef unsigned long phys_bytes;
     255
     256/** Type definition of the virtual addresses and lengths in bytes.
     257 */
     258typedef unsigned long vir_bytes;
     259
     260/** Type definition of the input/output vector.
     261 */
     262typedef struct {
     263        /** Address of an I/O buffer.
     264         */
     265        vir_bytes iov_addr;
     266        /** Sizeof an I/O buffer.
     267         */
     268        vir_bytes iov_size;
     269} iovec_t;
     270
    153271#endif
    154272
Note: See TracChangeset for help on using the changeset viewer.