Changeset ef4e8eb in mainline for uspace/lib/usb/src/ddfiface.c
- Timestamp:
- 2013-01-15T20:39:09Z (11 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- ef40434
- Parents:
- 918e1e84
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/usb/src/ddfiface.c
r918e1e84 ref4e8eb 40 40 #include <usb/hc.h> 41 41 #include <usb/debug.h> 42 #include <usb/dev/hub.h>43 42 #include <errno.h> 44 43 #include <assert.h> … … 52 51 }; 53 52 54 /** DDF interface for USB device, implementation for child of a typical hub. */55 usb_iface_t usb_iface_hub_child_impl = {56 .get_hc_handle = usb_iface_get_hc_handle_device_impl,57 .get_my_address = usb_iface_get_my_address_from_device_data,58 };59 60 61 53 /** Get host controller handle, interface implementation for hub driver. 62 54 * … … 69 61 assert(fun); 70 62 return usb_get_hc_by_handle(ddf_fun_get_handle(fun), handle); 71 }72 73 /** Get host controller handle, interface implementation for HC driver.74 *75 * @param[in] fun Device function the operation is running on.76 * @param[out] handle Storage for the host controller handle.77 * @return Always EOK.78 */79 int usb_iface_get_hc_handle_hc_impl(ddf_fun_t *fun, devman_handle_t *handle)80 {81 assert(fun);82 83 if (handle != NULL) {84 *handle = ddf_fun_get_handle(fun);85 }86 87 return EOK;88 63 } 89 64 … … 102 77 } 103 78 104 /** Get USB device address, interface implementation for child of105 * a hub driver.106 *107 * This implementation eccepts 0 as valid handle and replaces it with fun's108 * handle.109 *110 * @param[in] fun Device function the operation is running on.111 * @param[in] handle Devman handle of USB device we want address of.112 * @param[out] address Storage for USB address of device with handle @p handle.113 * @return Error code.114 */115 int usb_iface_get_my_address_from_device_data(ddf_fun_t *fun,116 usb_address_t *address)117 {118 const usb_hub_attached_device_t *device = ddf_fun_data_get(fun);119 assert(device->fun == fun);120 if (address)121 *address = device->address;122 return EOK;123 }124 79 125 80 /**
Note:
See TracChangeset
for help on using the changeset viewer.