@@ -199,41 +199,185 @@ ifndef ESP_HAL_3RDPARTY_VERSION
199199endif
200200
201201ifndef ESP_HAL_3RDPARTY_URL
202- ESP_HAL_3RDPARTY_URL = https://github.com/espressif/esp-hal-3rdparty.git
202+ ESP_HAL_3RDPARTY_URL = https://github.com/espressif/esp-hal-3rdparty/archive
203203endif
204204
205- ifndef DISABLE_GIT_DEPTH
206- ifndef GIT_DEPTH
207- GIT_DEPTH=1
205+ ESP_HAL_3RDPARTY_ZIP = $(ESP_HAL_3RDPARTY_VERSION).zip
206+
207+ ifeq ($(STORAGETMP),y)
208+ define DOWNLOAD_ESP_HAL_3RDPARTY_REPO
209+ $(call DOWNLOAD,$(ESP_HAL_3RDPARTY_URL),$(ESP_HAL_3RDPARTY_ZIP),chip/$(ESP_HAL_3RDPARTY_ZIP),$(NXTMPDIR)/$(ESP_HAL_3RDPARTY_ZIP))
210+ endef
211+ else
212+ define DOWNLOAD_ESP_HAL_3RDPARTY_REPO
213+ $(call DOWNLOAD,$(ESP_HAL_3RDPARTY_URL),$(ESP_HAL_3RDPARTY_ZIP),chip/$(ESP_HAL_3RDPARTY_ZIP))
214+ endef
208215endif
209- GIT_DEPTH_PARAMETER = --depth=$(GIT_DEPTH)
216+
217+ $(ESP_HAL_3RDPARTY_ZIP):
218+ $(Q) $(call DOWNLOAD_ESP_HAL_3RDPARTY_REPO)
219+
220+ chip/$(ESP_HAL_3RDPARTY_REPO): $(ESP_HAL_3RDPARTY_ZIP)
221+ $(Q) echo "Unpacking: Espressif HAL for 3rd Party Platforms"
222+ $(Q) unzip -oqq chip/$(ESP_HAL_3RDPARTY_ZIP) -d chip/
223+ $(Q) mv chip/$(ESP_HAL_3RDPARTY_REPO)-$(ESP_HAL_3RDPARTY_VERSION)* chip/$(ESP_HAL_3RDPARTY_REPO)
224+ $(Q) touch chip/$(ESP_HAL_3RDPARTY_REPO)
225+
226+ ESP_COMPONENTS_MBEDTLS_UNPACK = mbedtls
227+ ifndef ESP_COMPONENTS_MBEDTLS_VERSION
228+ ESP_COMPONENTS_MBEDTLS_VERSION = mbedtls-3.6.4-idf
210229endif
211230
231+ ifndef ESP_COMPONENTS_MBEDTLS_URL
232+ ESP_COMPONENTS_MBEDTLS_URL = https://github.com/espressif/mbedtls/archive
233+ endif
234+
235+ ESP_COMPONENTS_MBEDTLS_ZIP = $(ESP_COMPONENTS_MBEDTLS_VERSION).zip
236+
212237ifeq ($(STORAGETMP),y)
213- define CLONE_ESP_HAL_3RDPARTY_REPO
214- $(call CHECK_COMMITSHA, $(NXTMPDIR)/$(ESP_HAL_3RDPARTY_REPO),$(ESP_HAL_3RDPARTY_VERSION))
215- $(call CLONE, $(ESP_HAL_3RDPARTY_URL),chip/$(ESP_HAL_3RDPARTY_REPO),$(NXTMPDIR)/$(ESP_HAL_3RDPARTY_REPO))
238+ define DOWNLOAD_ESP_COMPONENTS_MBEDTLS_UNPACK
239+ $(call DOWNLOAD,$(ESP_COMPONENTS_MBEDTLS_URL),$(ESP_COMPONENTS_MBEDTLS_ZIP),chip/$(ESP_COMPONENTS_MBEDTLS_ZIP),$(NXTMPDIR)/$(ESP_COMPONENTS_MBEDTLS_ZIP))
216240endef
217241else
218- define CLONE_ESP_HAL_3RDPARTY_REPO
219- $(call CLONE, $(ESP_HAL_3RDPARTY_URL), chip/$(ESP_HAL_3RDPARTY_REPO ))
242+ define DOWNLOAD_ESP_COMPONENTS_MBEDTLS_UNPACK
243+ $(call DOWNLOAD,$(ESP_COMPONENTS_MBEDTLS_URL),$(ESP_HAL_3RDPARTY_ZIP), chip/$(ESP_COMPONENTS_MBEDTLS_ZIP ))
220244endef
221245endif
222246
223- chip/$(ESP_HAL_3RDPARTY_REPO):
224- $(Q) echo "Cloning Espressif HAL for 3rd Party Platforms"
225- $(Q) $(call CLONE_ESP_HAL_3RDPARTY_REPO)
226- $(Q) echo "Espressif HAL for 3rd Party Platforms: ${ESP_HAL_3RDPARTY_VERSION}"
227- $(Q) git -C chip/$(ESP_HAL_3RDPARTY_REPO) checkout --quiet $(ESP_HAL_3RDPARTY_VERSION)
228- $(Q) git -C chip/$(ESP_HAL_3RDPARTY_REPO) submodule --quiet update --init $(GIT_DEPTH_PARAMETER) components/mbedtls/mbedtls
229- ifeq ($(CONFIG_ESP_WIRELESS),y)
230- $(Q) echo "Espressif HAL for 3rd Party Platforms: initializing submodules..."
231- $(Q) git -C chip/$(ESP_HAL_3RDPARTY_REPO) submodule --quiet update --init $(GIT_DEPTH_PARAMETER) components/esp_phy/lib components/esp_wifi/lib components/bt/controller/lib_esp32c3_family components/esp_coex/lib
232- $(Q) git -C chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls reset --quiet --hard
247+ $(ESP_COMPONENTS_MBEDTLS_ZIP):
248+ $(Q) $(call DOWNLOAD_ESP_COMPONENTS_MBEDTLS_UNPACK)
249+
250+ chip/$(ESP_COMPONENTS_MBEDTLS_UNPACK): $(ESP_COMPONENTS_MBEDTLS_ZIP) chip/$(ESP_HAL_3RDPARTY_REPO)
251+ $(Q) unzip -oqq chip/$(ESP_COMPONENTS_MBEDTLS_ZIP) -d chip/
252+ $(Q) rm -fr chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls
253+ $(Q) mv chip/$(ESP_COMPONENTS_MBEDTLS_UNPACK)-$(ESP_COMPONENTS_MBEDTLS_VERSION)* chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls
254+ $(Q) touch chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls
233255 $(Q) echo "Applying patches..."
234256 $(Q) cd chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls && git apply ../../../nuttx/patches/components/mbedtls/mbedtls/*.patch
257+
258+ ESP_COMPONENTS_ESP_PHY_LIB_UNPACK = esp-phy-lib
259+ ifndef ESP_COMPONENTS_ESP_PHY_LIB_VERSION
260+ ESP_COMPONENTS_ESP_PHY_LIB_VERSION = master
261+ endif
262+
263+ ifndef ESP_COMPONENTS_ESP_PHY_LIB_URL
264+ ESP_COMPONENTS_ESP_PHY_LIB_URL = https://github.com/espressif/esp-phy-lib/archive
265+ endif
266+
267+ ESP_COMPONENTS_ESP_PHY_LIB_ZIP = esp-phy-lib-$(ESP_COMPONENTS_ESP_PHY_LIB_VERSION).zip
268+
269+ ifeq ($(STORAGETMP),y)
270+ define ESP_COMPONENTS_ESP_PHY_LIB_UNPACK
271+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_PHY_LIB_URL),$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP),chip/$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP),$(NXTMPDIR)/$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP))
272+ endef
273+ else
274+ define ESP_COMPONENTS_ESP_PHY_LIB_UNPACK
275+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_PHY_LIB_URL),$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP),chip/$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP))
276+ endef
277+ endif
278+
279+ $(ESP_COMPONENTS_ESP_PHY_LIB_ZIP):
280+ $(Q) $(call DOWNLOAD_ESP_COMPONENTS_ESP_PHY_LIB_UNPACK)
281+
282+ chip/$(ESP_COMPONENTS_ESP_PHY_LIB_UNPACK): $(ESP_COMPONENTS_ESP_PHY_LIB_ZIP) chip/$(ESP_HAL_3RDPARTY_REPO)
283+ $(Q) unzip -oqq chip/$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP) -d chip/
284+ $(Q) rm -fr chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib
285+ $(Q) mv chip/$(ESP_COMPONENTS_ESP_PHY_LIB_UNPACK)-$(ESP_COMPONENTS_ESP_PHY_LIB_VERSION)* chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib
286+ $(Q) touch chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib
287+
288+ ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK = esp32-wifi-lib
289+ ifndef ESP_COMPONENTS_ESP_WIFI_LIB_VERSION
290+ ESP_COMPONENTS_ESP_WIFI_LIB_VERSION = master
291+ endif
292+
293+ ifndef ESP_COMPONENTS_ESP_WIFI_LIB_URL
294+ ESP_COMPONENTS_ESP_WIFI_LIB_URL = https://github.com/espressif/esp32-wifi-lib
295+ endif
296+
297+ ESP_COMPONENTS_ESP_WIFI_LIB_ZIP = esp32-wifi-lib-$(ESP_COMPONENTS_ESP_WIFI_LIB_VERSION).zip
298+
299+ ifeq ($(STORAGETMP),y)
300+ define ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK
301+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_WIFI_LIB_URL),$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP),chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP),$(NXTMPDIR)/$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP))
302+ endef
303+ else
304+ define ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK
305+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_WIFI_LIB_URL),$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP),chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP))
306+ endef
307+ endif
308+
309+ $(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP):
310+ $(Q) $(call DOWNLOAD_ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK)
311+
312+ chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK): $(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP) chip/$(ESP_HAL_3RDPARTY_REPO)
313+ $(Q) unzip -oqq chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP) -d chip/
314+ $(Q) rm -fr chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_wifi/lib
315+ $(Q) mv chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK)-$(ESP_COMPONENTS_ESP_WIFI_LIB_VERSION)* chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib
316+ $(Q) touch chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_wifi/lib
317+
318+
319+ ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK = esp32c3-bt-lib
320+ ifndef ESP_COMPONENTS_ESP32C3_BT_LIB_VERSION
321+ ESP_COMPONENTS_ESP32C3_BT_LIB_VERSION = master
235322endif
236323
324+ ifndef ESP_COMPONENTS_ESP32C3_BT_LIB_URL
325+ ESP_COMPONENTS_ESP32C3_BT_LIB_URL = https://github.com/espressif/esp32c3-bt-lib
326+ endif
327+
328+ ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP = esp32c3-bt-lib-$(ESP_COMPONENTS_ESP32C3_BT_LIB_VERSION).zip
329+
330+ ifeq ($(STORAGETMP),y)
331+ define ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK
332+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP32C3_BT_LIB_URL),$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP),chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP),$(NXTMPDIR)/$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP))
333+ endef
334+ else
335+ define ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK
336+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP32C3_BT_LIB_URL),$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP),chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP))
337+ endef
338+ endif
339+
340+ $(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP):
341+ $(Q) $(call DOWNLOAD_ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK)
342+
343+ chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK): $(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP) chip/$(ESP_HAL_3RDPARTY_REPO)
344+ $(Q) unzip -oqq chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP) -d chip/
345+ $(Q) rm -fr chip/$(ESP_HAL_3RDPARTY_REPO)/components/bt/controller/lib_esp32c3_family
346+ $(Q) mv chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK)-$(ESP_COMPONENTS_ESP32C3_BT_LIB_VERSION)* chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib
347+ $(Q) touch chip/$(ESP_HAL_3RDPARTY_REPO)/components/bt/controller/lib_esp32c3_family
348+
349+
350+ ESP_COMPONENTS_ESP_COEX_LIB_UNPACK = esp-coex-lib
351+ ifndef ESP_COMPONENTS_ESP_COEX_LIB_VERSION
352+ ESP_COMPONENTS_ESP_COEX_LIB_VERSION = main
353+ endif
354+
355+ ifndef ESP_COMPONENTS_ESP_COEX_LIB_URL
356+ ESP_COMPONENTS_ESP_COEX_LIB_URL = https://github.com/espressif/esp-coex-lib
357+ endif
358+
359+ ESP_COMPONENTS_ESP_COEX_LIB_ZIP = esp-phy-lib-$(ESP_COMPONENTS_ESP_COEX_LIB_VERSION).zip
360+
361+ ifeq ($(STORAGETMP),y)
362+ define ESP_COMPONENTS_ESP_COEX_LIB_UNPACK
363+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_COEX_LIB_URL),$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP),chip/$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP),$(NXTMPDIR)/$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP))
364+ endef
365+ else
366+ define ESP_COMPONENTS_ESP_COEX_LIB_UNPACK
367+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_COEX_LIB_URL),$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP),chip/$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP))
368+ endef
369+ endif
370+
371+ $(ESP_COMPONENTS_ESP_COEX_LIB_ZIP):
372+ $(Q) $(call DOWNLOAD_ESP_COMPONENTS_ESP_COEX_LIB_UNPACK)
373+
374+ chip/$(ESP_COMPONENTS_ESP_COEX_LIB_UNPACK): $(ESP_COMPONENTS_ESP_COEX_LIB_ZIP) chip/$(ESP_HAL_3RDPARTY_REPO)
375+ $(Q) unzip -oqq chip/$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP) -d chip/
376+ $(Q) rm -fr chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_coex/lib
377+ $(Q) mv chip/$(ESP_COMPONENTS_ESP_COEX_LIB_UNPACK)-$(ESP_COMPONENTS_ESP_COEX_LIB_VERSION)* chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_coex/lib
378+ $(Q) touch chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib
379+
380+
237381include common$(DELIM)espressif$(DELIM)Bootloader.mk
238382
239383# Silent preprocessor warnings
@@ -250,15 +394,43 @@ ifeq ($(CONFIG_ESP_WIRELESS),y)
250394 include common$(DELIM)espressif$(DELIM)Wireless.mk
251395endif
252396
253- context:: chip/$(ESP_HAL_3RDPARTY_REPO)
397+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/.git),)
398+ ifeq ($(CONFIG_ESP_WIRELESS),y)
399+ context:: chip/$(ESP_HAL_3RDPARTY_REPO) chip/$(ESP_COMPONENTS_MBEDTLS_UNPACK) chip/$(ESP_HAL_3RDPARTY_REPO)/esp_phy chip/$(ESP_HAL_3RDPARTY_REPO)/esp_wifi chip/$(ESP_HAL_3RDPARTY_REPO)/bt_controller chip/$(ESP_HAL_3RDPARTY_REPO)/esp_coex
400+ else
401+ context:: chip/$(ESP_HAL_3RDPARTY_REPO) chip/$(ESP_COMPONENTS_MBEDTLS_UNPACK)
402+ endif
403+ else
404+ context::
405+ endif
254406 $(call COPYFILE,chip/$(ESP_HAL_3RDPARTY_REPO)/components/soc/$(CHIP_SERIES)/include/soc/gpio_sig_map.h,../include/chip/)
255407 $(call COPYFILE,chip/$(ESP_HAL_3RDPARTY_REPO)/nuttx/$(CHIP_SERIES)/include/irq.h,../include/chip/)
256408
257409distclean::
258410 $(call DELFILE,../include/chip/gpio_sig_map.h)
259411 $(call DELFILE,../include/chip/irq.h)
260412 $(call DELFILE,../../../vefuse.bin)
413+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/.git),)
261414 $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO))
415+ else
416+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls/.git),)
417+ $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls)
418+ endif
419+ ifeq ($(CONFIG_ESP_WIRELESS),y)
420+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib/.git),)
421+ $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib)
422+ endif
423+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_wifi/lib/.git),)
424+ $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_wifi/lib)
425+ endif
426+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/components/bt/controller/lib_esp32c3_family/.git),)
427+ $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO)/components/bt/controller/lib_esp32c3_family)
428+ endif
429+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_coex/lib/.git),)
430+ $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_coex/lib)
431+ endif
432+ endif
433+ endif
262434ifeq ($(CONFIG_ESPRESSIF_USE_LP_CORE),y)
263435 $(call DELDIR,chip/ulp)
264436endif
0 commit comments