Loading...
Searching...
No Matches
usbdev_mock.h
1/*
2 * SPDX-FileCopyrightText: 2019 Koen Zandberg <koen@bergzand.net>
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
16
17#include <stdint.h>
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
26#define USBDEV_MOCK_NUM_EP (1)
27
36
37
48
53
59typedef void (*usbdev_mock_esr_cb_t)(usbdev_mock_t *dev);
60
69
79 size_t len);
80
98
107 usbdev_mock_ep_esr_cb_t ep_esr_cb,
108 usbdev_mock_ready_cb_t ready_cb);
109
110#ifdef __cplusplus
111}
112#endif
113
struct usbdev_ep usbdev_ep_t
usbdev_ep_t forward declaration
Definition usbdev.h:96
struct usbdev usbdev_t
usbdev_t forward declaration
Definition usbdev.h:91
void usbdev_mock_setup(usbdev_mock_esr_cb_t esr_cb, usbdev_mock_ep_esr_cb_t ep_esr_cb, usbdev_mock_ready_cb_t ready_cb)
usbdev mock device setup function
void(* usbdev_mock_esr_cb_t)(usbdev_mock_t *dev)
usbdev mock device callback for esr event checking
Definition usbdev_mock.h:59
struct usbdev_mock usbdev_mock_t
usbdev mock device forward declaration
Definition usbdev_mock.h:52
usbdev_mock_ep_state_t
Definition usbdev_mock.h:32
void(* usbdev_mock_ready_cb_t)(usbdev_mock_t *dev, usbdev_mock_ep_t *ep, size_t len)
usbdev mock device callback for endpoint ready call checking
Definition usbdev_mock.h:77
void(* usbdev_mock_ep_esr_cb_t)(usbdev_mock_t *dev, usbdev_mock_ep_t *ep)
usbdev mock device callback for endpoint event checking
Definition usbdev_mock.h:67
#define USBDEV_MOCK_NUM_EP
Number of IN and OUT endpoints available in the mock usbdev device.
Definition usbdev_mock.h:26
@ EP_STATE_READY
Endpoint is ready/idle.
Definition usbdev_mock.h:33
@ EP_STATE_DATA_AVAILABLE
Endpoint has data.
Definition usbdev_mock.h:34
usbdev mock device endpoint
Definition usbdev_mock.h:41
usbdev_mock_ep_state_t state
Endpoint state.
Definition usbdev_mock.h:43
uint8_t * buf
Internal mock buffer pointer.
Definition usbdev_mock.h:46
size_t available
Bytes available in the buffer.
Definition usbdev_mock.h:44
usbdev_ep_t ep
Generic endpoint struct.
Definition usbdev_mock.h:42
uint8_t * target_buf
Buffer as passed by usbdev_ep_xmit.
Definition usbdev_mock.h:45
usbdev mock device
Definition usbdev_mock.h:84
usbdev_mock_ep_esr_cb_t ep_esr_cb
Endpoint ESR cb for validation.
Definition usbdev_mock.h:93
usbdev_t usbdev
Generic usbdev device.
Definition usbdev_mock.h:85
uint8_t config_addr
Configured address.
Definition usbdev_mock.h:88
usbdev_mock_ready_cb_t ready_cb
Endpoint ready cb for validation.
Definition usbdev_mock.h:95
usbdev_mock_ep_t in[USBDEV_MOCK_NUM_EP]
IN endpoints.
Definition usbdev_mock.h:86
size_t req_len
Length of the current request.
Definition usbdev_mock.h:89
usbdev_mock_esr_cb_t esr_cb
ESR callback for validation.
Definition usbdev_mock.h:91
usbdev_mock_ep_t out[USBDEV_MOCK_NUM_EP]
OUT endpoints.
Definition usbdev_mock.h:87