Changeset 79ae36dd in mainline for uspace/drv/vhc/conndev.c
- Timestamp:
- 2011-06-08T19:01:55Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 0eff68e
- Parents:
- 764d71e
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/vhc/conndev.c
r764d71e r79ae36dd 38 38 #include <ddf/driver.h> 39 39 #include <usbvirt/ipc.h> 40 #include <async.h> 40 41 #include "conn.h" 41 42 … … 44 45 static fibril_local char plugged_device_name[PLUGGED_DEVICE_NAME_MAXLEN + 1] = "<unknown>"; 45 46 47 #if 0 46 48 /** Receive device name. 47 49 * 48 50 * @warning Errors are silently ignored. 49 51 * 50 * @param phone Phone to the virtual device. 52 * @param sess Session to the virtual device. 53 * 51 54 */ 52 static void receive_device_name( int phone)55 static void receive_device_name(async_sess_t *sess) 53 56 { 54 aid_t opening_request = async_send_0(phone, IPC_M_USBVIRT_GET_NAME, NULL); 57 async_exch_t *exch = async_exchange_begin(sess); 58 59 aid_t opening_request = async_send_0(exch, IPC_M_USBVIRT_GET_NAME, NULL); 55 60 if (opening_request == 0) { 61 async_exchange_end(exch); 56 62 return; 57 63 } 58 59 64 60 65 ipc_call_t data_request_call; 61 aid_t data_request = async_data_read(phone, 62 plugged_device_name, PLUGGED_DEVICE_NAME_MAXLEN, 63 &data_request_call); 64 66 aid_t data_request = async_data_read(exch, plugged_device_name, 67 PLUGGED_DEVICE_NAME_MAXLEN, &data_request_call); 68 69 async_exchange_end(exch); 70 65 71 if (data_request == 0) { 66 72 async_wait_for(opening_request, NULL); 67 73 return; 68 74 } 69 75 70 76 sysarg_t data_request_rc; 71 77 sysarg_t opening_request_rc; 72 78 async_wait_for(data_request, &data_request_rc); 73 79 async_wait_for(opening_request, &opening_request_rc); 74 75 if ((data_request_rc != EOK) || (opening_request_rc != EOK)) {80 81 if ((data_request_rc != EOK) || (opening_request_rc != EOK)) 76 82 return; 77 } 78 83 79 84 size_t len = IPC_GET_ARG2(data_request_call); 80 85 plugged_device_name[len] = 0; 81 86 } 87 #endif 82 88 83 89 /** Default handler for IPC methods not handled by DDF. … … 90 96 ipc_callid_t icallid, ipc_call_t *icall) 91 97 { 98 // FIXME: 99 // This code needs to be refactored since the async 100 // framework does not support automatic callback connections 101 // yet. 102 103 #if 0 92 104 vhc_data_t *vhc = fun->dev->driver_data; 93 105 sysarg_t method = IPC_GET_IMETHOD(*icall); … … 112 124 return; 113 125 } 126 #endif 114 127 115 128 async_answer_0(icallid, EINVAL);
Note:
See TracChangeset
for help on using the changeset viewer.