Changeset a40dea3 in mainline for uspace/srv/hid/adb_mouse/adb_dev.c
- Timestamp:
- 2011-06-20T20:04:39Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 6a0ff7f4
- Parents:
- 5203e256
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/hid/adb_mouse/adb_dev.c
r5203e256 ra40dea3 40 40 #include <errno.h> 41 41 #include <devmap.h> 42 #include <devmap_obsolete.h>43 42 #include <async.h> 44 #include <async_obsolete.h>45 43 #include <kernel/ipc/ipc_methods.h> 46 44 … … 53 51 { 54 52 devmap_handle_t handle; 55 int rc = devmap_device_get_handle("adb/mouse", &handle, 53 async_exch_t *exch; 54 int rc; 55 56 rc = devmap_device_get_handle("adb/mouse", &handle, 56 57 IPC_FLAG_BLOCKING); 57 58 58 if (rc != EOK) { 59 59 printf("%s: Failed resolving ADB\n", NAME); … … 61 61 } 62 62 63 int dev_phone = devmap_obsolete_device_connect(handle, IPC_FLAG_BLOCKING); 64 if (dev_phone < 0) { 63 async_sess_t *dev_sess = devmap_device_connect(EXCHANGE_ATOMIC, handle, 64 IPC_FLAG_BLOCKING); 65 if (dev_sess == NULL) { 65 66 printf("%s: Failed connecting to ADB\n", NAME); 66 67 return ENOENT; 67 68 } 68 69 70 exch = async_exchange_begin(dev_sess); 71 if (exch == NULL) { 72 printf("%s: Failed starting exchange with ADB\n", NAME); 73 async_hangup(dev_sess); 74 return ENOMEM; 75 } 76 69 77 /* NB: The callback connection is slotted for removal */ 70 if (async_obsolete_connect_to_me(dev_phone, 0, 0, 0, adb_dev_events, 71 NULL) != 0) { 78 rc = async_connect_to_me(exch, 0, 0, 0, adb_dev_events, NULL); 79 async_exchange_end(exch); 80 81 if (rc != 0) { 72 82 printf(NAME ": Failed to create callback from device\n"); 73 return false; 83 async_hangup(dev_sess); 84 return ENOENT; 74 85 } 75 86
Note:
See TracChangeset
for help on using the changeset viewer.