Changes in uspace/lib/usbdev/include/usb/dev/driver.h [7fc260ff:70452dd4] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/usbdev/include/usb/dev/driver.h
r7fc260ff r70452dd4 43 43 usb_standard_device_descriptor_t device; 44 44 /** Full configuration descriptor of current configuration. */ 45 constuint8_t *configuration;45 uint8_t *configuration; 46 46 size_t configuration_size; 47 47 } usb_device_descriptors_t; … … 53 53 typedef struct { 54 54 /** Interface descriptor. */ 55 constusb_standard_interface_descriptor_t *interface;55 usb_standard_interface_descriptor_t *interface; 56 56 /** Pointer to start of descriptor tree bound with this interface. */ 57 constuint8_t *nested_descriptors;57 uint8_t *nested_descriptors; 58 58 /** Size of data pointed by nested_descriptors in bytes. */ 59 59 size_t nested_descriptors_size; … … 72 72 /** USB device structure. */ 73 73 typedef struct { 74 /** Connection backing the pipes.75 * Typically, you will not need to use this attribute at all.76 */77 usb_device_connection_t wire;78 74 /** The default control pipe. */ 79 75 usb_pipe_t ctrl_pipe; … … 91 87 int interface_no; 92 88 93 /** Alternative interfaces. */ 94 usb_alternate_interfaces_t alternate_interfaces; 89 /** Alternative interfaces. 90 * Set to NULL when the driver controls whole device 91 * (i.e. more (or any) interfaces). 92 */ 93 usb_alternate_interfaces_t *alternate_interfaces; 95 94 96 95 /** Some useful descriptors. */ 97 96 usb_device_descriptors_t descriptors; 98 97 99 /** Generic DDF device backing this one. DO NOT TOUCH!*/98 /** Generic DDF device backing this one. */ 100 99 ddf_dev_t *ddf_dev; 101 100 /** Custom driver data. … … 104 103 */ 105 104 void *driver_data; 105 106 /** Connection backing the pipes. 107 * Typically, you will not need to use this attribute at all. 108 */ 109 usb_device_connection_t wire; 106 110 } usb_device_t; 107 111 108 112 /** USB driver ops. */ 109 113 typedef struct { 110 /** Callback when a new device was added to the system. */ 111 int (*device_add)(usb_device_t *); 112 /** Callback when a device is about to be removed from the system. */ 113 int (*device_rem)(usb_device_t *); 114 /** Callback when a device was removed from the system. */ 115 int (*device_gone)(usb_device_t *); 114 /** Callback when new device is about to be controlled by the driver. */ 115 int (*add_device)(usb_device_t *); 116 116 } usb_driver_ops_t; 117 117 … … 152 152 \endcode 153 153 */ 154 constusb_endpoint_description_t **endpoints;154 usb_endpoint_description_t **endpoints; 155 155 /** Driver ops. */ 156 constusb_driver_ops_t *ops;156 usb_driver_ops_t *ops; 157 157 } usb_driver_t; 158 158 159 int usb_driver_main(const usb_driver_t *); 160 161 int usb_device_init(usb_device_t *, ddf_dev_t *, 162 const usb_endpoint_description_t **, const char **); 163 void usb_device_deinit(usb_device_t *); 159 int usb_driver_main(usb_driver_t *); 164 160 165 161 int usb_device_select_interface(usb_device_t *, uint8_t, 166 constusb_endpoint_description_t **);162 usb_endpoint_description_t **); 167 163 168 164 int usb_device_retrieve_descriptors(usb_pipe_t *, usb_device_descriptors_t *); 169 void usb_device_release_descriptors(usb_device_descriptors_t *); 165 int usb_device_create_pipes(ddf_dev_t *, usb_device_connection_t *, 166 usb_endpoint_description_t **, uint8_t *, size_t, int, int, 167 usb_endpoint_mapping_t **, size_t *); 168 int usb_device_destroy_pipes(ddf_dev_t *, usb_endpoint_mapping_t *, size_t); 169 int usb_device_create(ddf_dev_t *, usb_endpoint_description_t **, usb_device_t **, const char **); 170 void usb_device_destroy(usb_device_t *); 170 171 171 int usb_device_create_pipes(const ddf_dev_t *, usb_device_connection_t *, 172 const usb_endpoint_description_t **, const uint8_t *, size_t, int, int, 173 usb_endpoint_mapping_t **, size_t *); 174 int usb_device_destroy_pipes(const ddf_dev_t *, usb_endpoint_mapping_t *, size_t); 172 size_t usb_interface_count_alternates(uint8_t *, size_t, uint8_t); 173 int usb_alternate_interfaces_create(uint8_t *, size_t, int, 174 usb_alternate_interfaces_t **); 175 175 176 void * usb_device_data_alloc(usb_device_t *, size_t);177 178 size_t usb_interface_count_alternates(const uint8_t *, size_t, uint8_t);179 int usb_alternate_interfaces_init(usb_alternate_interfaces_t *,180 const uint8_t *, size_t, int);181 void usb_alternate_interfaces_deinit(usb_alternate_interfaces_t *);182 176 #endif 183 177 /**
Note:
See TracChangeset
for help on using the changeset viewer.