Changes in uspace/lib/drv/generic/remote_usbhc.c [1998bcd:b7d8fd9] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/drv/generic/remote_usbhc.c
r1998bcd rb7d8fd9 270 270 } 271 271 272 size_t max_packet_size = DEV_IPC_GET_ARG3(*call); 272 273 usb_target_t target = { 273 274 .address = DEV_IPC_GET_ARG1(*call), … … 299 300 trans->size = len; 300 301 301 rc = transfer_func(fun, target, 302 rc = transfer_func(fun, target, max_packet_size, 302 303 buffer, len, 303 304 callback_out, trans); … … 325 326 } 326 327 328 size_t max_packet_size = DEV_IPC_GET_ARG3(*call); 327 329 usb_target_t target = { 328 330 .address = DEV_IPC_GET_ARG1(*call), … … 346 348 trans->size = len; 347 349 348 int rc = transfer_func(fun, target, 350 int rc = transfer_func(fun, target, max_packet_size, 349 351 trans->buffer, len, 350 352 callback_in, trans); … … 412 414 }; 413 415 size_t data_buffer_len = DEV_IPC_GET_ARG3(*call); 416 size_t max_packet_size = DEV_IPC_GET_ARG4(*call); 414 417 415 418 int rc; … … 447 450 trans->size = data_buffer_len; 448 451 449 rc = usb_iface->control_write(fun, target, 452 rc = usb_iface->control_write(fun, target, max_packet_size, 450 453 setup_packet, setup_packet_len, 451 454 data_buffer, data_buffer_len, … … 474 477 .endpoint = DEV_IPC_GET_ARG2(*call) 475 478 }; 479 size_t max_packet_size = DEV_IPC_GET_ARG3(*call); 476 480 477 481 int rc; … … 511 515 } 512 516 513 rc = usb_iface->control_read(fun, target, 517 rc = usb_iface->control_read(fun, target, max_packet_size, 514 518 setup_packet, setup_packet_len, 515 519 trans->buffer, trans->size, … … 533 537 } 534 538 535 #define _INIT_FROM_HIGH_DATA2(type, var, arg_no) \ 536 type var = (type) DEV_IPC_GET_ARG##arg_no(*call) / (1 << 16) 537 #define _INIT_FROM_LOW_DATA2(type, var, arg_no) \ 538 type var = (type) DEV_IPC_GET_ARG##arg_no(*call) % (1 << 16) 539 #define _INIT_FROM_HIGH_DATA3(type, var, arg_no) \ 540 type var = (type) DEV_IPC_GET_ARG##arg_no(*call) / (1 << 16) 541 #define _INIT_FROM_MIDDLE_DATA3(type, var, arg_no) \ 542 type var = (type) (DEV_IPC_GET_ARG##arg_no(*call) / (1 << 8)) % (1 << 8) 543 #define _INIT_FROM_LOW_DATA3(type, var, arg_no) \ 544 type var = (type) DEV_IPC_GET_ARG##arg_no(*call) % (1 << 8) 545 546 _INIT_FROM_HIGH_DATA2(usb_address_t, address, 1); 547 _INIT_FROM_LOW_DATA2(usb_endpoint_t, endpoint, 1); 548 549 _INIT_FROM_HIGH_DATA3(usb_speed_t, speed, 2); 550 _INIT_FROM_MIDDLE_DATA3(usb_transfer_type_t, transfer_type, 2); 551 _INIT_FROM_LOW_DATA3(usb_direction_t, direction, 2); 552 553 _INIT_FROM_HIGH_DATA2(size_t, max_packet_size, 3); 554 _INIT_FROM_LOW_DATA2(unsigned int, interval, 3); 555 556 #undef _INIT_FROM_HIGH_DATA2 557 #undef _INIT_FROM_LOW_DATA2 558 #undef _INIT_FROM_HIGH_DATA3 559 #undef _INIT_FROM_MIDDLE_DATA3 560 #undef _INIT_FROM_LOW_DATA3 561 562 int rc = usb_iface->register_endpoint(fun, address, speed, endpoint, 539 #define INIT_FROM_HIGH_DATA(type, var, arg_no) \ 540 type var = (type) DEV_IPC_GET_ARG##arg_no(*call) / 256 541 #define INIT_FROM_LOW_DATA(type, var, arg_no) \ 542 type var = (type) DEV_IPC_GET_ARG##arg_no(*call) % 256 543 544 INIT_FROM_HIGH_DATA(usb_address_t, address, 1); 545 INIT_FROM_LOW_DATA(usb_endpoint_t, endpoint, 1); 546 INIT_FROM_HIGH_DATA(usb_transfer_type_t, transfer_type, 2); 547 INIT_FROM_LOW_DATA(usb_direction_t, direction, 2); 548 549 #undef INIT_FROM_HIGH_DATA 550 #undef INIT_FROM_LOW_DATA 551 552 size_t max_packet_size = (size_t) DEV_IPC_GET_ARG3(*call); 553 unsigned int interval = (unsigned int) DEV_IPC_GET_ARG4(*call); 554 555 int rc = usb_iface->register_endpoint(fun, address, endpoint, 563 556 transfer_type, direction, max_packet_size, interval); 564 557
Note:
See TracChangeset
for help on using the changeset viewer.