Electronic Components Datasheet Search
  New Zealand  ▼
ALLDATASHEET.CO.NZ

X  

UM0851 Datasheet(PDF) 73 Page - STMicroelectronics

Part # UM0851
Description  SPEAr is a family of highly customizable ARM-based embedded
PDF  245 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  STMICROELECTRONICS [STMicroelectronics]
Direct Link  http://www.st.com
Logo STMICROELECTRONICS - STMicroelectronics

UM0851 Datasheet(HTML) 73 Page - STMicroelectronics

Back Button UM0851 Datasheet HTML 69Page - STMicroelectronics UM0851 Datasheet HTML 70Page - STMicroelectronics UM0851 Datasheet HTML 71Page - STMicroelectronics UM0851 Datasheet HTML 72Page - STMicroelectronics UM0851 Datasheet HTML 73Page - STMicroelectronics UM0851 Datasheet HTML 74Page - STMicroelectronics UM0851 Datasheet HTML 75Page - STMicroelectronics UM0851 Datasheet HTML 76Page - STMicroelectronics UM0851 Datasheet HTML 77Page - STMicroelectronics Next Button
Zoom Inzoom in Zoom Outzoom out
 73 / 245 page
background image
UM0851
Communication device drivers
Doc ID 16604 Rev 2
73/245
Registering to composite device
/* usb composite gadget need to fill following structure */
static struct usb_composite_driver zero_driver = {
.name = "zero";
.dev = &device_desc;
.strings = dev_strings;
.bind = zero_bind; /* callback called on successful registration */
};
/* Following are the APIs for register/un-register */
usb_composite_register(&zero_driver);
usb_composite_unregister(&zero_driver);
Adding configuration
Any composite device can have multiple configurations with multiple interfaces, each
interface (or a group of interface) representing a unique function. You can use the following
API to add a configuration.
static struct usb_configuration sourcesink_driver = {
.label = "source/sink",
.strings = sourcesink_strings,
.bind= sourcesink_bind_config, /* callback called during registration to finish
other configurations */
.setup = sourcesink_setup, /* callback to handle control requests */
.bConfigurationValue = 3,
.bmAttributes = USB_CONFIG_ATT_SELFPOWER,
.bMaxPower = 1,/* 2 mA, minimal */
};
/* following function registered earlier, is called during registration */
static int __init zero_bind(struct usb_composite_dev *cdev)
{
...
usb_add_config(cdev, &sourcesink_driver);
...
}
Adding function
After adding configurations, you also need to define functions supported in each
configuration. We can add several functions as per our composite device design.
You can use the following mechanism to add functions to configurations.
/* Following function registered earlier is called during registration */
static int sourcesink_bind_config(struct usb_configuration *c)
{
struct f_sourcesink*ss;
int
status;
ss = kzalloc(sizeof *ss, GFP_KERNEL);
if (!ss)
return -ENOMEM;
ss->function.name = "source/sink";
ss->function.descriptors = fs_source_sink_descs;
ss->function.bind = sourcesink_bind;
ss->function.unbind = sourcesink_unbind;
ss->function.set_alt = sourcesink_set_alt;



Html Pages

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100  ...More


Datasheet Download

Go To PDF Page


Link URL



Does ALLDATASHEET help your business so far?  [ DONATE ] 

About Alldatasheet   |   Advertisement   |   Contact us   |   Privacy Policy   |   Link to Datasheet    |   Link Exchange   |   Manufacturer List
All Rights Reserved©Alldatasheet.com


Mirror Sites
English : Alldatasheet.com  |   English : Alldatasheet.net  |   Chinese : Alldatasheetcn.com  |   German : Alldatasheetde.com  |   Japanese : Alldatasheet.jp
Russian : Alldatasheetru.com  |   Korean : Alldatasheet.co.kr  |   Spanish : Alldatasheet.es  |   French : Alldatasheet.fr  |   Italian : Alldatasheetit.com
Portuguese : Alldatasheetpt.com  |   Polish : Alldatasheet.pl  |   Vietnamese : Alldatasheet.vn
Indian : Alldatasheet.in  |   Mexican : Alldatasheet.com.mx  |   British : Alldatasheet.co.uk  |   New Zealand : Alldatasheet.co.nz
Family Site : ic2ic.com  |   icmetro.com