Zephyr API Documentation  3.4.0
A Scalable Open Source RTOS
3.4.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
usbd_class_api Struct Reference

USB device support class instance API. More...

#include <usbd.h>

Data Fields

void(* feature_halt )(struct usbd_class_node *const node, uint8_t ep, bool halted)
 
void(* update )(struct usbd_class_node *const node, uint8_t iface, uint8_t alternate)
 
int(* control_to_dev )(struct usbd_class_node *const node, const struct usb_setup_packet *const setup, const struct net_buf *const buf)
 
int(* control_to_host )(struct usbd_class_node *const node, const struct usb_setup_packet *const setup, struct net_buf *const buf)
 
int(* request )(struct usbd_class_node *const node, struct net_buf *buf, int err)
 
void(* suspended )(struct usbd_class_node *const node)
 
void(* resumed )(struct usbd_class_node *const node)
 
void(* enable )(struct usbd_class_node *const node)
 
void(* disable )(struct usbd_class_node *const node)
 
int(* init )(struct usbd_class_node *const node)
 
void(* shutdown )(struct usbd_class_node *const node)
 

Detailed Description

USB device support class instance API.

Field Documentation

◆ control_to_dev

int(* usbd_class_api::control_to_dev) (struct usbd_class_node *const node, const struct usb_setup_packet *const setup, const struct net_buf *const buf)

USB control request handler to device

◆ control_to_host

int(* usbd_class_api::control_to_host) (struct usbd_class_node *const node, const struct usb_setup_packet *const setup, struct net_buf *const buf)

USB control request handler to host

◆ disable

void(* usbd_class_api::disable) (struct usbd_class_node *const node)

Class associated configuration is disabled

◆ enable

void(* usbd_class_api::enable) (struct usbd_class_node *const node)

Class associated configuration is selected

◆ feature_halt

void(* usbd_class_api::feature_halt) (struct usbd_class_node *const node, uint8_t ep, bool halted)

Feature halt state update handler

◆ init

int(* usbd_class_api::init) (struct usbd_class_node *const node)

Initialization of the class implementation

◆ request

int(* usbd_class_api::request) (struct usbd_class_node *const node, struct net_buf *buf, int err)

Endpoint request completion event handler

◆ resumed

void(* usbd_class_api::resumed) (struct usbd_class_node *const node)

USB power management handler resumed

◆ shutdown

void(* usbd_class_api::shutdown) (struct usbd_class_node *const node)

Shutdown of the class implementation

◆ suspended

void(* usbd_class_api::suspended) (struct usbd_class_node *const node)

USB power management handler suspended

◆ update

void(* usbd_class_api::update) (struct usbd_class_node *const node, uint8_t iface, uint8_t alternate)

Configuration update handler


The documentation for this struct was generated from the following file: