Changeset 9cd8165 in mainline for uspace/lib/nic/src
- Timestamp:
- 2012-01-27T12:54:09Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 790d6d1
- Parents:
- 7174403
- Location:
- uspace/lib/nic/src
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/nic/src/nic_driver.c
r7174403 r9cd8165 497 497 if (nic_data->client_session != NULL) { 498 498 int rc = nic_ev_addr_changed(nic_data->client_session, 499 nic_data->device_id,address);499 address); 500 500 if (rc != EOK) { 501 501 fibril_rwlock_write_unlock(&nic_data->main_lock); … … 604 604 } 605 605 fibril_rwlock_write_unlock(&nic_data->stats_lock); 606 nic_ev_received(nic_data->client_session, nic_data->device_id,607 frame-> data, frame->size);606 nic_ev_received(nic_data->client_session, frame->data, 607 frame->size); 608 608 } else { 609 609 switch (frame_type) { … … 639 639 fibril_rwlock_write_unlock(&nic_data->stats_lock); 640 640 641 nic_ev_received(nic_data->client_session, nic_data->device_id, 642 data, size); 641 nic_ev_received(nic_data->client_session, data, size); 643 642 } 644 643 … … 691 690 nic_data->dev = NULL; 692 691 nic_data->fun = NULL; 693 nic_data->device_id = NIC_DEVICE_INVALID_ID;694 692 nic_data->state = NIC_STATE_STOPPED; 695 693 nic_data->client_session = NULL; -
uspace/lib/nic/src/nic_ev.c
r7174403 r9cd8165 42 42 43 43 /** Device address changed. */ 44 int nic_ev_addr_changed(async_sess_t *sess, nic_device_id_t dev_id, 45 const nic_address_t *addr) 44 int nic_ev_addr_changed(async_sess_t *sess, const nic_address_t *addr) 46 45 { 47 46 async_exch_t *exch = async_exchange_begin(sess); 48 47 49 48 ipc_call_t answer; 50 aid_t req = async_send_1(exch, NIC_EV_ADDR_CHANGED, (sysarg_t) dev_id, 51 &answer); 49 aid_t req = async_send_0(exch, NIC_EV_ADDR_CHANGED, &answer); 52 50 sysarg_t retval = async_data_write_start(exch, addr, 53 51 sizeof(nic_address_t)); … … 65 63 66 64 /** Device state changed. */ 67 extern int nic_ev_device_state(async_sess_t *sess, nic_device_id_t dev_id, 68 sysarg_t state) 65 extern int nic_ev_device_state(async_sess_t *sess, sysarg_t state) 69 66 { 70 67 int rc; 71 68 72 69 async_exch_t *exch = async_exchange_begin(sess); 73 rc = async_req_ 2_0(exch, NIC_EV_DEVICE_STATE, dev_id, state);70 rc = async_req_1_0(exch, NIC_EV_DEVICE_STATE, state); 74 71 async_exchange_end(exch); 75 72 … … 78 75 79 76 /** Frame received. */ 80 int nic_ev_received(async_sess_t *sess, nic_device_id_t dev_id, void *data, 81 size_t size) 77 int nic_ev_received(async_sess_t *sess, void *data, size_t size) 82 78 { 83 79 async_exch_t *exch = async_exchange_begin(sess); 84 80 85 81 ipc_call_t answer; 86 aid_t req = async_send_1(exch, NIC_EV_RECEIVED, (sysarg_t) dev_id, 87 &answer); 82 aid_t req = async_send_0(exch, NIC_EV_RECEIVED, &answer); 88 83 sysarg_t retval = async_data_write_start(exch, data, size); 89 84 -
uspace/lib/nic/src/nic_impl.c
r7174403 r9cd8165 87 87 } 88 88 if (state == NIC_STATE_ACTIVE) { 89 if (nic_data->client_session == NULL || nic_data->device_id < 0) {89 if (nic_data->client_session == NULL) { 90 90 fibril_rwlock_write_unlock(&nic_data->main_lock); 91 91 return EINVAL; … … 118 118 /* Notify upper layers that we are reseting the MAC */ 119 119 int rc = nic_ev_addr_changed(nic_data->client_session, 120 nic_data->device_id,&nic_data->default_mac);120 &nic_data->default_mac); 121 121 nic_data->poll_mode = nic_data->default_poll_mode; 122 122 memcpy(&nic_data->poll_period, &nic_data->default_poll_period, … … 150 150 nic_data->state = state; 151 151 152 nic_ev_device_state(nic_data->client_session, nic_data->device_id,state);152 nic_ev_device_state(nic_data->client_session, state); 153 153 154 154 fibril_rwlock_write_unlock(&nic_data->main_lock); … … 187 187 * 188 188 * @param fun 189 * @param device_id ID of the device as used in higher layers190 189 * 191 190 * @return EOK On success, or negative error code. 192 191 */ 193 int nic_callback_create_impl(ddf_fun_t *fun , nic_device_id_t device_id)192 int nic_callback_create_impl(ddf_fun_t *fun) 194 193 { 195 194 nic_t *nic = (nic_t *) fun->driver_data; 196 195 fibril_rwlock_write_lock(&nic->main_lock); 197 198 nic->device_id = device_id;199 196 200 197 nic->client_session = async_callback_receive(EXCHANGE_SERIALIZE);
Note:
See TracChangeset
for help on using the changeset viewer.