Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/usbhost/src/usb_bus.c

    rb7fd2a0 rf527f58  
    102102 *
    103103 * @param[in] instance Device manager structure to use.
    104  * @param[out] address Free address.
    105  * @return Error code.
    106  */
    107 static errno_t usb_bus_get_free_address(usb_bus_t *instance, usb_address_t *address)
     104 * @return Free address, or error code.
     105 */
     106static usb_address_t usb_bus_get_free_address(usb_bus_t *instance)
    108107{
    109108
     
    120119        instance->last_address = new_address;
    121120
    122         *address = new_address;
    123         return EOK;
     121        return new_address;
    124122}
    125123
     
    200198 * @return Error code.
    201199 */
    202 errno_t usb_bus_init(usb_bus_t *instance,
     200int usb_bus_init(usb_bus_t *instance,
    203201    size_t available_bandwidth, bw_count_func_t bw_count, usb_speed_t max_speed)
    204202{
     
    224222 * @return Error code.
    225223 */
    226 errno_t usb_bus_register_ep(usb_bus_t *instance, endpoint_t *ep, size_t data_size)
     224int usb_bus_register_ep(usb_bus_t *instance, endpoint_t *ep, size_t data_size)
    227225{
    228226        assert(instance);
     
    262260 * @return Error code.
    263261 */
    264 errno_t usb_bus_unregister_ep(usb_bus_t *instance, endpoint_t *ep)
     262int usb_bus_unregister_ep(usb_bus_t *instance, endpoint_t *ep)
    265263{
    266264        assert(instance);
     
    316314 * @return Error code.
    317315 */
    318 errno_t usb_bus_add_ep(usb_bus_t *instance,
     316int usb_bus_add_ep(usb_bus_t *instance,
    319317    usb_address_t address, usb_endpoint_t endpoint, usb_direction_t direction,
    320318    usb_transfer_type_t type, size_t max_packet_size, unsigned packets,
     
    364362
    365363        if (callback) {
    366                 const errno_t ret = callback(ep, arg);
     364                const int ret = callback(ep, arg);
    367365                if (ret != EOK) {
    368366                        fibril_mutex_unlock(&instance->guard);
     
    394392 * @return Error code.
    395393 */
    396 errno_t usb_bus_remove_ep(usb_bus_t *instance,
     394int usb_bus_remove_ep(usb_bus_t *instance,
    397395    usb_address_t address, usb_endpoint_t endpoint, usb_direction_t direction,
    398396    ep_remove_callback_t callback, void *arg)
     
    417415}
    418416
    419 errno_t usb_bus_reset_toggle(usb_bus_t *instance, usb_target_t target, bool all)
     417int usb_bus_reset_toggle(usb_bus_t *instance, usb_target_t target, bool all)
    420418{
    421419        assert(instance);
     
    423421                return EINVAL;
    424422
    425         errno_t ret = ENOENT;
     423        int ret = ENOENT;
    426424
    427425        fibril_mutex_lock(&instance->guard);
     
    446444 * @return Error code.
    447445 */
    448 errno_t usb_bus_remove_address(usb_bus_t *instance,
     446int usb_bus_remove_address(usb_bus_t *instance,
    449447    usb_address_t address, ep_remove_callback_t callback, void *arg)
    450448{
     
    455453        fibril_mutex_lock(&instance->guard);
    456454
    457         const errno_t ret = instance->devices[address].occupied ? EOK : ENOENT;
     455        const int ret = instance->devices[address].occupied ? EOK : ENOENT;
    458456        instance->devices[address].occupied = false;
    459457
     
    476474/** Request USB address.
    477475 * @param instance usb_device_manager
    478  * @param[inout] address Pointer to requested address value, place to store new address
     476 * @param address Pointer to requested address value, place to store new address
    479477 * @parma strict Fail if the requested address is not available.
    480478 * @return Error code.
    481479 * @note Default address is only available in strict mode.
    482480 */
    483 errno_t usb_bus_request_address(usb_bus_t *instance,
     481int usb_bus_request_address(usb_bus_t *instance,
    484482    usb_address_t *address, bool strict, usb_speed_t speed)
    485483{
     
    493491
    494492        usb_address_t addr = *address;
    495         errno_t rc;
    496493
    497494        fibril_mutex_lock(&instance->guard);
    498495        /* Only grant default address to strict requests */
    499496        if ((addr == USB_ADDRESS_DEFAULT) && !strict) {
    500                 rc = usb_bus_get_free_address(instance, &addr);
    501                 if (rc != EOK) {
    502                         fibril_mutex_unlock(&instance->guard);
    503                         return rc;
    504                 }
     497                addr = usb_bus_get_free_address(instance);
    505498        }
    506499
     
    510503                        return ENOENT;
    511504                }
    512                 rc = usb_bus_get_free_address(instance, &addr);
    513                 if (rc != EOK) {
    514                         fibril_mutex_unlock(&instance->guard);
    515                         return rc;
    516                 }
     505                addr = usb_bus_get_free_address(instance);
    517506        }
    518507        if (usb_address_is_valid(addr)) {
     
    527516
    528517        fibril_mutex_unlock(&instance->guard);
    529 
    530         *address = addr;
    531         return EOK;
     518        return addr;
    532519}
    533520
     
    539526 * @return Error code.
    540527 */
    541 errno_t usb_bus_get_speed(usb_bus_t *instance, usb_address_t address,
     528int usb_bus_get_speed(usb_bus_t *instance, usb_address_t address,
    542529    usb_speed_t *speed)
    543530{
     
    549536        fibril_mutex_lock(&instance->guard);
    550537
    551         const errno_t ret = instance->devices[address].occupied ? EOK : ENOENT;
     538        const int ret = instance->devices[address].occupied ? EOK : ENOENT;
    552539        if (speed && instance->devices[address].occupied) {
    553540                *speed = instance->devices[address].speed;
Note: See TracChangeset for help on using the changeset viewer.