Changeset 747ef72 in mainline for uspace/lib/drv/generic/remote_usbhc.c
- Timestamp:
- 2011-11-10T11:29:10Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 54464f6a, c2245a3, c6f189f7
- Parents:
- 2e1b9dc (diff), 2d1ba51 (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. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/drv/generic/remote_usbhc.c
r2e1b9dc r747ef72 55 55 static remote_iface_func_ptr_t remote_usbhc_iface_ops[] = { 56 56 [IPC_M_USBHC_REQUEST_ADDRESS] = remote_usbhc_request_address, 57 [IPC_M_USBHC_RELEASE_ADDRESS] = remote_usbhc_release_address, 57 58 [IPC_M_USBHC_BIND_ADDRESS] = remote_usbhc_bind_address, 58 59 [IPC_M_USBHC_GET_HANDLE_BY_ADDRESS] = remote_usbhc_find_by_address, 59 [IPC_M_USBHC_RELEASE_ADDRESS] = remote_usbhc_release_address,60 60 61 61 [IPC_M_USBHC_REGISTER_ENDPOINT] = remote_usbhc_register_endpoint, … … 118 118 } 119 119 120 usb_speed_t speed = DEV_IPC_GET_ARG1(*call); 121 122 usb_address_t address; 123 int rc = usb_iface->request_address(fun, speed, &address); 120 usb_address_t address = DEV_IPC_GET_ARG1(*call); 121 const bool strict = DEV_IPC_GET_ARG2(*call); 122 const usb_speed_t speed = DEV_IPC_GET_ARG3(*call); 123 124 const int rc = usb_iface->request_address(fun, &address, strict, speed); 124 125 if (rc != EOK) { 125 126 async_answer_0(callid, rc); … … 233 234 234 235 #define _INIT_FROM_HIGH_DATA2(type, var, arg_no) \ 235 type var = (type) DEV_IPC_GET_ARG##arg_no(*call) / (1 <<16)236 type var = (type) (DEV_IPC_GET_ARG##arg_no(*call) >> 16) 236 237 #define _INIT_FROM_LOW_DATA2(type, var, arg_no) \ 237 type var = (type) DEV_IPC_GET_ARG##arg_no(*call) % (1 << 16) 238 #define _INIT_FROM_HIGH_DATA3(type, var, arg_no) \ 239 type var = (type) DEV_IPC_GET_ARG##arg_no(*call) / (1 << 16) 240 #define _INIT_FROM_MIDDLE_DATA3(type, var, arg_no) \ 241 type var = (type) (DEV_IPC_GET_ARG##arg_no(*call) / (1 << 8)) % (1 << 8) 242 #define _INIT_FROM_LOW_DATA3(type, var, arg_no) \ 243 type var = (type) DEV_IPC_GET_ARG##arg_no(*call) % (1 << 8) 238 type var = (type) (DEV_IPC_GET_ARG##arg_no(*call) & 0xffff) 244 239 245 240 const usb_target_t target = { .packed = DEV_IPC_GET_ARG1(*call) }; 246 241 247 _INIT_FROM_HIGH_DATA3(usb_speed_t, speed, 2); 248 _INIT_FROM_MIDDLE_DATA3(usb_transfer_type_t, transfer_type, 2); 249 _INIT_FROM_LOW_DATA3(usb_direction_t, direction, 2); 242 _INIT_FROM_HIGH_DATA2(usb_transfer_type_t, transfer_type, 2); 243 _INIT_FROM_LOW_DATA2(usb_direction_t, direction, 2); 250 244 251 245 _INIT_FROM_HIGH_DATA2(size_t, max_packet_size, 3); … … 254 248 #undef _INIT_FROM_HIGH_DATA2 255 249 #undef _INIT_FROM_LOW_DATA2 256 #undef _INIT_FROM_HIGH_DATA3 257 #undef _INIT_FROM_MIDDLE_DATA3 258 #undef _INIT_FROM_LOW_DATA3 259 260 int rc = usb_iface->register_endpoint(fun, target.address, speed, 250 251 int rc = usb_iface->register_endpoint(fun, target.address, 261 252 target.endpoint, transfer_type, direction, max_packet_size, interval); 262 253
Note:
See TracChangeset
for help on using the changeset viewer.