Ignore:
Timestamp:
2011-12-23T18:13:33Z (14 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
3819ce5, b39eb79, f0b74b2
Parents:
2f0dd2a (diff), 153cc76a (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.
Message:

USB branch changes.

+ USB device drivers use single async session to host controller, this session (represented by usb_hc_connection_t) is used for both HC requests and to back usb device connection.
+ Pipe locking was removed. Reference counting was moved to usb_hc_connection_t. Every read/write operation uses separate parallel exchange thus any contention is resolved on hc side.

  • async_sess_t setup using EXCHANGE_PARALLEL uses one extra phone (session phone, each exch creates its own), thus the number of phones used by usb dvice driver might increase. Possible solutions are: make read/write calls atomic (all other calls are atomic) and use EXCHANGE_ATOMIC, any other solution provided by changes to async_sess_t.
File:
1 edited

Legend:

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

    r2f0dd2a r7e1b130  
    2626 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    2727 */
    28 
    2928/** @addtogroup libusbhost
    3029 * @{
     
    4140 *
    4241 * @param[in] instance Device manager structure to use.
    43  * @param[in] speed Speed of the device requiring address.
    4442 * @return Free address, or error code.
    4543 */
     
    133131 * @param[in] handle Devman handle of the device.
    134132 * @return Error code.
     133 * @note Won't accept binding for default address.
    135134 */
    136135int usb_device_manager_bind_address(usb_device_manager_t *instance,
     
    184183}
    185184/*----------------------------------------------------------------------------*/
    186 /** Find USB address associated with the device
     185/** Find USB address associated with the device.
    187186 *
    188187 * @param[in] instance Device manager structure to use.
     
    208207/*----------------------------------------------------------------------------*/
    209208/** Find devman handle and speed assigned to USB address.
    210  * Intentionally refuse to work on default address.
    211209 *
    212210 * @param[in] instance Device manager structure to use.
Note: See TracChangeset for help on using the changeset viewer.