2023-08-28 06:02:08 +00:00
|
|
|
idf_build_get_property(target IDF_TARGET)
|
|
|
|
|
|
|
|
if(${target} STREQUAL "linux")
|
|
|
|
return() # This component is not supported by the POSIX/Linux simulator
|
|
|
|
endif()
|
|
|
|
|
2021-07-09 03:15:26 +00:00
|
|
|
set(srcs)
|
|
|
|
set(include)
|
2023-12-23 18:55:49 +00:00
|
|
|
set(priv_includes)
|
|
|
|
# As CONFIG_SOC_USB_OTG_SUPPORTED comes from Kconfig, it is not evaluated yet
|
2022-01-28 11:47:04 +00:00
|
|
|
# when components are being registered.
|
|
|
|
# Thus, always add the (private) requirements, regardless of Kconfig
|
2024-01-08 08:31:39 +00:00
|
|
|
set(priv_requires esp_driver_gpio esp_mm) # usb_phy driver relies on gpio driver API
|
2021-02-09 02:29:01 +00:00
|
|
|
|
2023-12-23 18:55:49 +00:00
|
|
|
if(CONFIG_SOC_USB_OTG_SUPPORTED)
|
2022-09-15 12:43:18 +00:00
|
|
|
list(APPEND srcs "hcd_dwc.c"
|
2024-03-04 20:11:43 +00:00
|
|
|
"enum.c"
|
2021-08-24 15:20:50 +00:00
|
|
|
"hub.c"
|
2021-08-31 06:14:04 +00:00
|
|
|
"usb_helpers.c"
|
2021-08-24 15:20:50 +00:00
|
|
|
"usb_host.c"
|
|
|
|
"usb_private.c"
|
2024-01-19 13:38:30 +00:00
|
|
|
"usbh.c")
|
|
|
|
if(NOT ${target} STREQUAL "esp32p4")
|
|
|
|
list(APPEND srcs "usb_phy.c")
|
|
|
|
else()
|
|
|
|
list(APPEND srcs "usb_phy_p4.c")
|
|
|
|
endif()
|
2021-08-24 15:20:50 +00:00
|
|
|
list(APPEND include "include")
|
2023-12-23 18:55:49 +00:00
|
|
|
list(APPEND priv_includes "private_include")
|
2021-02-09 02:29:01 +00:00
|
|
|
endif()
|
|
|
|
|
2021-07-09 03:15:26 +00:00
|
|
|
idf_component_register(SRCS ${srcs}
|
|
|
|
INCLUDE_DIRS ${include}
|
2023-12-23 18:55:49 +00:00
|
|
|
PRIV_INCLUDE_DIRS ${priv_includes}
|
|
|
|
PRIV_REQUIRES ${priv_requires}
|
2021-07-09 03:15:26 +00:00
|
|
|
)
|