Skip to content

Commit 06c6f84

Browse files
committed
Merge branch 'fix/ci_test_more_versions' into 'main'
fix(CI_test_more_versions): Test against more ESP IDF versions See merge request app-frameworks/esp_hosted_mcu!79
2 parents 278d3b4 + 55ea395 commit 06c6f84

File tree

7 files changed

+73
-23
lines changed

7 files changed

+73
-23
lines changed

.gitlab-ci.yml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -65,30 +65,33 @@ before_script:
6565

6666
build_idf_v5.3:
6767
extends: .build_template
68-
image: espressif/idf:release-v5.3
68+
image: espressif/idf:${IDF_VER}
6969
parallel:
7070
matrix:
71-
- IDF_TARGET: ["esp32p4", "esp32h2"]
71+
- IDF_VER: ["v5.3.1", "v5.3.2", "v5.3.3", "release-v5.3"]
72+
IDF_TARGET: ["esp32p4", "esp32h2"]
7273
IDF_SLAVE_TARGET: ["esp32c6"]
7374
IDF_EXAMPLE_PATH: examples/protocols/mqtt/tcp
7475
#IDF_EXAMPLE_PATH: [examples/wifi/iperf]
7576

7677
build_idf_v5.4:
7778
extends: .build_template
78-
image: espressif/idf:release-v5.4
79+
image: espressif/idf:${IDF_VER}
7980
parallel:
8081
matrix:
81-
- IDF_TARGET: ["esp32p4", "esp32h2"]
82+
- IDF_VER: ["v5.4", "v5.4.1", "release-v5.4"]
83+
IDF_TARGET: ["esp32p4", "esp32h2"]
8284
IDF_SLAVE_TARGET: ["esp32c6"]
8385
IDF_EXAMPLE_PATH: examples/protocols/mqtt/tcp
8486
#IDF_EXAMPLE_PATH: [examples/wifi/iperf]
8587

8688
build_idf_v5.5:
8789
extends: .build_template
88-
image: espressif/idf:release-v5.5
90+
image: espressif/idf:${IDF_VER}
8991
parallel:
9092
matrix:
91-
- IDF_TARGET: ["esp32p4", "esp32h2"]
93+
- IDF_VER: ["release-v5.5"]
94+
IDF_TARGET: ["esp32p4", "esp32h2"]
9295
IDF_SLAVE_TARGET: ["esp32c6", "esp32c5", "esp32", "esp32c2", "esp32c3", "esp32s3" ]
9396
IDF_EXAMPLE_PATH: [examples/wifi/iperf]
9497

host/drivers/rpc/core/rpc_req.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -333,7 +333,9 @@ int compose_rpc_req(Rpc *req, ctrl_cmd_t *app_req, int32_t *failure_status)
333333
p_c_ap->pmf_cfg->capable = p_a_ap->pmf_cfg.capable;
334334
p_c_ap->pmf_cfg->required = p_a_ap->pmf_cfg.required;
335335
p_c_ap->sae_pwe_h2e = p_a_ap->sae_pwe_h2e;
336+
#if H_GOT_AP_CONFIG_PARAM_TRANSITION_DISABLE
336337
p_c_ap->transition_disable = p_a_ap->transition_disable;
338+
#endif
337339
#if H_PRESENT_IN_ESP_IDF_5_5_0
338340
p_c_ap->sae_ext = p_a_ap->sae_ext;
339341
RPC_ALLOC_ELEMENT(WifiBssMaxIdleConfig, p_c_ap->bss_max_idle_cfg, wifi_bss_max_idle_config__init);

host/drivers/rpc/core/rpc_rsp.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -334,7 +334,9 @@ int rpc_parse_rsp(Rpc *rpc_msg, ctrl_cmd_t *app_resp)
334334
p_a_ap->pmf_cfg.required = p_c_ap->pmf_cfg->required;
335335
}
336336
p_a_ap->sae_pwe_h2e = p_c_ap->sae_pwe_h2e;
337+
#if H_GOT_AP_CONFIG_PARAM_TRANSITION_DISABLE
337338
p_a_ap->transition_disable = p_c_ap->transition_disable;
339+
#endif
338340
#if H_PRESENT_IN_ESP_IDF_5_5_0
339341
p_a_ap->sae_ext = p_c_ap->sae_ext;
340342
if (p_c_ap->bss_max_idle_cfg) {

host/port/esp/freertos/include/esp_hosted_wifi_config.h

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@
99
#include "esp_idf_version.h"
1010
#include "esp_hosted_config.h"
1111

12+
#if ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 3, 1)
13+
#error ESP-IDF version used is not supported
14+
#endif
15+
1216
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 4, 0)
1317
/* dual band API support available */
1418
#define H_WIFI_DUALBAND_SUPPORT 1
@@ -38,4 +42,14 @@
3842
#define H_DECODE_WIFI_RESERVED_FIELD 0
3943
#endif
4044

45+
/* wifi_ap_config_t::transition_disable only found in
46+
* IDF v5.3.3 and above, or
47+
* IDF v5.4.1 and above
48+
*/
49+
#if (ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 3, 3)) || (ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 4, 1))
50+
#define H_GOT_AP_CONFIG_PARAM_TRANSITION_DISABLE 0
51+
#else
52+
#define H_GOT_AP_CONFIG_PARAM_TRANSITION_DISABLE 1
53+
#endif
54+
4155
#endif /* __ESP_HOSTED_WIFI_CONFIG_H__ */

idf_component.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
version: "2.0.11"
1+
version: "2.0.12"
22
description: ESP-Hosted-MCU provide drivers to act any ESP chipset as Wi-Fi or Bluetooth co-processor.
33
url: https://github.com/espressif/esp-hosted-mcu
44
examples:

slave/main/slave_control.c

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -25,22 +25,7 @@
2525
#include "esp_hosted_rpc.h"
2626
#include "esp_hosted_transport.h"
2727
#include "esp_hosted_bitmasks.h"
28-
#include "esp_idf_version.h"
29-
30-
/* ESP-IDF 5.5.0: renamed reserved fields to reserved1/reserved2 */
31-
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 5, 0)
32-
#define H_WIFI_NEW_RESERVED_FIELD_NAMES 1
33-
#define H_PRESENT_IN_ESP_IDF_5_5_0 1
34-
#else
35-
#define H_WIFI_NEW_RESERVED_FIELD_NAMES 0
36-
#define H_PRESENT_IN_ESP_IDF_5_5_0 0
37-
#endif
38-
39-
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 4, 0)
40-
#define H_PRESENT_IN_ESP_IDF_5_4_0 1
41-
#else
42-
#define H_PRESENT_IN_ESP_IDF_5_4_0 0
43-
#endif
28+
#include "slave_wifi_config.h"
4429

4530
/* Slave-side: Always support reserved field decoding for maximum compatibility
4631
* The host may or may not have CONFIG_ESP_HOSTED_DECODE_WIFI_RESERVED_FIELD enabled
@@ -969,7 +954,9 @@ static esp_err_t req_wifi_set_config(Rpc *req, Rpc *resp, void *priv_data)
969954
p_a_ap->pmf_cfg.required = p_c_ap->pmf_cfg->required;
970955
}
971956
p_a_ap->sae_pwe_h2e = p_c_ap->sae_pwe_h2e;
957+
#if H_GOT_AP_CONFIG_PARAM_TRANSITION_DISABLE
972958
p_a_ap->transition_disable = p_c_ap->transition_disable;
959+
#endif
973960
#if H_PRESENT_IN_ESP_IDF_5_5_0
974961
p_a_ap->sae_ext = p_c_ap->sae_ext;
975962
if (p_c_ap->bss_max_idle_cfg) {
@@ -1133,7 +1120,9 @@ static esp_err_t req_wifi_get_config(Rpc *req, Rpc *resp, void *priv_data)
11331120
p_c_ap->pmf_cfg->capable = p_a_ap->pmf_cfg.capable;
11341121
p_c_ap->pmf_cfg->required = p_a_ap->pmf_cfg.required;
11351122
p_c_ap->sae_pwe_h2e = p_a_ap->sae_pwe_h2e;
1123+
#if H_GOT_AP_CONFIG_PARAM_TRANSITION_DISABLE
11361124
p_c_ap->transition_disable = p_a_ap->transition_disable;
1125+
#endif
11371126
#if H_PRESENT_IN_ESP_IDF_5_5_0
11381127
p_c_ap->sae_ext = p_a_ap->sae_ext;
11391128
RPC_ALLOC_ELEMENT(WifiBssMaxIdleConfig, p_c_ap->bss_max_idle_cfg, wifi_bss_max_idle_config__init);

slave/main/slave_wifi_config.h

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
/*
2+
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
#ifndef __SLAVE_WIFI_CONFIG_H__
7+
#define __SLAVE_WIFI_CONFIG_H__
8+
9+
#include "esp_idf_version.h"
10+
11+
#if ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 3, 1)
12+
#error ESP-IDF version used is not supported
13+
#endif
14+
15+
/* ESP-IDF 5.5.0: renamed reserved fields to reserved1/reserved2 */
16+
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 5, 0)
17+
#define H_WIFI_NEW_RESERVED_FIELD_NAMES 1
18+
#define H_PRESENT_IN_ESP_IDF_5_5_0 1
19+
#else
20+
#define H_WIFI_NEW_RESERVED_FIELD_NAMES 0
21+
#define H_PRESENT_IN_ESP_IDF_5_5_0 0
22+
#endif
23+
24+
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 4, 0)
25+
#define H_PRESENT_IN_ESP_IDF_5_4_0 1
26+
#else
27+
#define H_PRESENT_IN_ESP_IDF_5_4_0 0
28+
#endif
29+
30+
/* wifi_ap_config_t::transition_disable only found in
31+
* IDF v5.3.3 and above, or
32+
* IDF v5.4.1 and above
33+
*/
34+
#if (ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 3, 3)) || (ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 4, 1))
35+
#define H_GOT_AP_CONFIG_PARAM_TRANSITION_DISABLE 0
36+
#else
37+
#define H_GOT_AP_CONFIG_PARAM_TRANSITION_DISABLE 1
38+
#endif
39+
40+
#endif

0 commit comments

Comments
 (0)