Changes in uspace/lib/nic/include/nic.h [6d8455d:e86b8f0] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/nic/include/nic.h
r6d8455d re86b8f0 42 42 #include <ddf/driver.h> 43 43 #include <device/hw_res_parsed.h> 44 #include <net/packet.h>45 44 #include <ops/nic.h> 45 46 #define DEVICE_CATEGORY_NIC "nic" 46 47 47 48 struct nic; … … 61 62 62 63 /** 63 * Simple structure for sending the allocated frames (packets) in a list.64 * Simple structure for sending lists of frames. 64 65 */ 65 66 typedef struct { 66 67 link_t link; 67 packet_t *packet; 68 void *data; 69 size_t size; 68 70 } nic_frame_t; 69 71 … … 71 73 72 74 /** 73 * Handler for writing packetdata to the NIC device.74 * The function is responsible for releasing the packet.75 * Handler for writing frame data to the NIC device. 76 * The function is responsible for releasing the frame. 75 77 * It does not return anything, if some error is detected the function just 76 78 * silently fails (logging on debug level is suggested). … … 158 160 * @return ENOTSUP If this filter cannot work on this NIC (e.g. the NIC 159 161 * cannot run in promiscuous node or the limit of WOL 160 * packets' specifications was reached).162 * frames' specifications was reached). 161 163 * @return ELIMIT If this filter must implemented in HW but currently the 162 164 * limit of these HW filters was reached. … … 204 206 /* Functions called in add_device */ 205 207 extern int nic_connect_to_services(nic_t *); 206 extern int nic_register_as_ddf_fun(nic_t *, ddf_dev_ops_t *);207 208 extern int nic_get_resources(nic_t *, hw_res_list_parsed_t *); 208 209 extern void nic_set_specific(nic_t *, void *); … … 225 226 extern ddf_dev_t *nic_get_ddf_dev(nic_t *); 226 227 extern ddf_fun_t *nic_get_ddf_fun(nic_t *); 228 extern void nic_set_ddf_fun(nic_t *, ddf_fun_t *); 227 229 extern nic_t *nic_get_from_ddf_dev(ddf_dev_t *); 228 230 extern nic_t *nic_get_from_ddf_fun(ddf_fun_t *); … … 233 235 extern int nic_report_poll_mode(nic_t *, nic_poll_mode_t, struct timeval *); 234 236 extern void nic_query_address(nic_t *, nic_address_t *); 235 extern void nic_received_packet(nic_t *, packet_t *); 236 extern void nic_received_noneth_packet(nic_t *, packet_t *); 237 extern void nic_received_noneth_frame(nic_t *, void *, size_t); 237 238 extern void nic_received_frame(nic_t *, nic_frame_t *); 238 239 extern void nic_received_frame_list(nic_t *, nic_frame_list_t *); … … 248 249 extern void nic_report_collisions(nic_t *, unsigned); 249 250 250 /* Packet / frame / frame list allocation and deallocation */ 251 extern packet_t *nic_alloc_packet(nic_t *, size_t); 252 extern void nic_release_packet(nic_t *, packet_t *); 251 /* Frame / frame list allocation and deallocation */ 253 252 extern nic_frame_t *nic_alloc_frame(nic_t *, size_t); 254 253 extern nic_frame_list_t *nic_alloc_frame_list(void); … … 275 274 extern void nic_sw_period_stop(nic_t *); 276 275 277 /* Packet DMA lock */278 extern int nic_dma_lock_packet(packet_t *, size_t, void **);279 extern int nic_dma_unlock_packet(packet_t *, size_t);280 281 276 #endif // __NIC_H__ 282 277
Note:
See TracChangeset
for help on using the changeset viewer.