Changeset a1347a7 in mainline for uspace/lib/drv
- Timestamp:
- 2012-01-15T13:51:09Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- bd79281
- Parents:
- 03e0a244 (diff), f302586 (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. - Location:
- uspace/lib/drv
- Files:
-
- 3 edited
-
generic/driver.c (modified) (1 diff)
-
generic/remote_nic.c (modified) (2 diffs)
-
include/ops/nic.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/drv/generic/driver.c
r03e0a244 ra1347a7 1016 1016 * incoming connections. 1017 1017 */ 1018 rc = devman_driver_register(driver->name, driver_connection); 1018 async_set_client_connection(driver_connection); 1019 rc = devman_driver_register(driver->name); 1019 1020 if (rc != EOK) { 1020 1021 printf("Error: Failed to register driver with device manager " -
uspace/lib/drv/generic/remote_nic.c
r03e0a244 ra1347a7 39 39 #include <errno.h> 40 40 #include <ipc/services.h> 41 #include <adt/measured_strings.h>42 41 #include <sys/time.h> 43 42 #include "ops/nic.h" 44 43 45 static void remote_nic_send_message(ddf_fun_t *dev, void *iface, 46 ipc_callid_t callid, ipc_call_t *call) 47 { 48 nic_iface_t *nic_iface = (nic_iface_t *) iface; 49 assert(nic_iface->send_message); 50 51 packet_id_t packet_id = (packet_id_t) IPC_GET_ARG2(*call); 52 53 int rc = nic_iface->send_message(dev, packet_id); 54 async_answer_0(callid, rc); 44 static void remote_nic_send_frame(ddf_fun_t *dev, void *iface, 45 ipc_callid_t callid, ipc_call_t *call) 46 { 47 nic_iface_t *nic_iface = (nic_iface_t *) iface; 48 assert(nic_iface->send_frame); 49 50 void *data; 51 size_t size; 52 int rc; 53 54 rc = async_data_write_accept(&data, false, 0, 0, 0, &size); 55 if (rc != EOK) { 56 async_answer_0(callid, EINVAL); 57 return; 58 } 59 60 rc = nic_iface->send_frame(dev, data, size); 61 async_answer_0(callid, rc); 62 free(data); 55 63 } 56 64 … … 1194 1202 */ 1195 1203 static remote_iface_func_ptr_t remote_nic_iface_ops[] = { 1196 &remote_nic_send_ message,1204 &remote_nic_send_frame, 1197 1205 &remote_nic_connect_to_nil, 1198 1206 &remote_nic_get_state, -
uspace/lib/drv/include/ops/nic.h
r03e0a244 ra1347a7 37 37 #define LIBDRV_OPS_NIC_H_ 38 38 39 #include <net/packet.h>40 39 #include <ipc/services.h> 41 40 #include <net/device.h> … … 46 45 typedef struct nic_iface { 47 46 /** Mandatory methods */ 48 int (*send_ message)(ddf_fun_t *, packet_id_t);47 int (*send_frame)(ddf_fun_t *, void *, size_t); 49 48 int (*connect_to_nil)(ddf_fun_t *, services_t, nic_device_id_t); 50 49 int (*get_state)(ddf_fun_t *, nic_device_state_t *);
Note:
See TracChangeset
for help on using the changeset viewer.
