diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index bc6a05432a..490c349b05 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -511,7 +511,7 @@ jobs: - uses: actions/checkout@v4 with: { fetch-depth: 2 } - run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi - - run: make -C examples/zephyr init + - run: make -C examples/zephyr init REPO=zephyrprojectrtos/ci:v.0.26.14 # "no space left on device" with newers - name: minify manifest uses: mikefarah/yq@master with: diff --git a/examples/zephyr/Makefile b/examples/zephyr/Makefile index 4130cafd83..937442b906 100644 --- a/examples/zephyr/Makefile +++ b/examples/zephyr/Makefile @@ -7,6 +7,7 @@ DOCKER_ZEPHYR_PATH = $(DOCKER_PROJECT_DIR)/$(ZEPHYR_DIR) DOCKER ?= docker run --rm -v $(PROJECT_PATH):$(DOCKER_PROJECT_PATH) -v $(ZEPHYR_PATH):$(DOCKER_ZEPHYR_PATH) REPO ?= zephyrprojectrtos/ci +REVNO ?= --mr v3.7-branch YQ ?= yq @@ -18,7 +19,7 @@ clean: init: ifeq ($(wildcard $(ZEPHYR_PATH)/.*),) mkdir $(ZEPHYR_PATH) - $(DOCKER) $(REPO) /bin/sh -c 'cd $(DOCKER_PROJECT_DIR) && west init ./$(ZEPHYR_DIR)' + $(DOCKER) $(REPO) /bin/sh -c 'cd $(DOCKER_PROJECT_DIR) && west init $(REVNO) ./$(ZEPHYR_DIR)' endif update: diff --git a/examples/zephyr/device-dashboard/prj.conf b/examples/zephyr/device-dashboard/prj.conf index 0b93e5daee..2bf929d560 100644 --- a/examples/zephyr/device-dashboard/prj.conf +++ b/examples/zephyr/device-dashboard/prj.conf @@ -5,9 +5,9 @@ CONFIG_NET_TCP=y CONFIG_NET_UDP=y CONFIG_NET_DHCPV4=y CONFIG_NET_SOCKETS=y -CONFIG_NET_SOCKETS_POLL_MAX=32 +CONFIG_NET_SOCKETS_POLL_MAX=16 CONFIG_POSIX_API=y -CONFIG_POSIX_MAX_FDS=32 +CONFIG_ZVFS_OPEN_MAX=32 CONFIG_NET_MAX_CONN=10 CONFIG_NET_MAX_CONTEXTS=10 CONFIG_NET_CONFIG_SETTINGS=y diff --git a/examples/zephyr/http-client/prj.conf b/examples/zephyr/http-client/prj.conf index 6df5b4eed6..e9cf55f5f1 100644 --- a/examples/zephyr/http-client/prj.conf +++ b/examples/zephyr/http-client/prj.conf @@ -5,9 +5,9 @@ CONFIG_NET_TCP=y CONFIG_NET_UDP=y CONFIG_NET_DHCPV4=y CONFIG_NET_SOCKETS=y -CONFIG_NET_SOCKETS_POLL_MAX=32 +CONFIG_NET_SOCKETS_POLL_MAX=16 CONFIG_POSIX_API=y -CONFIG_POSIX_MAX_FDS=32 +CONFIG_ZVFS_OPEN_MAX=32 CONFIG_NET_CONFIG_SETTINGS=y CONFIG_NET_CONNECTION_MANAGER=y CONFIG_NET_LOG=y diff --git a/examples/zephyr/http-server/prj.conf b/examples/zephyr/http-server/prj.conf index c8042e8e10..593476fc1b 100644 --- a/examples/zephyr/http-server/prj.conf +++ b/examples/zephyr/http-server/prj.conf @@ -5,9 +5,9 @@ CONFIG_NET_TCP=y CONFIG_NET_UDP=y CONFIG_NET_DHCPV4=y CONFIG_NET_SOCKETS=y -CONFIG_NET_SOCKETS_POLL_MAX=32 +CONFIG_NET_SOCKETS_POLL_MAX=16 CONFIG_POSIX_API=y -CONFIG_POSIX_MAX_FDS=32 +CONFIG_ZVFS_OPEN_MAX=32 CONFIG_NET_CONFIG_SETTINGS=y CONFIG_NET_CONNECTION_MANAGER=y CONFIG_NET_LOG=y diff --git a/examples/zephyr/mqtt-aws-client/prj.conf b/examples/zephyr/mqtt-aws-client/prj.conf index 974bd1a811..4643640be3 100644 --- a/examples/zephyr/mqtt-aws-client/prj.conf +++ b/examples/zephyr/mqtt-aws-client/prj.conf @@ -5,9 +5,9 @@ CONFIG_NET_TCP=y CONFIG_NET_UDP=y CONFIG_NET_DHCPV4=y CONFIG_NET_SOCKETS=y -CONFIG_NET_SOCKETS_POLL_MAX=32 +CONFIG_NET_SOCKETS_POLL_MAX=16 CONFIG_POSIX_API=y -CONFIG_POSIX_MAX_FDS=32 +CONFIG_ZVFS_OPEN_MAX=32 CONFIG_NET_CONFIG_SETTINGS=y CONFIG_NET_CONNECTION_MANAGER=y CONFIG_NET_LOG=y diff --git a/examples/zephyr/websocket-server/prj.conf b/examples/zephyr/websocket-server/prj.conf index c8042e8e10..593476fc1b 100644 --- a/examples/zephyr/websocket-server/prj.conf +++ b/examples/zephyr/websocket-server/prj.conf @@ -5,9 +5,9 @@ CONFIG_NET_TCP=y CONFIG_NET_UDP=y CONFIG_NET_DHCPV4=y CONFIG_NET_SOCKETS=y -CONFIG_NET_SOCKETS_POLL_MAX=32 +CONFIG_NET_SOCKETS_POLL_MAX=16 CONFIG_POSIX_API=y -CONFIG_POSIX_MAX_FDS=32 +CONFIG_ZVFS_OPEN_MAX=32 CONFIG_NET_CONFIG_SETTINGS=y CONFIG_NET_CONNECTION_MANAGER=y CONFIG_NET_LOG=y diff --git a/test/wizard/test.sh b/test/wizard/test.sh index bd81a90f5e..e101fe387d 100755 --- a/test/wizard/test.sh +++ b/test/wizard/test.sh @@ -78,14 +78,15 @@ for board in $ESP; do dotest $board "ESP-IDF" "baremetal" done - -ZEPHYR="f207 f429 f746 f756 f767 h563 h573 h723 h735 h743 h745 h747 h753 h755 mcxn947 rt1060 rt1064 evb-pico" +# h755 not supported in 3.7.0 branch; master branch currently not building +# other ST boards (PHY address != 0) might build and not work +ZEPHYR="f207 f429 f746 f756 f767 h563 h573 h723 h735 h743 h745 h747 h753 mcxn947 rt1060 rt1064 evb-pico" for board in $ZEPHYR; do - echo dotest $board "Zephyr" "baremetal" + dotest $board "Zephyr" "baremetal" done ARDUINO="teensy41" -rm -rf workspace pico-sdk +rm -rf workspace pico-sdk mcuxpresso .cache .eclipse .p2 build cd - diff --git a/test/zephyr/Makefile b/test/zephyr/Makefile new file mode 100644 index 0000000000..e678be8650 --- /dev/null +++ b/test/zephyr/Makefile @@ -0,0 +1,47 @@ +ROOT ?= $(realpath $(CURDIR)/../..) +ZEPHYR_DIR ?= $(ROOT)/examples/zephyr/zephyrproject +DOCKER ?= docker run --rm -v $(ROOT):$(ROOT) -w $(CURDIR)/wizard +IMAGE ?= zephyrprojectrtos/ci +REVNO ?= --mr v3.7-branch +YQ ?= $(DOCKER) --user="root" mikefarah/yq + +all: zephyr $(PROJECTS) + rm -rf build + +$(PROJECTS): FORCE + $(DOCKER) -e ZEPHYR_BASE=$(ZEPHYR_DIR)/zephyr $(IMAGE) west build -b $(ZBNAME) -p auto $(realpath $@) + +FORCE: + +zephyr: init minify update + +init: FORCE + test -d $(ZEPHYR_DIR) || ( mkdir -p $(ZEPHYR_DIR) ; \ + $(DOCKER) $(IMAGE) west init $(REVNO) $(ZEPHYR_DIR)) + +update: FORCE + $(DOCKER) $(IMAGE) /bin/sh -c 'cd $(ZEPHYR_DIR) && west update' + +minify: FORCE + $(YQ) -i eval '(.manifest.defaults, .manifest.remotes, .manifest.projects[] | select(.name == "cmsis" or .name == "hal_stm32" or .name == "hal_nxp" or .name == "hal_espressif" or .name == "hal_rpi_pico" or .name == "segger" or .name == "mbedtls" or .name == "mcuboot" or .name == "picolibc" | del(.null) ), .manifest.self) as $$i ireduce({};setpath($$i | path; $$i)) | del(.manifest.projects.[].null) | del(..|select(length==0))' $(ZEPHYR_DIR)/zephyr/west.yml + + +Z_f207 := nucleo_f207zg +Z_f429 := nucleo_f429zi +Z_f746 := nucleo_f746zg +Z_f756 := nucleo_f756zg +Z_f767 := nucleo_f767zi +Z_h563 := nucleo_h563zi +Z_h573 := stm32h573i_dk +Z_h723 := nucleo_h723zg +Z_h735 := stm32h735g_disco +Z_h743 := nucleo_h743zi +Z_h745 := stm32h745i_disco/stm32h745xx/m7 +Z_h747 := stm32h747i_disco/stm32h747xx/m7 +Z_h753 := nucleo_h753zi +Z_h755 := nucleo_h755zi_q/stm32h755xx/m7 +Z_mcxn947 := frdm_mcxn947/mcxn947/cpu0 +Z_rt1060 := mimxrt1060_evk +Z_rt1064 := mimxrt1064_evk +Z_evb-pico := w5500_evb_pico +ZBNAME = $(Z_$(BOARD))