Lines Matching +full:remote +full:- +full:endpoint +full:- +full:label
22 device requests in table 9-3 from the universal serial bus specification
42 See :zephyr:code-sample:`usb-audio-headphones-microphone` and
43 :zephyr:code-sample:`usb-audio-headset` samples for reference.
50 in the Bluetooth specification and consists only of an interface with the endpoint
53 * HCI commands through control endpoint (host-to-device only)
54 * HCI events through interrupt IN endpoint
67 See :zephyr:code-sample:`bluetooth_hci_usb` sample for reference.
86 ring buffer is full only if the hw-flow-control property is enabled and
87 called from a non-ISR context.
90 :dtcompatible:`zephyr,cdc-acm-uart`.
101 node label. Often, CDC ACM UART is described in a devicetree overlay file
104 .. code-block:: devicetree
108 compatible = "zephyr,cdc-acm-uart";
109 label = "CDC_ACM_0";
113 Sample :zephyr:code-sample:`usb-cdc-acm` has similar overlay files.
120 -------------------------
124 A similar overlay file is used by the :zephyr:code-sample:`usb-cdc-acm-console` sample.
126 .. code-block:: devicetree
136 compatible = "zephyr,cdc-acm-uart";
137 label = "CDC_ACM_0";
144 .. code-block:: c
161 -----------------------
164 backend for other subsystems by setting :ref:`devicetree-chosen-nodes`
170 * ``zephyr,bt-c2h-uart`` used in Bluetooth,
171 for example see :zephyr:code-sample:`bluetooth_hci_uart`
172 * ``zephyr,ot-uart`` used in OpenThread,
173 for example see :zephyr:code-sample:`openthread-coprocessor`
174 * ``zephyr,shell-uart`` used by shell for serial backend,
176 * ``zephyr,uart-mcumgr`` used by :zephyr:code-sample:`smp-svr` sample
179 ---------------------------------
190 To mitigate the issue, Zephyr CDC ACM implementation arms IN endpoint with ZLP
215 See :zephyr:code-sample:`usb-dfu` sample for reference.
234 For the HID class interface, an IN interrupt endpoint is required for each instance,
235 an OUT interrupt endpoint is optional. Thus, the minimum implementation requirement
238 .. code-block:: c
291 return -ENODEV;
306 If the application wishes to receive output reports via the OUT interrupt endpoint,
314 See :zephyr:code-sample:`usb-hid-mouse` sample for reference.
319 MSC follows Bulk-Only Transport specification and uses :ref:`disk_access_api` to
326 host. Flash, RAM, and SDMMC/MMC disk drivers use node property ``disk-name`` to
333 should be the same as ``disk-name`` property.
335 .. code-block:: devicetree
337 /delete-node/ &storage_partition;
341 compatible = "fixed-partitions";
342 #address-cells = <1>;
343 #size-cells = <1>;
346 label = "storage";
354 compatible = "zephyr,flash-disk";
356 disk-name = "NAND";
357 cache-size = <4096>;
361 The ``disk-property`` "NAND" may be confusing, but it is simply how some file
364 :zephyr:code-sample:`usb-mass` sample for reference.
370 Ethernet connection between the remote (USB host) and Zephyr network support.
376 See :zephyr:code-sample:`zperf` or :zephyr:code-sample:`socket-dumb-http-server` for reference.
378 such as :zephyr_file:`samples/net/zperf/overlay-netusb.conf`.
392 See :zephyr:code-sample:`webusb` sample for reference.
394 Implementing a non-standard USB class
402 * USB Endpoint configuration table
404 * Endpoint callbacks
411 :start-after: usb.rst config structure start
412 :end-before: usb.rst config structure end
415 Endpoint configuration:
419 :start-after: usb.rst endpoint configuration start
420 :end-before: usb.rst endpoint configuration end
427 :start-after: usb.rst device config data start
428 :end-before: usb.rst device config data end
440 :start-after: usb.rst vendor handler start
441 :end-before: usb.rst vendor handler end
449 Interface number and endpoint address assignment
456 endpoint is required to implement a HID class device, and no endpoints are
461 With Zephyr RTOS USB support, various combinations are possible with built-in USB
463 of available device endpoints. Each device endpoint is uniquely addressable.
464 The endpoint address is a combination of endpoint direction and endpoint
465 number, a four-bit value. Endpoint number zero is used for the default control
469 support the maximum number of endpoints and all endpoint types. For example, a
470 device controller might support one IN and one OUT isochronous endpoint, but
471 only for endpoint number 8, resulting in endpoint addresses 0x88 and 0x08.
472 Also, one controller may be able to have IN/OUT endpoints on the same endpoint
473 number, interrupt IN endpoint 0x81 and bulk OUT endpoint 0x01, while the other
474 may only be able to handle one endpoint per endpoint number. Information about
475 the number of interfaces, interface associations, endpoint types, and addresses
476 is provided to the host by the interface, interface specific, and endpoint
479 Host driver for specific function, uses interface and endpoint descriptor to
480 obtain endpoint addresses, types, and other properties. This allows function
481 host drivers to be generic, for example, a multi-function device consisting of
485 Interface and endpoint descriptors of built-in USB class/function
487 endpoint addresses assigned in ascending order. During initialization,
489 a given configuration. Endpoint addresses are reassigned based on controller
490 capabilities, since certain endpoint combinations are not possible with every
493 actual interface and endpoint descriptor values at runtime.
496 controller, such as the number of endpoints and the size of the endpoint FIFOs.
499 Kernel, where the function driver does not read interface and endpoint
500 descriptors to check interface numbers or endpoint addresses, but instead uses
507 must not use hardcoded interface numbers and endpoint addresses.
508 It is not possible to disable endpoint reassignment in Zephyr RTOS, which may
509 prevent you from implementing a hardware-clone firmware. Instead, if possible,
511 and endpoint descriptor.
522 .. code-block:: console
524 west build -t run
528 .. code-block:: console
530 $ usbip list -r localhost
533 - 127.0.0.1
534 1-1: unknown vendor : unknown product (2fe3:0100)
535 : /sys/devices/pci0000:00/0000:00:01.2/usb1/1-1
537 : 0 - Vendor Specific Class / unknown subclass / unknown protocol (ff/00/00)
541 .. code-block:: console
543 $ sudo usbip attach -r localhost -b 1-1
548 .. code-block:: console
555 7-1 -> usbip://localhost:3240/1-1
556 -> remote bus/dev 001/002
557 $ lsusb -d 2fe3:0100
567 Each USB :zephyr:code-sample-category:`sample<usb>` has its own unique Product ID.
569 Steering Committee, may allocate other USB Product IDs based on well-motivated
574 +----------------------------------------------------+--------+
577 | :zephyr:code-sample:`usb-cdc-acm` | 0x0001 |
578 +----------------------------------------------------+--------+
579 | Reserved (previously: usb-cdc-acm-composite) | 0x0002 |
580 +----------------------------------------------------+--------+
581 | Reserved (previously: usb-hid-cdc) | 0x0003 |
582 +----------------------------------------------------+--------+
583 | :zephyr:code-sample:`usb-cdc-acm-console` | 0x0004 |
584 +----------------------------------------------------+--------+
585 | :zephyr:code-sample:`usb-dfu` (Run-Time) | 0x0005 |
586 +----------------------------------------------------+--------+
587 | Reserved (previously: usb-hid) | 0x0006 |
588 +----------------------------------------------------+--------+
589 | :zephyr:code-sample:`usb-hid-mouse` | 0x0007 |
590 +----------------------------------------------------+--------+
591 | :zephyr:code-sample:`usb-mass` | 0x0008 |
592 +----------------------------------------------------+--------+
593 | :zephyr:code-sample:`testusb-app` | 0x0009 |
594 +----------------------------------------------------+--------+
595 | :zephyr:code-sample:`webusb` | 0x000A |
596 +----------------------------------------------------+--------+
597 | :zephyr:code-sample:`bluetooth_hci_usb` | 0x000B |
598 +----------------------------------------------------+--------+
600 +----------------------------------------------------+--------+
601 | Reserved (previously: wpan-usb) | 0x000D |
602 +----------------------------------------------------+--------+
603 | :zephyr:code-sample:`uac2-explicit-feedback` | 0x000E |
604 +----------------------------------------------------+--------+
605 | :zephyr:code-sample:`uac2-implicit-feedback` | 0x000F |
606 +----------------------------------------------------+--------+
607 | :zephyr:code-sample:`usb-dfu` (DFU Mode) | 0xFFFF |
608 +----------------------------------------------------+--------+