Home
last modified time | relevance | path

Searched +full:interrupt +full:- +full:endpoint (Results 1 – 25 of 93) sorted by relevance

1234

/Zephyr-latest/drivers/usb/device/
Dusb_dc_sam_usbhs.c4 * SPDX-License-Identifier: Apache-2.0
30 * The new Atmel DFP headers provide mode-specific interrupt register field
54 BUILD_ASSERT(USB_MAXIMUM_SPEED, "low-speed is not supported");
75 PMC->CKGR_UCKR |= CKGR_UCKR_UPLLEN; in usb_dc_enable_clock()
78 while (!(PMC->PMC_SR & PMC_SR_LOCKU)) { in usb_dc_enable_clock()
83 if ((USBHS->USBHS_DEVCTRL & USBHS_DEVCTRL_SPDCONF_Msk) in usb_dc_enable_clock()
86 PMC->PMC_MCKR &= ~PMC_MCKR_UPLLDIV2; in usb_dc_enable_clock()
87 PMC->PMC_USB = PMC_USB_USBDIV(9) | PMC_USB_USBS; in usb_dc_enable_clock()
90 PMC->PMC_SCER |= PMC_SCER_USBCLK; in usb_dc_enable_clock()
98 PMC->PMC_SCER &= ~PMC_SCER_USBCLK; in usb_dc_disable_clock()
[all …]
Dusb_dc_sam_usbc.c4 * SPDX-License-Identifier: Apache-2.0
28 * @brief USB Driver Control Endpoint Finite State Machine states
30 * FSM states to keep tracking of control endpoint hidden states.
122 if (regs->UESTA[ep_idx] != dev_ep_sta_dbg[0][ep_idx]) { in usb_dc_sam_usbc_isr_sta_dbg()
123 dev_ep_sta_dbg[0][ep_idx] = regs->UESTA[ep_idx]; in usb_dc_sam_usbc_isr_sta_dbg()
128 regs->UDCON, regs->UDINT, regs->UDINTE, in usb_dc_sam_usbc_isr_sta_dbg()
129 regs->UECON[ep_idx], regs->UESTA[ep_idx], in usb_dc_sam_usbc_isr_sta_dbg()
136 regs->UDCON, regs->UDINT, regs->UDINTE, in usb_dc_sam_usbc_isr_sta_dbg()
137 regs->UECON[ep_idx], regs->UESTA[ep_idx]); in usb_dc_sam_usbc_isr_sta_dbg()
155 return USBC->USBCON & USBC_USBCON_FRZCLK; in usb_dc_sam_usbc_is_frozen_clk()
[all …]
Dusb_dc_kinetis.c1 /* usb_dc_kinetis.c - Kinetis USBFSOTG usb device driver */
6 * SPDX-License-Identifier: Apache-2.0
44 * Buffer Descriptor (BD) entry provides endpoint buffer control
45 * information for USBFS controller. Every endpoint direction requires
75 * four BD entries per endpoint and 512 bytes of memory.
138 * endpoint address and the odd bit.
152 SIM->SOPT1 |= SIM_SOPT1_USBREGEN_MASK; in kinetis_usb_init()
155 USB0->USBTRC0 |= USB_USBTRC0_USBRESET_MASK; in kinetis_usb_init()
158 USB0->CTL = 0; in kinetis_usb_init()
160 USB0->CTL |= USB_CTL_USBENSOFEN_MASK; in kinetis_usb_init()
[all …]
Dusb_dc_dw.c5 * SPDX-License-Identifier: Apache-2.0
56 /* FIXME: The actual MPS depends on endpoint type and bus speed. */
59 /* Number of SETUP back-to-back packets */
75 * USB endpoint private structure.
82 usb_dc_ep_callback cb;/* Endpoint callback function */
104 const struct pinctrl_dev_config *const pcfg = config->pcfg; in usb_dw_init_pinctrl()
189 "0x%x", base->gotgctl, base->gotgint, base->gahbcfg); in usb_dw_reg_dump()
191 base->gusbcfg, base->gintsts, base->gintmsk); in usb_dw_reg_dump()
193 base->dcfg, base->dctl, base->dsts); in usb_dw_reg_dump()
195 base->diepmsk, base->doepmsk, base->daint); in usb_dw_reg_dump()
[all …]
Dusb_dc_sam0.c4 * SPDX-License-Identifier: Apache-2.0
32 /* The endpoint size stored in USB.PCKSIZE.SIZE */
76 /* Handles interrupts on an endpoint */
80 UsbDevice *regs = &REGS->DEVICE; in usb_sam0_ep_isr()
81 UsbDeviceEndpoint *endpoint = &regs->DeviceEndpoint[ep]; in usb_sam0_ep_isr() local
82 uint32_t intflag = endpoint->EPINTFLAG.reg; in usb_sam0_ep_isr()
84 endpoint->EPINTFLAG.reg = intflag; in usb_sam0_ep_isr()
88 data->ep_cb[0][ep](ep, USB_DC_EP_SETUP); in usb_sam0_ep_isr()
93 data->ep_cb[0][ep](ep, USB_DC_EP_DATA_OUT); in usb_sam0_ep_isr()
98 data->ep_cb[1][ep](ep | USB_SAM0_IN_EP, USB_DC_EP_DATA_IN); in usb_sam0_ep_isr()
[all …]
/Zephyr-latest/subsys/usb/device/class/hid/
DKconfig4 # SPDX-License-Identifier: Apache-2.0
22 default-count = 1
26 module-str = usb hid
30 bool "USB HID Device Interrupt OUT Endpoint"
32 Enable USB HID Device Interrupt OUT Endpoint.
35 int "USB HID Device Interrupt Endpoint size"
38 USB HID Device interrupt endpoint size
/Zephyr-latest/subsys/usb/device/class/netusb/
DKconfig4 # SPDX-License-Identifier: Apache-2.0
18 Class (CDC) USB protocol specified by USB-IF.
42 CDC ECM class interrupt endpoint size
49 CDC ECM class bulk endpoint size
74 RNDIS interrupt endpoint size
81 RNDIS bulk endpoint size
88 module-dep = LOG
89 module-str = USB Device Network log level
/Zephyr-latest/dts/bindings/usb/
Drenesas,smartbond-usbd.yaml2 # SPDX-License-Identifier: Apache-2.0
6 compatible: "renesas,smartbond-usbd"
8 include: usb-ep.yaml
11 dma-min-transfer-size:
16 ep-out-buf-size:
20 Buffer size for OUT end points 0-3.
22 fifo-read-threshold:
25 RX FIFO is 64 bytes. When endpoint size is greater then 64,
26 FIFO warning interrupt is enabled to allow read incoming data
28 It is possible to stay in interrupt reading whole packet at once,
[all …]
/Zephyr-latest/include/zephyr/drivers/usb/
Dusb_dc.h1 /* usb_dc.h - USB device controller driver interface */
6 * SPDX-License-Identifier: Apache-2.0
63 * @brief USB Endpoint Callback Status Codes
65 * Status Codes reported by the registered endpoint callback.
77 * @brief USB Endpoint Transfer Type
80 /** Control type endpoint */
82 /** Isochronous type endpoint */
84 /** Bulk type endpoint */
86 /** Interrupt type endpoint */
91 * @brief USB Endpoint Synchronization Type
[all …]
Dudc.h2 * Copyright (c) 2021-2022 Nordic Semiconductor ASA
4 * SPDX-License-Identifier: Apache-2.0
22 * @brief Maximum packet size of control endpoint supported by the controller.
47 /** Maximum packet size for control endpoint */
66 * USB device controller endpoint capabilities
69 /** Maximum packet size of the endpoint buffer */
71 /** Control transfer capable endpoint (for completeness) */
73 /** Interrupt transfer capable endpoint */
74 uint32_t interrupt : 1; member
75 /** Bulk transfer capable endpoint */
[all …]
/Zephyr-latest/include/zephyr/drivers/pcie/
Dpcie.h4 * SPDX-License-Identifier: Apache-2.0
19 #include <zephyr/dt-bindings/pcie/pcie.h>
30 * @brief A unique PCI(e) endpoint (bus, device, function).
32 * A PCI(e) endpoint is uniquely identified topologically using a
34 * in include/dt-bindings/pcie/pcie.h: see PCIE_BDF() and friends, since
43 * The PCIE_CONF_ID register for each endpoint is a (vendor ID, device ID)
44 * pair, which is meant to tell the system what the PCI(e) endpoint is. Again,
45 * look to PCIE_ID_* macros in include/dt-bindings/pcie/pcie.h for more.
117 * Initialize PCIe-related information within a specific instance of
158 * These functions are arch-, board-, or SoC-specific.
[all …]
Dmsi.h4 * SPDX-License-Identifier: Apache-2.0
65 * @brief Allocate vector(s) for the endpoint MSI message(s)
67 * @param bdf the target PCI endpoint
68 * @param priority the MSI vectors base interrupt priority
82 * @param bdf the target PCI endpoint
84 * @param routine Interrupt service routine
86 * @param flags Arch-specific IRQ configuration flag
106 * @return A (32-bit) value for the MSI MAP register.
119 * @return A (16-bit) value for MSI MDR register.
125 * @brief Configure the given PCI endpoint to generate MSIs.
[all …]
/Zephyr-latest/tests/drivers/build_all/video/
Dmimxrt1170_evk_mimxrt1176_cm7.overlay4 * SPDX-License-Identifier: Apache-2.0
7 * with real-world devicetree nodes, to allow these tests to run on
11 #include <zephyr/dt-bindings/video/video-interfaces.h>
15 #address-cells = <1>;
16 #size-cells = <1>;
20 gpio-controller;
22 #gpio-cells = <0x2>;
27 #address-cells = <1>;
28 #size-cells = <0>;
32 clock-frequency = <100000>;
[all …]
/Zephyr-latest/dts/bindings/usb/uac2/
Dzephyr,uac2.yaml2 # SPDX-License-Identifier: Apache-2.0
20 full-speed:
23 True if this instance is allowed to operate at Full-Speed.
25 high-speed:
28 True if this instance is allowed to operate at High-Speed.
30 audio-function:
36 dt-bindings/usb/audio.h.
38 interrupt-endpoint:
41 Enable to support an optional interrupt endpoint to inform the Host about
44 latency-control:
[all …]
/Zephyr-latest/drivers/usb/common/nrf_usbd_common/
Dnrf_usbd_common.c2 * Copyright (c) 2016 - 2023, Nordic Semiconductor ASA
4 * SPDX-License-Identifier: Apache-2.0
40 * result is used to check whatever endpoint was busy.
55 /* Anomaly 211 - Device remains in SUSPEND too long when host resumes
71 * @brief Assert endpoint number validity.
74 * Generates assertion if endpoint number is not valid.
76 * @param ep Endpoint number to validity check.
85 * @brief Lowest position of bit for IN endpoint.
87 * The first bit position corresponding to IN endpoint.
93 * @brief Lowest position of bit for OUT endpoint.
[all …]
Dnrf_usbd_common.h2 * Copyright (c) 2016 - 2023, Nordic Semiconductor ASA
4 * SPDX-License-Identifier: Apache-2.0
28 * @brief Number of bytes in the endpoint.
36 * This number would be shared between IN and OUT endpoint.
37 * It may be also assigned totaly to one endpoint.
44 * @name Macros for creating endpoint identifiers.
46 * Auxiliary macros for creating endpoint identifiers compatible with the USB specification.
51 * @brief Create identifier for IN endpoint.
53 * Simple macro to create IN endpoint identifier for given endpoint number.
55 * @param[in] n Endpoint number.
[all …]
/Zephyr-latest/include/zephyr/usb/
Dusb_ch9.h4 * SPDX-License-Identifier: Apache-2.0
39 /** USB Setup Data packet defined in spec. Table 9-2 */
51 /** USB Setup packet RequestType Direction values (from Table 9-2) */
55 /** USB Setup packet RequestType Type values (from Table 9-2) */
61 /** USB Setup packet RequestType Recipient values (from Table 9-2) */
82 return setup->RequestType.direction == USB_REQTYPE_DIR_TO_HOST; in usb_reqtype_is_to_host()
93 return setup->RequestType.direction == USB_REQTYPE_DIR_TO_DEVICE; in usb_reqtype_is_to_device()
96 /** USB Standard Request Codes defined in spec. Table 9-4 */
109 /** Descriptor Types defined in spec. Table 9-5 */
118 /** Additional Descriptor Types defined in USB 3 spec. Table 9-5 */
[all …]
/Zephyr-latest/include/zephyr/usb/class/
Dusb_hid.h5 * SPDX-License-Identifier: Apache-2.0
54 * the current interrupt IN transfer has completed. This can
55 * be used to wait for the endpoint to go idle or to trigger
68 * @param[in] op Pointer to USB HID device interrupt struct
76 * @brief Write to USB HID interrupt endpoint buffer
91 * @brief Read from USB HID interrupt endpoint buffer
/Zephyr-latest/tests/lib/devicetree/api/
Dapp.overlay4 * SPDX-License-Identifier: Apache-2.0
9 * with real-world devicetree nodes, to allow these tests to run on
15 test-alias = &test_nodelabel;
28 #address-cells = < 0x1 >;
29 #size-cells = < 0x1 >;
30 interrupt-parent = <&test_intc>;
32 test_cpu_intc: interrupt-controller {
33 compatible = "vnd,cpu-intc";
34 #address-cells = <0>;
35 #interrupt-cells = < 0x01 >;
[all …]
/Zephyr-latest/doc/connectivity/usb/device/
Dusb_device.rst22 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`.
[all …]
/Zephyr-latest/soc/intel/intel_adsp/ace/include/ace15_mtpm/
Dadsp_ipc_regs.h2 * SPDX-License-Identifier: Apache-2.0
13 * Inter Processor Communication - used for sending interrupts to and receiving
15 * In general there is one of these blocks instantiated for each endpoint of a
57 * peer-to-peer communication between DSP cores - master to slave and backwards.
58 * Given endpoint can be accessed by:
67 * Each connection is organized into two "agents" ("A" - master core and "B" - slave core).
68 * Each agent is wired to its own interrupt.
69 * Agents array represents mutually exclusive IPC endpoint access:
70 * (A=1/B=0) - agents[0].
71 * (A=0/B=1) - agents[1].
/Zephyr-latest/soc/intel/intel_adsp/ace/include/ace20_lnl/
Dadsp_ipc_regs.h2 * SPDX-License-Identifier: Apache-2.0
13 * Inter Processor Communication - used for sending interrupts to and receiving
15 * In general there is one of these blocks instantiated for each endpoint of a
57 * peer-to-peer communication between DSP cores - master to slave and backwards.
58 * Given endpoint can be accessed by:
67 * Each connection is organized into two "agents" ("A" - master core and "B" - slave core).
68 * Each agent is wired to its own interrupt.
69 * Agents array represents mutually exclusive IPC endpoint access:
70 * (A=1/B=0) - agents[0].
71 * (A=0/B=1) - agents[1].
/Zephyr-latest/soc/intel/intel_adsp/ace/include/ace30/
Dadsp_ipc_regs.h2 * SPDX-License-Identifier: Apache-2.0
13 * Inter Processor Communication - used for sending interrupts to and receiving
15 * In general there is one of these blocks instantiated for each endpoint of a
56 * peer-to-peer communication between DSP cores - master to slave and backwards.
57 * Given endpoint can be accessed by:
66 * Each connection is organized into two "agents" ("A" - master core and "B" - slave core).
67 * Each agent is wired to its own interrupt.
68 * Agents array represents mutually exclusive IPC endpoint access:
69 * (A=1/B=0) - agents[0].
70 * (A=0/B=1) - agents[1].
/Zephyr-latest/drivers/usb/udc/
Dudc_kinetis.c5 * SPDX-License-Identifier: Apache-2.0
43 * There is no real advantage to change control endpoint size
50 * Buffer Descriptor (BD) entry provides endpoint buffer control
51 * information for USBFSOTG controller. Every endpoint direction requires
84 * per endpoint and 512 bytes of memory.
99 /* OUT transaction for specific endpoint is finished */
101 /* IN transaction for specific endpoint is finished */
107 /* Structure for driver's endpoint events */
132 /* Get buffer descriptor (BD) based on endpoint address */
137 const struct usbfsotg_config *config = dev->config; in usbfsotg_get_ebd()
[all …]
Dudc_skeleton.c4 * SPDX-License-Identifier: Apache-2.0
39 * non-volatile memory. This is usually accessed as
40 * const struct udc_skeleton_config *config = dev->config;
52 * Note that this is not accessible via dev->data, but as
89 if (cfg->stat.halted) { in udc_skeleton_ep_enqueue()
91 * It is fine to enqueue a transfer for a halted endpoint, in udc_skeleton_ep_enqueue()
95 * Always use the abbreviation 'ep' for the endpoint address in udc_skeleton_ep_enqueue()
96 * and 'ep_idx' or 'ep_num' for the endpoint number identifiers. in udc_skeleton_ep_enqueue()
100 LOG_DBG("ep 0x%02x halted", cfg->addr); in udc_skeleton_ep_enqueue()
109 * and must remove all requests from an endpoint queue
[all …]

1234