Changeset a676574 in mainline for uspace/srv/hw/netif/dp8390/dp8390_port.h
- Timestamp:
- 2011-01-09T12:18:00Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 54de5ebd
- Parents:
- a3eeef45 (diff), 9d12059 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/hw/netif/dp8390/dp8390_port.h
ra3eeef45 ra676574 44 44 #include <sys/types.h> 45 45 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 params51 52 /** Success error code.53 */54 #define OK EOK55 56 /** Type definition of the unsigned byte.57 */58 typedef uint8_t u8_t;59 60 /** Type definition of the unsigned short.61 */62 typedef uint16_t u16_t;63 64 /** Compares two memory blocks.65 * @param[in] first The first memory block.66 * @param[in] second The second memory block.67 * @param[in] size The blocks size in bytes.68 * @returns 0 if equeal.69 * @returns -1 if the first is greater than the second.70 * @returns 1 if the second is greater than the first.71 */72 #define memcmp(first, second, size) bcmp((char *) (first), (char *) (second), (size))73 74 46 /** Reads 1 byte. 75 47 * @param[in] port The address to be read. 76 48 * @returns The read value. 77 49 */ 78 #define inb(port) 50 #define inb(port) pio_read_8((ioport8_t *) (port)) 79 51 80 52 /** Reads 1 word (2 bytes). … … 82 54 * @returns The read value. 83 55 */ 84 #define inw(port) 56 #define inw(port) pio_read_16((ioport16_t *) (port)) 85 57 86 58 /** Writes 1 byte. … … 88 60 * @param[in] value The value to be written. 89 61 */ 90 #define outb(port, value) 62 #define outb(port, value) pio_write_8((ioport8_t *) (port), (value)) 91 63 92 64 /** Writes 1 word (2 bytes). … … 94 66 * @param[in] value The value to be written. 95 67 */ 96 #define outw(port, value) 68 #define outw(port, value) pio_write_16((ioport16_t *) (port), (value)) 97 69 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 0x0150 # define DL_PROMISC_REQ 0x2151 # define DL_MULTI_REQ 0x4152 # define DL_BROAD_REQ 0x8153 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;169 70 /** Type definition of a port. 170 71 */ 171 72 typedef long port_t; 172 73 173 /* dl_eth.h */174 74 /** Ethernet statistics. 175 75 */ 176 typedef struct eth_stat 177 { 76 typedef struct eth_stat { 178 77 /** Number of receive errors. 179 78 */ … … 226 125 } eth_stat_t; 227 126 228 /* errno.h */229 /** Generic error.230 */231 #define EGENERIC EINVAL232 233 /* ether.h */234 127 /** Minimum Ethernet packet size in bytes. 235 128 */ 236 #define ETH_MIN_PACK_SIZE 129 #define ETH_MIN_PACK_SIZE 60 237 130 238 131 /** Maximum Ethernet packet size in bytes. 239 132 */ 240 #define ETH_MAX_PACK_SIZE_TAGGED 133 #define ETH_MAX_PACK_SIZE_TAGGED 1518 241 134 242 135 /** Ethernet address type definition. 243 136 */ 244 typedef struct ether_addr 245 { 137 typedef struct ether_addr { 246 138 /** Address data. 247 139 */ 248 u 8_t ea_addr[6];140 uint8_t ea_addr[6]; 249 141 } ether_addr_t; 250 251 /* type.h */252 /** Type definition of the physical addresses and lengths in bytes.253 */254 typedef unsigned long phys_bytes;255 256 /** Type definition of the virtual addresses and lengths in bytes.257 */258 typedef unsigned long vir_bytes;259 260 /** Type definition of the input/output vector.261 */262 typedef 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 142 271 143 #endif
Note:
See TracChangeset
for help on using the changeset viewer.