From 65ac3f6f80a7718958f2219f30d9f7a7a480ffab Mon Sep 17 00:00:00 2001 From: Tomas Rezucha Date: Wed, 25 Jun 2025 14:44:36 +0200 Subject: [PATCH] refactor(usb): Remove deprecated USB pin definitions When connecting USB OTG to an external FSLS PHY, the FSLS Serial Interface signals can be routed to any GPIO via the GPIO matrix. Thus, these macros are meaningless. --- components/soc/esp32p4/include/soc/usb_pins.h | 20 ------------------- components/soc/esp32s2/include/soc/usb_pins.h | 16 +-------------- components/soc/esp32s3/include/soc/usb_pins.h | 16 +-------------- tools/idf_py_actions/hints.yml | 4 ++++ 4 files changed, 6 insertions(+), 50 deletions(-) delete mode 100644 components/soc/esp32p4/include/soc/usb_pins.h diff --git a/components/soc/esp32p4/include/soc/usb_pins.h b/components/soc/esp32p4/include/soc/usb_pins.h deleted file mode 100644 index bbcb7c3ca4..0000000000 --- a/components/soc/esp32p4/include/soc/usb_pins.h +++ /dev/null @@ -1,20 +0,0 @@ -/* - * SPDX-FileCopyrightText: 2024 Espressif Systems (Shanghai) CO LTD - * - * SPDX-License-Identifier: Apache-2.0 - */ - -#pragma once - -/* -Note: These macros are deprecated. -We define them for P4 only for backward compatibility with older version of esp_tinyusb - -Todo: Remove in IDF v6.0 (IDF-9029) -*/ -#define USBPHY_VP_NUM -1 -#define USBPHY_VM_NUM -1 -#define USBPHY_RCV_NUM -1 -#define USBPHY_OEN_NUM -1 -#define USBPHY_VPO_NUM -1 -#define USBPHY_VMO_NUM -1 diff --git a/components/soc/esp32s2/include/soc/usb_pins.h b/components/soc/esp32s2/include/soc/usb_pins.h index 8c837fed27..3d75c07b32 100644 --- a/components/soc/esp32s2/include/soc/usb_pins.h +++ b/components/soc/esp32s2/include/soc/usb_pins.h @@ -1,25 +1,11 @@ /* - * SPDX-FileCopyrightText: 2020-2024 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2020-2025 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ #pragma once -/* -Note: These macros are deprecated. When connecting USB OTG to an external FSLS -PHY, the FSLS Serial Interface signals can be routed to any GPIO via the GPIO -matrix. Thus, these macros are meaningless. - -Todo: Remove in IDF v6.0 (IDF-9029) -*/ -#define USBPHY_VP_NUM 33 -#define USBPHY_VM_NUM 34 -#define USBPHY_RCV_NUM 35 -#define USBPHY_OEN_NUM 36 -#define USBPHY_VPO_NUM 37 -#define USBPHY_VMO_NUM 38 - /* GPIOs corresponding to the pads of the internal USB PHY */ #define USBPHY_DP_NUM 20 #define USBPHY_DM_NUM 19 diff --git a/components/soc/esp32s3/include/soc/usb_pins.h b/components/soc/esp32s3/include/soc/usb_pins.h index 7b82a1b440..3d75c07b32 100644 --- a/components/soc/esp32s3/include/soc/usb_pins.h +++ b/components/soc/esp32s3/include/soc/usb_pins.h @@ -1,25 +1,11 @@ /* - * SPDX-FileCopyrightText: 2020-2024 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2020-2025 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ #pragma once -/* -Note: These macros are deprecated. When connecting USB OTG to an external FSLS -PHY, the FSLS Serial Interface signals can be routed to any GPIO via the GPIO -matrix. Thus, these macros are meaningless. - -Todo: Remove in IDF v6.0 (IDF-9029) -*/ -#define USBPHY_VP_NUM 42 -#define USBPHY_VM_NUM 41 -#define USBPHY_RCV_NUM 21 -#define USBPHY_OEN_NUM 40 -#define USBPHY_VPO_NUM 39 -#define USBPHY_VMO_NUM 38 - /* GPIOs corresponding to the pads of the internal USB PHY */ #define USBPHY_DP_NUM 20 #define USBPHY_DM_NUM 19 diff --git a/tools/idf_py_actions/hints.yml b/tools/idf_py_actions/hints.yml index 2d35770d32..260d16eed6 100644 --- a/tools/idf_py_actions/hints.yml +++ b/tools/idf_py_actions/hints.yml @@ -415,6 +415,10 @@ re_variables: ['ESP_HF_CME_MEMEORY_FAILURE'] hint_variables: ['ESP_HF_CME_MEMEORY_FAILURE', 'ESP_HF_CME_MEMORY_FAILURE '] +- + re: "error: 'USBPHY_\\w+' undeclared" + hint: "USBPHY_* pin definitions from have been removed.\nTo use an external USB PHY, wire it to any GPIOs and declare those pin mappings in your application to match your hardware." + - re: "intr_alloc: No free interrupt inputs for [_\\w]+ interrupt" hint: "For troubleshooting instructions related to interrupt allocation, run 'idf.py docs -sp api-reference/system/intr_alloc.html'"