@@ -199,41 +199,177 @@ 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+
225+ ESP_COMPONENTS_MBEDTLS_UNPACK = mbedtls
226+ ifndef ESP_COMPONENTS_MBEDTLS_VERSION
227+ ESP_COMPONENTS_MBEDTLS_VERSION = mbedtls-3.6.3-idf
228+ endif
229+
230+ ifndef ESP_COMPONENTS_MBEDTLS_URL
231+ ESP_COMPONENTS_MBEDTLS_URL = https://github.com/espressif/mbedtls/archive
210232endif
211233
234+ ESP_COMPONENTS_MBEDTLS_ZIP = $(ESP_COMPONENTS_MBEDTLS_VERSION).zip
235+
212236ifeq ($(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))
237+ define DOWNLOAD_ESP_COMPONENTS_MBEDTLS_UNPACK
238+ $(call DOWNLOAD,$(ESP_COMPONENTS_MBEDTLS_URL),$(ESP_COMPONENTS_MBEDTLS_ZIP),chip/$(ESP_COMPONENTS_MBEDTLS_ZIP),$(NXTMPDIR)/$(ESP_COMPONENTS_MBEDTLS_ZIP))
216239endef
217240else
218- define CLONE_ESP_HAL_3RDPARTY_REPO
219- $(call CLONE, $(ESP_HAL_3RDPARTY_URL), chip/$(ESP_HAL_3RDPARTY_REPO ))
241+ define DOWNLOAD_ESP_COMPONENTS_MBEDTLS_UNPACK
242+ $(call DOWNLOAD,$(ESP_COMPONENTS_MBEDTLS_URL),$(ESP_COMPONENTS_MBEDTLS_ZIP), chip/$(ESP_COMPONENTS_MBEDTLS_ZIP ))
220243endef
221244endif
222245
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
246+ $(ESP_COMPONENTS_MBEDTLS_ZIP):
247+ $(call DOWNLOAD_ESP_COMPONENTS_MBEDTLS_UNPACK)
248+
249+ chip/$(ESP_COMPONENTS_MBEDTLS_UNPACK): $(ESP_COMPONENTS_MBEDTLS_ZIP) chip/$(ESP_HAL_3RDPARTY_REPO)
250+ $(Q) unzip -oqq chip/$(ESP_COMPONENTS_MBEDTLS_ZIP) -d chip/
251+ $(Q) rm -fr chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls
252+ $(Q) mv chip/$(ESP_COMPONENTS_MBEDTLS_UNPACK)-$(ESP_COMPONENTS_MBEDTLS_VERSION) chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls
233253 $(Q) echo "Applying patches..."
234- $(Q) cd chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls && git apply ../../../nuttx/patches/components/mbedtls/mbedtls/*.patch
254+ $(Q) cd chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls && patch -p1 < ../../../nuttx/patches/components/mbedtls/mbedtls/0001-mbedtls_add_prefix.patch
255+ $(Q) cd chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls && patch -p1 < ../../../nuttx/patches/components/mbedtls/mbedtls/0002-mbedtls_add_prefix_to_macro.patch
256+
257+ ESP_COMPONENTS_ESP_PHY_LIB_UNPACK = esp-phy-lib
258+ ifndef ESP_COMPONENTS_ESP_PHY_LIB_VERSION
259+ ESP_COMPONENTS_ESP_PHY_LIB_VERSION = master
260+ endif
261+
262+ ifndef ESP_COMPONENTS_ESP_PHY_LIB_URL
263+ ESP_COMPONENTS_ESP_PHY_LIB_URL = https://github.com/espressif/esp-phy-lib/archive
264+ endif
265+
266+ ESP_COMPONENTS_ESP_PHY_LIB_ZIP = esp-phy-lib-$(ESP_COMPONENTS_ESP_PHY_LIB_VERSION).zip
267+
268+ ifeq ($(STORAGETMP),y)
269+ define DOWNLOAD_ESP_COMPONENTS_ESP_PHY_LIB_UNPACK
270+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_PHY_LIB_URL),$(ESP_COMPONENTS_ESP_PHY_LIB_VERSION).zip,chip/$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP),$(NXTMPDIR)/$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP))
271+ endef
272+ else
273+ define DOWNLOAD_ESP_COMPONENTS_ESP_PHY_LIB_UNPACK
274+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_PHY_LIB_URL),$(ESP_COMPONENTS_ESP_PHY_LIB_VERSION).zip,chip/$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP))
275+ endef
276+ endif
277+
278+ $(ESP_COMPONENTS_ESP_PHY_LIB_ZIP):
279+ $(call DOWNLOAD_ESP_COMPONENTS_ESP_PHY_LIB_UNPACK)
280+
281+ chip/$(ESP_COMPONENTS_ESP_PHY_LIB_UNPACK): $(ESP_COMPONENTS_ESP_PHY_LIB_ZIP) chip/$(ESP_HAL_3RDPARTY_REPO)
282+ $(Q) unzip -oqq chip/$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP) -d chip/
283+ $(Q) rm -fr chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib
284+ $(Q) mv chip/$(ESP_COMPONENTS_ESP_PHY_LIB_UNPACK)-$(ESP_COMPONENTS_ESP_PHY_LIB_VERSION) chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib
285+
286+ ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK = esp32-wifi-lib
287+ ifndef ESP_COMPONENTS_ESP_WIFI_LIB_VERSION
288+ ESP_COMPONENTS_ESP_WIFI_LIB_VERSION = master
289+ endif
290+
291+ ifndef ESP_COMPONENTS_ESP_WIFI_LIB_URL
292+ ESP_COMPONENTS_ESP_WIFI_LIB_URL = https://github.com/espressif/esp32-wifi-lib/archive
293+ endif
294+
295+ ESP_COMPONENTS_ESP_WIFI_LIB_ZIP = esp32-wifi-lib-$(ESP_COMPONENTS_ESP_WIFI_LIB_VERSION).zip
296+
297+ ifeq ($(STORAGETMP),y)
298+ define DOWNLOAD_ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK
299+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_WIFI_LIB_URL),$(ESP_COMPONENTS_ESP_WIFI_LIB_VERSION).zip,chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP),$(NXTMPDIR)/$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP))
300+ endef
301+ else
302+ define DOWNLOAD_ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK
303+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_WIFI_LIB_URL),$(ESP_COMPONENTS_ESP_WIFI_LIB_VERSION).zip,chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP))
304+ endef
305+ endif
306+
307+ $(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP):
308+ $(call DOWNLOAD_ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK)
309+
310+ chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK): $(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP) chip/$(ESP_HAL_3RDPARTY_REPO)
311+ $(Q) unzip -oqq chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP) -d chip/
312+ $(Q) rm -fr chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_wifi/lib
313+ $(Q) mv chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK)-$(ESP_COMPONENTS_ESP_WIFI_LIB_VERSION) chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_wifi/lib
314+
315+ ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK = esp32c3-bt-lib
316+ ifndef ESP_COMPONENTS_ESP32C3_BT_LIB_VERSION
317+ ESP_COMPONENTS_ESP32C3_BT_LIB_VERSION = master
318+ endif
319+
320+ ifndef ESP_COMPONENTS_ESP32C3_BT_LIB_URL
321+ ESP_COMPONENTS_ESP32C3_BT_LIB_URL = https://github.com/espressif/esp32c3-bt-lib/archive
322+ endif
323+
324+ ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP = esp32c3-bt-lib-$(ESP_COMPONENTS_ESP32C3_BT_LIB_VERSION).zip
325+
326+ ifeq ($(STORAGETMP),y)
327+ define DOWNLOAD_ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK
328+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP32C3_BT_LIB_URL),$(ESP_COMPONENTS_ESP32C3_BT_LIB_VERSION).zip,chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP),$(NXTMPDIR)/$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP))
329+ endef
330+ else
331+ define DOWNLOAD_ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK
332+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP32C3_BT_LIB_URL),$(ESP_COMPONENTS_ESP32C3_BT_LIB_VERSION).zip,chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP))
333+ endef
235334endif
236335
336+ $(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP):
337+ $(call DOWNLOAD_ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK)
338+
339+ chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK): $(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP) chip/$(ESP_HAL_3RDPARTY_REPO)
340+ $(Q) unzip -oqq chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP) -d chip/
341+ $(Q) rm -fr chip/$(ESP_HAL_3RDPARTY_REPO)/components/bt/controller/lib_esp32c3_family
342+ $(Q) mv chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK)-$(ESP_COMPONENTS_ESP32C3_BT_LIB_VERSION) chip/$(ESP_HAL_3RDPARTY_REPO)/components/bt/controller/lib_esp32c3_family
343+
344+ ESP_COMPONENTS_ESP_COEX_LIB_UNPACK = esp-coex-lib
345+ ifndef ESP_COMPONENTS_ESP_COEX_LIB_VERSION
346+ ESP_COMPONENTS_ESP_COEX_LIB_VERSION = main
347+ endif
348+
349+ ifndef ESP_COMPONENTS_ESP_COEX_LIB_URL
350+ ESP_COMPONENTS_ESP_COEX_LIB_URL = https://github.com/espressif/esp-coex-lib/archive
351+ endif
352+
353+ ESP_COMPONENTS_ESP_COEX_LIB_ZIP = esp-coex-lib-$(ESP_COMPONENTS_ESP_COEX_LIB_VERSION).zip
354+
355+ ifeq ($(STORAGETMP),y)
356+ define DOWNLOAD_ESP_COMPONENTS_ESP_COEX_LIB_UNPACK
357+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_COEX_LIB_URL),$(ESP_COMPONENTS_ESP_COEX_LIB_VERSION).zip,chip/$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP),$(NXTMPDIR)/$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP))
358+ endef
359+ else
360+ define DOWNLOAD_ESP_COMPONENTS_ESP_COEX_LIB_UNPACK
361+ $(call DOWNLOAD,$(ESP_COMPONENTS_ESP_COEX_LIB_URL),$(ESP_COMPONENTS_ESP_COEX_LIB_VERSION).zip,chip/$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP))
362+ endef
363+ endif
364+
365+ $(ESP_COMPONENTS_ESP_COEX_LIB_ZIP):
366+ $(call DOWNLOAD_ESP_COMPONENTS_ESP_COEX_LIB_UNPACK)
367+
368+ chip/$(ESP_COMPONENTS_ESP_COEX_LIB_UNPACK): $(ESP_COMPONENTS_ESP_COEX_LIB_ZIP) chip/$(ESP_HAL_3RDPARTY_REPO)
369+ $(Q) unzip -oqq chip/$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP) -d chip/
370+ $(Q) rm -fr chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_coex/lib
371+ $(Q) mv chip/$(ESP_COMPONENTS_ESP_COEX_LIB_UNPACK)-$(ESP_COMPONENTS_ESP_COEX_LIB_VERSION) chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_coex/lib
372+
237373include common$(DELIM)espressif$(DELIM)Bootloader.mk
238374
239375# Silent preprocessor warnings
@@ -250,15 +386,49 @@ ifeq ($(CONFIG_ESP_WIRELESS),y)
250386 include common$(DELIM)espressif$(DELIM)Wireless.mk
251387endif
252388
253- context:: chip/$(ESP_HAL_3RDPARTY_REPO)
389+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/.git),)
390+ ifeq ($(CONFIG_ESP_WIRELESS),y)
391+ context:: chip/$(ESP_HAL_3RDPARTY_REPO) chip/$(ESP_COMPONENTS_MBEDTLS_UNPACK) chip/$(ESP_COMPONENTS_ESP_PHY_LIB_UNPACK) chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_UNPACK) chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_UNPACK) chip/$(ESP_COMPONENTS_ESP_COEX_LIB_UNPACK)
392+ else
393+ context:: chip/$(ESP_HAL_3RDPARTY_REPO) chip/$(ESP_COMPONENTS_MBEDTLS_UNPACK)
394+ endif
395+ else
396+ context::
397+ endif
254398 $(call COPYFILE,chip/$(ESP_HAL_3RDPARTY_REPO)/components/soc/$(CHIP_SERIES)/include/soc/gpio_sig_map.h,../include/chip/)
255399 $(call COPYFILE,chip/$(ESP_HAL_3RDPARTY_REPO)/nuttx/$(CHIP_SERIES)/include/irq.h,../include/chip/)
256400
257401distclean::
258402 $(call DELFILE,../include/chip/gpio_sig_map.h)
259403 $(call DELFILE,../include/chip/irq.h)
260404 $(call DELFILE,../../../vefuse.bin)
405+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/.git),)
261406 $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO))
407+ $(call DELFILE, chip/*.zip)
408+ else
409+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls/.git),)
410+ $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO)/components/mbedtls/mbedtls)
411+ $(call DELFILE, chip/$(ESP_COMPONENTS_MBEDTLS_ZIP))
412+ endif
413+ ifeq ($(CONFIG_ESP_WIRELESS),y)
414+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib/.git),)
415+ $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_phy/lib)
416+ $(call DELFILE, chip/$(ESP_COMPONENTS_ESP_PHY_LIB_ZIP))
417+ endif
418+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_wifi/lib/.git),)
419+ $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_wifi/lib)
420+ $(call DELFILE, chip/$(ESP_COMPONENTS_ESP_WIFI_LIB_ZIP))
421+ endif
422+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/components/bt/controller/lib_esp32c3_family/.git),)
423+ $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO)/components/bt/controller/lib_esp32c3_family)
424+ $(call DELFILE, chip/$(ESP_COMPONENTS_ESP32C3_BT_LIB_ZIP))
425+ endif
426+ ifeq ($(wildcard chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_coex/lib/.git),)
427+ $(call DELDIR,chip/$(ESP_HAL_3RDPARTY_REPO)/components/esp_coex/lib)
428+ $(call DELFILE, chip/$(ESP_COMPONENTS_ESP_COEX_LIB_ZIP))
429+ endif
430+ endif
431+ endif
262432ifeq ($(CONFIG_ESPRESSIF_USE_LP_CORE),y)
263433 $(call DELDIR,chip/ulp)
264434endif
0 commit comments