Skip to content

Commit 5d97c76

Browse files
feat(mock): Extend device_info mock with speed
1 parent 3ef5e9b commit 5d97c76

File tree

4 files changed

+16
-19
lines changed

4 files changed

+16
-19
lines changed

host/class/cdc/usb_host_cdc_acm/host_test/device_interaction/main/test_device_interaction.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,27 +32,27 @@ static void _add_mocked_devices(void)
3232

3333
// ASIX Electronics Corp. AX88772A Fast Ethernet (FS descriptor)
3434
REQUIRE(ESP_OK == usb_host_mock_add_device(0, (const usb_device_desc_t *)premium_cord_device_desc_fs,
35-
(const usb_config_desc_t *)premium_cord_config_desc_fs));
35+
(const usb_config_desc_t *)premium_cord_config_desc_fs, USB_SPEED_FULL));
3636

3737
// ASIX Electronics Corp. AX88772B (FS descriptor)
3838
REQUIRE(ESP_OK == usb_host_mock_add_device(1, (const usb_device_desc_t *)i_tec_device_desc_fs,
39-
(const usb_config_desc_t *)i_tec_config_desc_fs));
39+
(const usb_config_desc_t *)i_tec_config_desc_fs, USB_SPEED_FULL));
4040

4141
// FTDI chip dual (FS descriptor)
4242
REQUIRE(ESP_OK == usb_host_mock_add_device(2, (const usb_device_desc_t *)ftdi_device_desc_fs_hs,
43-
(const usb_config_desc_t *)ftdi_config_desc_fs));
43+
(const usb_config_desc_t *)ftdi_config_desc_fs, USB_SPEED_FULL));
4444

4545
// TTL232RG (FS descriptor)
4646
REQUIRE(ESP_OK == usb_host_mock_add_device(3, (const usb_device_desc_t *)ttl232_device_desc,
47-
(const usb_config_desc_t *)ttl232_config_desc));
47+
(const usb_config_desc_t *)ttl232_config_desc, USB_SPEED_FULL));
4848

4949
// CP210x (FS descriptor)
5050
REQUIRE(ESP_OK == usb_host_mock_add_device(4, (const usb_device_desc_t *)cp210x_device_desc,
51-
(const usb_config_desc_t *)cp210x_config_desc));
51+
(const usb_config_desc_t *)cp210x_config_desc, USB_SPEED_FULL));
5252

5353
// tusb_serial_device (HS descriptor)
5454
REQUIRE(ESP_OK == usb_host_mock_add_device(5, (const usb_device_desc_t *)tusb_serial_device_device_desc_fs_hs,
55-
(const usb_config_desc_t *)tusb_serial_device_config_desc_hs));
55+
(const usb_config_desc_t *)tusb_serial_device_config_desc_hs, USB_SPEED_HIGH));
5656
}
5757

5858
/**

host/usb/test/mocks/usb_host_full_mock/usb/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,4 @@ target_sources(${COMPONENT_LIB} PRIVATE "${original_usb_dir}/src/usb_helpers.c")
2727
target_sources(${COMPONENT_LIB} PRIVATE "${original_usb_dir}/src/usb_private.c")
2828

2929
# Add the extra src files for USB device mocking
30-
target_sources(${COMPONENT_LIB} PRIVATE "mock_add_usb_device.c")
30+
target_sources(${COMPONENT_LIB} PRIVATE "mock_add_usb_device.cpp")

host/usb/test/mocks/usb_host_full_mock/usb/include/mock_add_usb_device.h

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,22 +9,19 @@
99
#include <stdint.h>
1010
#include "usb_host.h"
1111

12-
#ifdef __cplusplus
13-
extern "C" {
14-
#endif
15-
1612
/**
1713
* @brief Add mocked USB device to device list
1814
*
1915
* @param[in] dev_address device address
2016
* @param[in] dev_desc device descriptor
2117
* @param[in] config_desc configuration descriptor
18+
* @param[in] speed device speed (default is USB_SPEED_HIGH)
2219
*
2320
* @return
2421
* - ESP_OK: Mocked device added successfully
2522
* - ESP_ERR_INVALID_ARG: Invalid input argument(s)
2623
*/
27-
esp_err_t usb_host_mock_add_device(uint8_t dev_address, const usb_device_desc_t *dev_desc, const usb_config_desc_t *config_desc);
24+
esp_err_t usb_host_mock_add_device(uint8_t dev_address, const usb_device_desc_t *dev_desc, const usb_config_desc_t *config_desc, usb_speed_t speed = USB_SPEED_HIGH);
2825

2926
/**
3027
* @brief Get number of mocked USB devices in device list
@@ -350,7 +347,3 @@ esp_err_t usb_host_transfer_submit_control_timeout_mock_callback(usb_host_client
350347
* - ESP_ERR_INVALID_ARG: Invalid argument
351348
*/
352349
esp_err_t usb_host_device_info_mock_callback(usb_device_handle_t dev_hdl, usb_device_info_t *dev_info, int call_count);
353-
354-
#ifdef __cplusplus
355-
}
356-
#endif

host/usb/test/mocks/usb_host_full_mock/usb/mock_add_usb_device.c renamed to host/usb/test/mocks/usb_host_full_mock/usb/mock_add_usb_device.cpp

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ struct client_s {
4747
typedef struct {
4848
int address; /*!< Device address */
4949
unsigned opened; /*!< Device opened status */
50+
usb_speed_t speed; /*!< Device speed */
5051
const usb_device_desc_t *dev_desc; /*!< Device descriptor */
5152
const usb_config_desc_t *config_desc; /*!< Config descriptor */
5253
} device_list_t;
@@ -59,6 +60,7 @@ void usb_host_mock_dev_list_init(void)
5960
for (int index = 0; index < MAX_DEV_COUNT; index++) {
6061
device_list[index].address = 0xFF;
6162
device_list[index].opened = 0;
63+
device_list[index].speed = USB_SPEED_HIGH;
6264
device_list[index].dev_desc = NULL;
6365
device_list[index].config_desc = NULL;
6466
}
@@ -70,7 +72,7 @@ int usb_host_mock_get_devs_count(void)
7072
return mocked_devices_count;
7173
}
7274

73-
esp_err_t usb_host_mock_add_device(uint8_t dev_address, const usb_device_desc_t *dev_desc, const usb_config_desc_t *config_desc)
75+
esp_err_t usb_host_mock_add_device(uint8_t dev_address, const usb_device_desc_t *dev_desc, const usb_config_desc_t *config_desc, usb_speed_t speed)
7476
{
7577
MOCK_CHECK(dev_address < MAX_DEV_COUNT && dev_desc != NULL && config_desc != NULL, ESP_ERR_INVALID_ARG);
7678

@@ -82,6 +84,7 @@ esp_err_t usb_host_mock_add_device(uint8_t dev_address, const usb_device_desc_t
8284
// Fill device_list with new device parameters
8385
device_list[dev_address].address = dev_address;
8486
device_list[dev_address].opened = 0;
87+
device_list[dev_address].speed = speed;
8588
device_list[dev_address].dev_desc = dev_desc;
8689
device_list[dev_address].config_desc = config_desc;
8790

@@ -420,8 +423,9 @@ esp_err_t usb_host_device_info_mock_callback(usb_device_handle_t dev_hdl, usb_de
420423

421424
const device_list_t *current_device = (const device_list_t *) dev_hdl;
422425
memset(dev_info, 0, sizeof(usb_device_info_t));
423-
dev_info->dev_addr = current_device->address;
424-
dev_info->bMaxPacketSize0 = current_device->dev_desc->bMaxPacketSize0;
426+
dev_info->speed = current_device->speed;
427+
dev_info->dev_addr = current_device->address;
428+
dev_info->bMaxPacketSize0 = current_device->dev_desc->bMaxPacketSize0;
425429
dev_info->bConfigurationValue = 1;
426430
return ESP_OK;
427431
}

0 commit comments

Comments
 (0)