diff --git a/.github/workflows/wifi_remote__build.yml b/.github/workflows/wifi_remote__build.yml index 9e25e7cb25..612dc30b95 100644 --- a/.github/workflows/wifi_remote__build.yml +++ b/.github/workflows/wifi_remote__build.yml @@ -49,7 +49,7 @@ jobs: run: | . ${IDF_PATH}/export.sh pip install idf-component-manager idf-build-apps --upgrade - python ./scripts/generate_slave_configs.py ./components/esp_wifi_remote/${{matrix.test.path}} + python ./components/esp_wifi_remote/scripts/generate_slave_configs.py ./components/esp_wifi_remote/${{matrix.test.path}} python ./ci/build_apps.py ./components/esp_wifi_remote/${{matrix.test.path}} -vv --preserve-all build_wifi_remote_example: @@ -77,3 +77,36 @@ jobs: . ${IDF_PATH}/export.sh pip install idf-component-manager idf-build-apps --upgrade python ./ci/build_apps.py ./components/esp_wifi_remote/${{matrix.example.path}} -vv --preserve-all + + build_idf_examples_with_wifi_remote: + if: contains(github.event.pull_request.labels.*.name, 'wifi_remote') || github.event_name == 'push' + name: Build IDF examples with WiFi Remote + strategy: + matrix: + idf_ver: ["latest", "release-v5.3"] + idf_target: ["esp32p4", "esp32h2", "esp32s3"] + test: [ { app: idf_mqtt_example, path: "examples/protocols/mqtt/tcp" }] + runs-on: ubuntu-20.04 + container: espressif/idf:${{ matrix.idf_ver }} + steps: + - name: Checkout esp-protocols + uses: actions/checkout@v3 + - name: ccache + uses: hendrikmuhs/ccache-action@v1.2 + with: + key: ${{ matrix.idf_ver }} + - name: Build ${{ matrix.test.app }} with IDF-${{ matrix.idf_ver }} for ${{ matrix.idf_target }} + shell: bash + run: | + . ${IDF_PATH}/export.sh + pip install idf-component-manager idf-build-apps --upgrade + export OVERRIDE_PATH=`pwd`/components/esp_wifi_remote + echo ${OVERRIDE_PATH} + sed -i '/espressif\/esp_wifi_remote:/a \ \ \ \ override_path: "${OVERRIDE_PATH}"' ${IDF_PATH}/${{matrix.test.path}}/main/idf_component.yml + cat ${IDF_PATH}/${{matrix.test.path}}/main/idf_component.yml + export PEDANTIC_FLAGS="-DIDF_CI_BUILD -Werror -Werror=deprecated-declarations -Werror=unused-variable -Werror=unused-but-set-variable -Werror=unused-function" + export EXTRA_CFLAGS="${PEDANTIC_FLAGS} -Wstrict-prototypes" + export EXTRA_CXXFLAGS="${PEDANTIC_FLAGS}" + cd ${IDF_PATH}/${{matrix.test.path}} + idf-build-apps find --config sdkconfig.ci* -vv --target ${{ matrix.idf_target }} + idf-build-apps build --config sdkconfig.ci* -vv --target ${{ matrix.idf_target }} diff --git a/components/esp_wifi_remote/idf_v5.3/wifi_apps/roaming_app/src/Kconfig.roaming b/components/esp_wifi_remote/idf_v5.3/wifi_apps/roaming_app/src/Kconfig.roaming new file mode 100644 index 0000000000..e69de29bb2 diff --git a/components/esp_wifi_remote/idf_v5.4/Kconfig.soc_wifi_caps.in b/components/esp_wifi_remote/idf_v5.4/Kconfig.soc_wifi_caps.in index d1e5f4c170..032f3f366a 100644 --- a/components/esp_wifi_remote/idf_v5.4/Kconfig.soc_wifi_caps.in +++ b/components/esp_wifi_remote/idf_v5.4/Kconfig.soc_wifi_caps.in @@ -222,6 +222,10 @@ if SLAVE_IDF_TARGET_ESP32C6 bool default y + config SLAVE_SOC_WIFI_MAC_VERSION_NUM + int + default 2 + endif # ESP32C6 if SLAVE_IDF_TARGET_ESP32C5 @@ -266,6 +270,10 @@ if SLAVE_IDF_TARGET_ESP32C5 bool default y + config SLAVE_SOC_WIFI_MAC_VERSION_NUM + int + default 3 + endif # ESP32C5 if SLAVE_IDF_TARGET_ESP32C61 @@ -306,4 +314,8 @@ if SLAVE_IDF_TARGET_ESP32C61 bool default y + config SLAVE_SOC_WIFI_MAC_VERSION_NUM + int + default 3 + endif # ESP32C61 diff --git a/components/esp_wifi_remote/scripts/generate_slave_configs.py b/components/esp_wifi_remote/scripts/generate_slave_configs.py index ab9894ca75..33ebef9b23 100644 --- a/components/esp_wifi_remote/scripts/generate_slave_configs.py +++ b/components/esp_wifi_remote/scripts/generate_slave_configs.py @@ -10,7 +10,8 @@ output_directory = sys.argv[1] # Input Kconfig file -kconfig_file = f"idf_v{os.getenv('ESP_IDF_VERSION')}/Kconfig.slave_select.in" +component_path = os.path.normpath(os.path.join(os.path.realpath(__file__),'..', '..')) +kconfig_file = os.path.join(component_path, f"idf_v{os.getenv('ESP_IDF_VERSION')}", 'Kconfig.slave_select.in') # Output file prefix output_prefix = 'sdkconfig.ci.'