Changeset e526f08 in mainline for uspace/lib/c/include/net/device.h
- Timestamp:
- 2010-10-14T19:37:44Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a358279
- Parents:
- db5f8d3
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/include/net/device.h
rdb5f8d3 re526f08 27 27 */ 28 28 29 /** @addtogroup netif30 * 29 /** @addtogroup libc 30 * @{ 31 31 */ 32 32 33 33 /** @file 34 * 34 * Device identifier, state and usage statistics. 35 35 */ 36 36 37 #ifndef __NET_DEVICE_ID_TYPE_H__38 #define __NET_DEVICE_ID_TYPE_H__37 #ifndef LIBC_DEVICE_ID_TYPE_H_ 38 #define LIBC_DEVICE_ID_TYPE_H_ 39 39 40 40 #include <adt/int_map.h> 41 41 42 /** Device identifier to generic type map declaration. 43 */ 44 #define DEVICE_MAP_DECLARE INT_MAP_DECLARE 42 /** Device identifier to generic type map declaration. */ 43 #define DEVICE_MAP_DECLARE INT_MAP_DECLARE 45 44 46 /** Device identifier to generic type map implementation. 47 */ 45 /** Device identifier to generic type map implementation. */ 48 46 #define DEVICE_MAP_IMPLEMENT INT_MAP_IMPLEMENT 49 47 50 /** Invalid device identifier. 51 */ 52 #define DEVICE_INVALID_ID (-1) 48 /** Invalid device identifier. */ 49 #define DEVICE_INVALID_ID (-1) 53 50 54 /** Device identifier type. 55 */ 56 typedef int device_id_t; 51 /** Device identifier type. */ 52 typedef int device_id_t; 57 53 58 /** Device state type. 59 */ 60 typedef enum device_state device_state_t; 54 /** Device state type. */ 55 typedef enum device_state device_state_t; 61 56 62 57 /** Type definition of the device usage statistics. 63 * 58 * @see device_stats 64 59 */ 65 typedef struct device_stats 60 typedef struct device_stats device_stats_t; 66 61 67 62 /** Type definition of the device usage statistics pointer. 68 * 63 * @see device_stats 69 64 */ 70 typedef device_stats_t * 65 typedef device_stats_t *device_stats_ref; 71 66 72 /** Device state. 73 */ 74 enum device_state{ 75 /** Device not present or not initialized. 76 */ 67 /** Device state. */ 68 enum device_state { 69 /** Device not present or not initialized. */ 77 70 NETIF_NULL = 0, 78 /** Device present and stopped. 79 */ 71 /** Device present and stopped. */ 80 72 NETIF_STOPPED, 81 /** Device present and active. 82 */ 73 /** Device present and active. */ 83 74 NETIF_ACTIVE, 84 /** Device present but unable to transmit. 85 */ 75 /** Device present but unable to transmit. */ 86 76 NETIF_CARRIER_LOST 87 77 }; 88 78 89 /** Device usage statistics. 90 */ 91 struct device_stats{ 92 /** Total packets received. 93 */ 79 /** Device usage statistics. */ 80 struct device_stats { 81 /** Total packets received. */ 94 82 unsigned long receive_packets; 95 /** Total packets transmitted. 96 */ 83 /** Total packets transmitted. */ 97 84 unsigned long send_packets; 98 /** Total bytes received. 99 */ 85 /** Total bytes received. */ 100 86 unsigned long receive_bytes; 101 /** Total bytes transmitted. 102 */ 87 /** Total bytes transmitted. */ 103 88 unsigned long send_bytes; 104 /** Bad packets received counter. 105 */ 89 /** Bad packets received counter. */ 106 90 unsigned long receive_errors; 107 /** Packet transmition problems counter. 108 */ 91 /** Packet transmition problems counter. */ 109 92 unsigned long send_errors; 110 /** No space in buffers counter. 111 */ 93 /** No space in buffers counter. */ 112 94 unsigned long receive_dropped; 113 /** No space available counter. 114 */ 95 /** No space available counter. */ 115 96 unsigned long send_dropped; 116 /** Total multicast packets received. 117 */ 97 /** Total multicast packets received. */ 118 98 unsigned long multicast; 119 /** The number of collisions due to congestion on the medium. 120 */ 99 /** The number of collisions due to congestion on the medium. */ 121 100 unsigned long collisions; 122 101 123 /* detailed receive_errors :*/124 /** Received packet length error counter. 125 */102 /* detailed receive_errors */ 103 104 /** Received packet length error counter. */ 126 105 unsigned long receive_length_errors; 127 /** Receiver buffer overflow counter. 128 */ 106 /** Receiver buffer overflow counter. */ 129 107 unsigned long receive_over_errors; 130 /** Received packet with crc error counter. 131 */ 108 /** Received packet with crc error counter. */ 132 109 unsigned long receive_crc_errors; 133 /** Received frame alignment error counter. 134 */ 110 /** Received frame alignment error counter. */ 135 111 unsigned long receive_frame_errors; 136 /** Receiver fifo overrun counter. 137 */ 112 /** Receiver fifo overrun counter. */ 138 113 unsigned long receive_fifo_errors; 139 /** Receiver missed packet counter. 140 */ 114 /** Receiver missed packet counter. */ 141 115 unsigned long receive_missed_errors; 142 116 143 117 /* detailed send_errors */ 144 /** Transmitter aborted counter. 145 */118 119 /** Transmitter aborted counter. */ 146 120 unsigned long send_aborted_errors; 147 /** Transmitter carrier errors counter. 148 */ 121 /** Transmitter carrier errors counter. */ 149 122 unsigned long send_carrier_errors; 150 /** Transmitter fifo overrun counter. 151 */ 123 /** Transmitter fifo overrun counter. */ 152 124 unsigned long send_fifo_errors; 153 /** Transmitter carrier errors counter. 154 */ 125 /** Transmitter carrier errors counter. */ 155 126 unsigned long send_heartbeat_errors; 156 /** Transmitter window errors counter. 157 */ 127 /** Transmitter window errors counter. */ 158 128 unsigned long send_window_errors; 159 129 160 130 /* for cslip etc */ 161 /** Total compressed packets received.162 */131 132 /** Total compressed packets received. */ 163 133 unsigned long receive_compressed; 164 /** Total compressed packet transmitted. 165 */ 134 /** Total compressed packet transmitted. */ 166 135 unsigned long send_compressed; 167 136 }; … … 171 140 /** @} 172 141 */ 173
Note:
See TracChangeset
for help on using the changeset viewer.