Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/usbhub/usbhub_private.h

    r5097bed4 rd493ac17  
    2727 */
    2828
    29 /** @addtogroup usb
     29/** @addtogroup drvusbhub
    3030 * @{
    3131 */
    3232/** @file
    33  * @brief Hub driver.
     33 * @brief Hub driver private definitions
    3434 */
    3535
     
    4242#include <adt/list.h>
    4343#include <bool.h>
    44 #include <driver.h>
    45 #include <futex.h>
     44#include <ddf/driver.h>
     45#include <fibril_synch.h>
    4646
     47#include <usb/classes/hub.h>
    4748#include <usb/usb.h>
    48 #include <usb/usbdrv.h>
    49 #include <usb/classes/hub.h>
    50 #include <usb/devreq.h>
    5149#include <usb/debug.h>
     50#include <usb/request.h>
    5251
    5352//************
     
    6160//************
    6261//
    63 // convenience debug printf
     62// convenience debug printf for usb hub
    6463//
    6564//************
    6665#define dprintf(level, format, ...) \
    67         usb_dprintf(NAME, (level), format "\n", ##__VA_ARGS__)
     66        usb_log_printf((level), format "\n", ##__VA_ARGS__)
     67
    6868
    6969/**
    70  * create hub structure instance
     70 * Create hub structure instance
    7171 *
    7272 * Set the address and port count information most importantly.
     
    7676 * @return
    7777 */
    78 usb_hub_info_t * usb_create_hub_info(device_t * device, int hc);
     78usb_hub_info_t * usb_create_hub_info(ddf_dev_t * device);
    7979
    80 /** list of hubs maanged by this driver */
     80/** List of hubs maanged by this driver */
    8181extern usb_general_list_t usb_hub_list;
    8282
    83 /** lock for hub list*/
    84 extern futex_t usb_hub_list_lock;
     83/** Lock for hub list*/
     84extern fibril_mutex_t usb_hub_list_lock;
    8585
    8686
    8787/**
    88  * perform complete control read transaction
     88 * Perform complete control read transaction
    8989 *
    90  * manages all three steps of transaction: setup, read and finalize
     90 * Manages all three steps of transaction: setup, read and finalize
    9191 * @param phone
    9292 * @param target
    93  * @param request request for data
    94  * @param rcvd_buffer received data
     93 * @param request Request packet
     94 * @param rcvd_buffer Received data
    9595 * @param rcvd_size
    96  * @param actual_size actual size of received data
     96 * @param actual_size Actual size of received data
    9797 * @return error code
    9898 */
     99/*
    99100int usb_drv_sync_control_read(
    100     int phone, usb_target_t target,
     101    usb_endpoint_pipe_t *pipe,
    101102    usb_device_request_setup_packet_t * request,
    102103    void * rcvd_buffer, size_t rcvd_size, size_t * actual_size
    103 );
     104);*/
    104105
    105106/**
    106  * perform complete control write transaction
     107 * Perform complete control write transaction
    107108 *
    108  * manages all three steps of transaction: setup, write and finalize
     109 * Manages all three steps of transaction: setup, write and finalize
    109110 * @param phone
    110111 * @param target
    111  * @param request request to send data
     112 * @param request Request packet to send data
    112113 * @param sent_buffer
    113114 * @param sent_size
    114115 * @return error code
    115116 */
    116 int usb_drv_sync_control_write(
    117     int phone, usb_target_t target,
     117/*int usb_drv_sync_control_write(
     118    usb_endpoint_pipe_t *pipe,
    118119    usb_device_request_setup_packet_t * request,
    119120    void * sent_buffer, size_t sent_size
    120 );
     121);*/
    121122
    122123/**
    123  * set the device request to be a get hub descriptor request.
     124 * Set the device request to be a get hub descriptor request.
    124125 * @warning the size is allways set to USB_HUB_MAX_DESCRIPTOR_SIZE
    125126 * @param request
     
    137138}
    138139
    139 static inline int usb_hub_clear_port_feature(int hc, usb_address_t address,
     140/**
     141 * Clear feature on hub port.
     142 *
     143 * @param hc Host controller telephone
     144 * @param address Hub address
     145 * @param port_index Port
     146 * @param feature Feature selector
     147 * @return Operation result
     148 */
     149static inline int usb_hub_clear_port_feature(usb_endpoint_pipe_t *pipe,
    140150    int port_index,
    141151    usb_hub_class_feature_t feature) {
    142         usb_target_t target = {
    143                 .address = address,
    144                 .endpoint = 0
    145         };
     152       
    146153        usb_device_request_setup_packet_t clear_request = {
    147154                .request_type = USB_HUB_REQ_TYPE_CLEAR_PORT_FEATURE,
     
    151158        };
    152159        clear_request.value = feature;
    153         return usb_drv_psync_control_write(hc, target, &clear_request,
     160        return usb_endpoint_pipe_control_write(pipe, &clear_request,
    154161            sizeof(clear_request), NULL, 0);
    155162}
    156163
     164/**
     165 * @brief create uint8_t array with serialized descriptor
     166 *
     167 * @param descriptor
     168 * @return newly created serializd descriptor pointer
     169 */
     170void * usb_serialize_hub_descriptor(usb_hub_descriptor_t * descriptor);
     171
     172/**
     173 * @brief create deserialized desriptor structure out of serialized descriptor
     174 *
     175 * The serialized descriptor must be proper usb hub descriptor,
     176 * otherwise an eerror might occur.
     177 *
     178 * @param sdescriptor serialized descriptor
     179 * @return newly created deserialized descriptor pointer
     180 */
     181usb_hub_descriptor_t * usb_deserialize_hub_desriptor(void * sdescriptor);
    157182
    158183
Note: See TracChangeset for help on using the changeset viewer.