mirror of
https://github.com/espressif/esp-idf.git
synced 2025-10-02 18:10:57 +02:00
feat(network): Update sta2eth example to esp_tinyusb v2.0.0
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
## IDF Component Manager Manifest File
|
## IDF Component Manager Manifest File
|
||||||
dependencies:
|
dependencies:
|
||||||
espressif/esp_tinyusb:
|
espressif/esp_tinyusb:
|
||||||
version: "^1.3.0"
|
version: "^2.0.0"
|
||||||
rules:
|
rules:
|
||||||
- if: "idf_version >=4.4"
|
- if: "idf_version >=4.4"
|
||||||
- if: "target in [esp32s2, esp32s3]"
|
- if: "target in [esp32s2, esp32s3]"
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2023 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2023-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Unlicense OR CC0-1.0
|
* SPDX-License-Identifier: Unlicense OR CC0-1.0
|
||||||
*/
|
*/
|
||||||
@@ -12,6 +12,7 @@
|
|||||||
#include "esp_netif.h"
|
#include "esp_netif.h"
|
||||||
#include "esp_event.h"
|
#include "esp_event.h"
|
||||||
#include "tinyusb.h"
|
#include "tinyusb.h"
|
||||||
|
#include "tinyusb_default_config.h"
|
||||||
#include "tinyusb_net.h"
|
#include "tinyusb_net.h"
|
||||||
#include "wired_iface.h"
|
#include "wired_iface.h"
|
||||||
#include "dhcpserver/dhcpserver_options.h"
|
#include "dhcpserver/dhcpserver_options.h"
|
||||||
@@ -44,9 +45,7 @@ void mac_spoof(mac_spoof_direction_t direction, uint8_t *buffer, uint16_t len, u
|
|||||||
|
|
||||||
esp_err_t wired_bridge_init(wired_rx_cb_t rx_cb, wired_free_cb_t free_cb)
|
esp_err_t wired_bridge_init(wired_rx_cb_t rx_cb, wired_free_cb_t free_cb)
|
||||||
{
|
{
|
||||||
const tinyusb_config_t tusb_cfg = {
|
const tinyusb_config_t tusb_cfg = TINYUSB_DEFAULT_CONFIG();
|
||||||
.external_phy = false,
|
|
||||||
};
|
|
||||||
ESP_ERROR_CHECK(tinyusb_driver_install(&tusb_cfg));
|
ESP_ERROR_CHECK(tinyusb_driver_install(&tusb_cfg));
|
||||||
|
|
||||||
tinyusb_net_config_t net_config = {
|
tinyusb_net_config_t net_config = {
|
||||||
@@ -56,7 +55,7 @@ esp_err_t wired_bridge_init(wired_rx_cb_t rx_cb, wired_free_cb_t free_cb)
|
|||||||
|
|
||||||
esp_read_mac(net_config.mac_addr, ESP_MAC_WIFI_STA);
|
esp_read_mac(net_config.mac_addr, ESP_MAC_WIFI_STA);
|
||||||
|
|
||||||
esp_err_t ret = tinyusb_net_init(TINYUSB_USBDEV_0, &net_config);
|
esp_err_t ret = tinyusb_net_init(&net_config);
|
||||||
if (ret != ESP_OK) {
|
if (ret != ESP_OK) {
|
||||||
ESP_LOGE(TAG, "USB net init but not connect wifi");
|
ESP_LOGE(TAG, "USB net init but not connect wifi");
|
||||||
return ret;
|
return ret;
|
||||||
@@ -113,9 +112,7 @@ static esp_err_t netif_recv_callback(void *buffer, uint16_t len, void *ctx)
|
|||||||
*/
|
*/
|
||||||
esp_err_t wired_netif_init(void)
|
esp_err_t wired_netif_init(void)
|
||||||
{
|
{
|
||||||
const tinyusb_config_t tusb_cfg = {
|
const tinyusb_config_t tusb_cfg = TINYUSB_DEFAULT_CONFIG();
|
||||||
.external_phy = false,
|
|
||||||
};
|
|
||||||
ESP_ERROR_CHECK(tinyusb_driver_install(&tusb_cfg));
|
ESP_ERROR_CHECK(tinyusb_driver_install(&tusb_cfg));
|
||||||
|
|
||||||
const tinyusb_net_config_t net_config = {
|
const tinyusb_net_config_t net_config = {
|
||||||
@@ -125,7 +122,7 @@ esp_err_t wired_netif_init(void)
|
|||||||
.on_recv_callback = netif_recv_callback,
|
.on_recv_callback = netif_recv_callback,
|
||||||
};
|
};
|
||||||
|
|
||||||
esp_err_t ret = tinyusb_net_init(TINYUSB_USBDEV_0, &net_config);
|
esp_err_t ret = tinyusb_net_init(&net_config);
|
||||||
if (ret != ESP_OK) {
|
if (ret != ESP_OK) {
|
||||||
ESP_LOGE(TAG, "Cannot initialize USB Net device");
|
ESP_LOGE(TAG, "Cannot initialize USB Net device");
|
||||||
return ret;
|
return ret;
|
||||||
|
@@ -1,11 +1,4 @@
|
|||||||
# ESP32S3 has USB-OTG, let's prefer virtual Ethernet (USB-NCM device)
|
# ESP32S3 has USB-OTG, let's prefer virtual Ethernet (USB-NCM device)
|
||||||
CONFIG_EXAMPLE_WIRED_INTERFACE_IS_USB=y
|
CONFIG_EXAMPLE_WIRED_INTERFACE_IS_USB=y
|
||||||
CONFIG_EXAMPLE_WIRED_INTERFACE_IS_ETHERNET=n
|
CONFIG_EXAMPLE_WIRED_INTERFACE_IS_ETHERNET=n
|
||||||
|
|
||||||
# TinyUSB needs to be initialized and run from one core
|
|
||||||
# that's why we pin the task to CPU0 and init tusb in the task
|
|
||||||
# on dual core devices (ESP32S3)
|
|
||||||
CONFIG_TINYUSB_TASK_AFFINITY_CPU0=y
|
|
||||||
CONFIG_TINYUSB_INIT_IN_DEFAULT_TASK=y
|
|
||||||
|
|
||||||
CONFIG_TINYUSB_NET_MODE_NCM=y
|
CONFIG_TINYUSB_NET_MODE_NCM=y
|
||||||
|
Reference in New Issue
Block a user