Compare commits

..

1 Commits

Author SHA1 Message Date
Angus Gratton
95c7b26cdd version: Update to v3.3.3 2020-08-27 18:21:03 +10:00
56 changed files with 234 additions and 1304 deletions

View File

@@ -935,6 +935,7 @@ assign_test:
# clone local test env configs
- git clone $TEST_ENV_CONFIG_REPOSITORY
- python $CHECKOUT_REF_SCRIPT ci-test-runner-configs ci-test-runner-configs
- cd ci-test-runner-configs
# clone test bench
- git clone $TEST_SCRIPT_REPOSITORY
- python $CHECKOUT_REF_SCRIPT auto_test_script auto_test_script
@@ -960,6 +961,7 @@ nvs_compatible_test:
# clone local test env configs
- git clone $TEST_ENV_CONFIG_REPOSITORY
- python $CHECKOUT_REF_SCRIPT ci-test-runner-configs ci-test-runner-configs
- cd ci-test-runner-configs
# clone test bench
- git clone $TEST_SCRIPT_REPOSITORY
- python $CHECKOUT_REF_SCRIPT auto_test_script auto_test_script
@@ -1335,13 +1337,14 @@ IT_004:
IT_005:
<<: *test_template
parallel: 2
tags:
- ESP32_IDF
- SSC_T1_5
IT_006:
<<: *test_template
parallel: 7
parallel: 8
tags:
- ESP32_IDF
- SSC_T1_6
@@ -1365,6 +1368,13 @@ IT_009:
- ESP32_IDF
- SSC_T1_3
IT_010:
<<: *test_template
parallel: 4
tags:
- ESP32_IDF
- SSC_T5_1
IT_011:
<<: *test_template
tags:
@@ -1404,7 +1414,6 @@ IT_015:
IT_016:
<<: *test_template
allow_failure: true
tags:
- ESP32_IDF
- SSC_T50_MESH1
@@ -1417,6 +1426,7 @@ IT_017:
IT_018:
<<: *test_template
parallel: 2
tags:
- ESP32_IDF
- SSC_T1_9

View File

@@ -50,33 +50,9 @@ esp_err_t esp_ble_gatt_set_local_mtu (uint16_t mtu)
#if (BLE_INCLUDED == TRUE)
extern uint16_t L2CA_GetFreePktBufferNum_LE(void);
/**
* @brief This function is called to get currently sendable packets number on controller,
* the function is called only in BLE running core and single connection now.
*
* @return
* sendable packets number on controller
*
*/
uint16_t esp_ble_get_sendable_packets_num (void)
uint16_t esp_ble_get_sendable_packets_num ()
{
return L2CA_GetFreePktBufferNum_LE();
}
/**
* @brief This function is used to query the number of available buffers for the current connection.
* When you need to query the current available buffer number, it is recommended to use this API.
* @param[in] conn_id: current connection id.
*
* @return
* Number of available buffers for the current connection
*
*/
extern UINT16 L2CA_GetCurFreePktBufferNum_LE(UINT16 conn_id);
uint16_t esp_ble_get_cur_sendable_packets_num (uint16_t connid)
{
return L2CA_GetCurFreePktBufferNum_LE(connid);
}
#endif

View File

@@ -431,9 +431,6 @@ esp_err_t esp_ble_gattc_write_char(esp_gatt_if_t gattc_if,
arg.write_char.value = value;
arg.write_char.write_type = write_type;
arg.write_char.auth_req = auth_req;
if(write_type == ESP_GATT_WRITE_TYPE_NO_RSP){
l2ble_update_att_acl_pkt_num(L2CA_ADD_BTC_NUM, NULL);
}
return (btc_transfer_context(&msg, &arg, sizeof(btc_ble_gattc_args_t), btc_gattc_arg_deep_copy) == BT_STATUS_SUCCESS ? ESP_OK : ESP_FAIL);
}
@@ -465,10 +462,6 @@ esp_err_t esp_ble_gattc_write_char_descr (esp_gatt_if_t gattc_if,
arg.write_descr.write_type = write_type;
arg.write_descr.auth_req = auth_req;
if(write_type == ESP_GATT_WRITE_TYPE_NO_RSP){
l2ble_update_att_acl_pkt_num(L2CA_ADD_BTC_NUM, NULL);
}
return (btc_transfer_context(&msg, &arg, sizeof(btc_ble_gattc_args_t), btc_gattc_arg_deep_copy) == BT_STATUS_SUCCESS ? ESP_OK : ESP_FAIL);
}

View File

@@ -274,9 +274,6 @@ esp_err_t esp_ble_gatts_send_indicate(esp_gatt_if_t gatts_if, uint16_t conn_id,
arg.send_ind.value_len = value_len;
arg.send_ind.value = value;
if(need_confirm == false){
l2ble_update_att_acl_pkt_num(L2CA_ADD_BTC_NUM, NULL);
}
return (btc_transfer_context(&msg, &arg, sizeof(btc_ble_gatts_args_t),
btc_gatts_arg_deep_copy) == BT_STATUS_SUCCESS ? ESP_OK : ESP_FAIL);
}

View File

@@ -46,7 +46,6 @@ extern esp_err_t esp_ble_gatt_set_local_mtu (uint16_t mtu);
#if (BLE_INCLUDED == TRUE)
extern uint16_t esp_ble_get_sendable_packets_num (void);
extern uint16_t esp_ble_get_cur_sendable_packets_num (uint16_t connid);
#endif
#ifdef __cplusplus

View File

@@ -31,7 +31,7 @@
#include "bta/bta_sys.h"
#include "bta/bta_gatt_api.h"
#include "bta_gattc_int.h"
#include "stack/l2c_api.h"
/*****************************************************************************
** Constants
*****************************************************************************/
@@ -603,10 +603,6 @@ void BTA_GATTC_WriteCharValue ( UINT16 conn_id,
memcpy(p_buf->p_value, p_value, len);
}
if(write_type == BTA_GATTC_TYPE_WRITE_NO_RSP){
l2ble_update_att_acl_pkt_num(L2CA_DECREASE_BTC_NUM, NULL);
l2ble_update_att_acl_pkt_num(L2CA_ADD_BTU_NUM, NULL);
}
bta_sys_sendmsg(p_buf);
}
return;
@@ -654,10 +650,6 @@ void BTA_GATTC_WriteCharDescr (UINT16 conn_id,
memcpy(p_buf->p_value, p_data->p_value, p_data->len);
}
if(write_type == BTA_GATTC_TYPE_WRITE_NO_RSP){
l2ble_update_att_acl_pkt_num(L2CA_DECREASE_BTC_NUM, NULL);
l2ble_update_att_acl_pkt_num(L2CA_ADD_BTU_NUM, NULL);
}
bta_sys_sendmsg(p_buf);
}
return;

View File

@@ -35,7 +35,6 @@
#include "stack/btm_ble_api.h"
#include <string.h>
#include "osi/allocator.h"
#include "stack/l2c_api.h"
static void bta_gatts_nv_save_cback(BOOLEAN is_saved, tGATTS_HNDL_RANGE *p_hndl_range);
static BOOLEAN bta_gatts_nv_srv_chg_cback(tGATTS_SRV_CHG_CMD cmd, tGATTS_SRV_CHG_REQ *p_req,
@@ -673,7 +672,6 @@ void bta_gatts_indicate_handle (tBTA_GATTS_CB *p_cb, tBTA_GATTS_DATA *p_msg)
p_msg->api_indicate.len,
p_msg->api_indicate.value);
} else {
l2ble_update_att_acl_pkt_num(L2CA_DECREASE_BTU_NUM, NULL);
status = GATTS_HandleValueNotification (p_msg->api_indicate.hdr.layer_specific,
p_msg->api_indicate.attr_id,
p_msg->api_indicate.len,

View File

@@ -31,7 +31,7 @@
#include "bta/bta_gatt_api.h"
#include "bta_gatts_int.h"
#include "osi/allocator.h"
#include "stack/l2c_api.h"
/*****************************************************************************
** Constants
*****************************************************************************/
@@ -426,11 +426,6 @@ void BTA_GATTS_HandleValueIndication (UINT16 conn_id, UINT16 attr_id, UINT16 dat
memcpy(p_buf->value, p_data, data_len);
}
if(need_confirm == false){
l2ble_update_att_acl_pkt_num(L2CA_DECREASE_BTC_NUM, NULL);
l2ble_update_att_acl_pkt_num(L2CA_ADD_BTU_NUM, NULL);
}
bta_sys_sendmsg(p_buf);
}
return;

View File

@@ -219,7 +219,6 @@ void gatt_act_write (tGATT_CLCB *p_clcb, UINT8 sec_act)
if (p_attr) {
switch (p_clcb->op_subtype) {
case GATT_WRITE_NO_RSP:
l2ble_update_att_acl_pkt_num(L2CA_DECREASE_BTU_NUM, NULL);
p_clcb->s_handle = p_attr->handle;
op_code = (sec_act == GATT_SEC_SIGN_DATA) ? GATT_SIGN_CMD_WRITE : GATT_CMD_WRITE;
rt = gatt_send_write_msg(p_tcb,

View File

@@ -29,7 +29,6 @@
#include "common/bt_target.h"
#include "stack/l2cdefs.h"
#include "stack/hcidefs.h"
#include "osi/fixed_queue.h"
/*****************************************************************************
** Constants
@@ -1228,21 +1227,6 @@ extern UINT16 L2CA_GetDisconnectReason (BD_ADDR remote_bda, tBT_TRANSPORT transp
extern BOOLEAN L2CA_CheckIsCongest(UINT16 fixed_cid, UINT16 handle);
#define L2CA_GET_ATT_NUM 0
#define L2CA_ADD_BTC_NUM 1
#define L2CA_DECREASE_BTC_NUM 2
#define L2CA_ADD_BTU_NUM 3
#define L2CA_DECREASE_BTU_NUM 4
#define L2CA_BUFF_INI 5
#define L2CA_BUFF_DEINIT 6
typedef struct {
UINT16 conn_id;
UINT16 * get_num;
} tl2c_buff_param_t;
extern void l2ble_update_att_acl_pkt_num(UINT8 type, tl2c_buff_param_t *param);
#endif /* (BLE_INCLUDED == TRUE) */

View File

@@ -73,7 +73,7 @@
#define L2CAP_DEFAULT_RETRANS_TOUT 2000 /* 2000 milliseconds */
#define L2CAP_DEFAULT_MONITOR_TOUT 12000 /* 12000 milliseconds */
#define L2CAP_FCR_ACK_TOUT 200 /* 200 milliseconds */
#define L2CAP_CACHE_ATT_ACL_NUM 10
/* Define the possible L2CAP channel states. The names of
** the states may seem a bit strange, but they are taken from
** the Bluetooth specification.
@@ -165,10 +165,6 @@ typedef enum {
#define L2CAP_MAX_FCR_CFG_TRIES 2 /* Config attempts before disconnecting */
#ifndef MIN
#define MIN(a, b) (((a) < (b)) ? (a) : (b))
#endif
typedef uint8_t tL2C_BLE_FIXED_CHNLS_MASK;
typedef struct {

View File

@@ -36,8 +36,6 @@
#include "stack/btu.h"
#include "stack/btm_api.h"
#include "osi/allocator.h"
#include "gatt_int.h"
#include "freertos/semphr.h"
#if (CLASSIC_BT_INCLUDED == TRUE)
/*******************************************************************************
@@ -1879,16 +1877,6 @@ UINT16 L2CA_GetFreePktBufferNum_LE(void)
{
return l2cb.controller_le_xmit_window;
}
UINT16 L2CA_GetCurFreePktBufferNum_LE(UINT16 conn_id)
{
uint16_t num = 0;
tl2c_buff_param_t param;
param.conn_id = conn_id;
param.get_num = &num;
l2ble_update_att_acl_pkt_num(L2CA_GET_ATT_NUM, &param);
return num;
}
#endif
/*******************************************************************************
@@ -2277,111 +2265,3 @@ UINT16 L2CA_FlushChannel (UINT16 lcid, UINT16 num_to_flush)
return (num_left);
}
/******************************************************************************
**
** Function update_acl_pkt_num
**
** Description Update the number of att acl packets to be sent in xmit_hold_q.
**
** Returns None
**
*******************************************************************************/
#if BLE_INCLUDED == TRUE
void l2ble_update_att_acl_pkt_num(UINT8 type, tl2c_buff_param_t *param)
{
static SemaphoreHandle_t buff_semaphore = NULL ;
static INT16 btc_buf;
static INT16 btu_buf;
if(buff_semaphore == NULL && type != L2CA_BUFF_INI){
L2CAP_TRACE_ERROR("%s buff_semaphore not init", __func__);
return;
}
switch (type)
{
case L2CA_ADD_BTC_NUM:{
xSemaphoreTake(buff_semaphore, portMAX_DELAY);
btc_buf ++;
xSemaphoreGive(buff_semaphore);
break;
}
case L2CA_DECREASE_BTC_NUM:{
xSemaphoreTake(buff_semaphore, portMAX_DELAY);
btc_buf --;
xSemaphoreGive(buff_semaphore);
break;
}
case L2CA_ADD_BTU_NUM:{
xSemaphoreTake(buff_semaphore, portMAX_DELAY);
btu_buf ++;
xSemaphoreGive(buff_semaphore);
break;
}
case L2CA_DECREASE_BTU_NUM:{
xSemaphoreTake(buff_semaphore, portMAX_DELAY);
btu_buf --;
xSemaphoreGive(buff_semaphore);
break;
}
case L2CA_GET_ATT_NUM:{
xSemaphoreTake(buff_semaphore, portMAX_DELAY);
INT16 att_acl_pkt_num = 0;
INT16 att_max_num = 0;
*(param->get_num) = 0;
UINT8 tcb_idx = param->conn_id;
tGATT_TCB * p_tcb = gatt_get_tcb_by_idx(tcb_idx);
if (p_tcb == NULL){
L2CAP_TRACE_ERROR("%s not found p_tcb", __func__);
xSemaphoreGive(buff_semaphore);
break;
}
tL2C_LCB * p_lcb = l2cu_find_lcb_by_bd_addr (p_tcb->peer_bda, BT_TRANSPORT_LE);
if (p_lcb == NULL){
L2CAP_TRACE_ERROR("%s not found p_lcb", __func__);
xSemaphoreGive(buff_semaphore);
break;
}
fixed_queue_t * queue = p_lcb->p_fixed_ccbs[L2CAP_ATT_CID - L2CAP_FIRST_FIXED_CHNL]->xmit_hold_q;
att_max_num = MIN(p_lcb->link_xmit_quota, L2CAP_CACHE_ATT_ACL_NUM);
if (queue == NULL){
L2CAP_TRACE_ERROR("%s not found queue", __func__);
xSemaphoreGive(buff_semaphore);
break;
}
att_acl_pkt_num = fixed_queue_length(queue);
if(att_acl_pkt_num < att_max_num){
if(btc_buf + btu_buf < att_max_num - att_acl_pkt_num){
*(param->get_num) = att_max_num - att_acl_pkt_num - (btc_buf + btu_buf);
}
}
xSemaphoreGive(buff_semaphore);
break;
}
case L2CA_BUFF_INI:{
btc_buf = 0;
btu_buf = 0;
buff_semaphore = xSemaphoreCreateBinary();
if (buff_semaphore == NULL) {
L2CAP_TRACE_ERROR("%s NO MEMORY", __func__);
break;
}
xSemaphoreGive(buff_semaphore);
break;
}
case L2CA_BUFF_DEINIT:{
xSemaphoreTake(buff_semaphore, portMAX_DELAY);
btc_buf = 0;
btu_buf = 0;
xSemaphoreGive(buff_semaphore);
vSemaphoreDelete(buff_semaphore);
buff_semaphore = NULL;
break;
}
default:
break;
}
}
#endif

View File

@@ -1127,12 +1127,6 @@ void l2c_link_check_send_pkts (tL2C_LCB *p_lcb, tL2C_CCB *p_ccb, BT_HDR *p_buf)
while ((l2cb.controller_xmit_window != 0) && (p_lcb->sent_not_acked < p_lcb->link_xmit_quota))
#endif
{
//need check flag: partial_segment_being_sent.
if ( (p_lcb->partial_segment_being_sent)
|| (p_lcb->link_state != LST_CONNECTED)
|| (L2C_LINK_CHECK_POWER_MODE (p_lcb)) ) {
break;
}
//L2CAP_TRACE_DEBUG("l2cu_get_next_buffer_to_send = %p",l2cu_get_next_buffer_to_send(p_lcb));
if ((p_buf = l2cu_get_next_buffer_to_send (p_lcb)) == NULL) {
break;

View File

@@ -880,10 +880,6 @@ void l2c_init (void)
if (l2cb.rcv_pending_q == NULL) {
L2CAP_TRACE_ERROR("%s unable to allocate memory for link layer control block", __func__);
}
#if BLE_INCLUDED == TRUE
l2ble_update_att_acl_pkt_num(L2CA_BUFF_INI, NULL);
#endif
}
void l2c_free(void)
@@ -893,9 +889,6 @@ void l2c_free(void)
#if L2C_DYNAMIC_MEMORY
FREE_AND_RESET(l2c_cb_ptr);
#endif
#if BLE_INCLUDED == TRUE
l2ble_update_att_acl_pkt_num(L2CA_BUFF_DEINIT, NULL);
#endif
}
/*******************************************************************************

View File

@@ -3657,7 +3657,7 @@ void l2cu_check_channel_congestion (tL2C_CCB *p_ccb)
} else {
tL2C_LCB *p_lcb = p_ccb->p_lcb;
/* If this channel was not congested but it is congested now, tell the app */
if (q_count > p_ccb->buff_quota || (p_lcb && (p_lcb->link_xmit_data_q) && (list_length(p_lcb->link_xmit_data_q) + q_count) > p_ccb->buff_quota)) {
if ((q_count > p_ccb->buff_quota) || (p_lcb && (p_ccb->local_cid == L2CAP_ATT_CID) && (p_lcb->link_xmit_quota > 0) && (p_lcb->link_xmit_quota <= p_lcb->sent_not_acked))) {
p_ccb->cong_sent = TRUE;
if (p_ccb->p_rcb && p_ccb->p_rcb->api.pL2CA_CongestionStatus_Cb) {
L2CAP_TRACE_DEBUG ("L2CAP - Calling CongestionStatus_Cb (TRUE),CID:0x%04x,XmitQ:%u,Quota:%u",

View File

@@ -374,5 +374,5 @@ static void rs485_master()
* correctness of RS485 interface channel communication. It requires
* RS485 bus driver hardware to be connected to boards.
*/
TEST_CASE_MULTIPLE_DEVICES("RS485 half duplex uart multiple devices test.", "[driver_RS485][ignore][test_env=UT_T2_RS485]", rs485_master, rs485_slave);
TEST_CASE_MULTIPLE_DEVICES("RS485 half duplex uart multiple devices test.", "[driver_RS485][test_env=UT_T2_RS485]", rs485_master, rs485_slave);

View File

@@ -43,7 +43,7 @@ ifneq ("$(filter esp32,$(TEST_COMPONENTS_LIST))","")
CPPFLAGS += -DESP_TIMER_DYNAMIC_OVERFLOW_VAL
endif
ESP32_LINKER_SCRIPT_TEMPLATE := $(COMPONENT_PATH)/ld/esp32.project.ld.in
ESP32_LINKER_SCRIPT_OUTPUT_DIR := $(realpath $(BUILD_DIR_BASE)/esp32)
ESP32_LINKER_SCRIPT_OUTPUT_DIR := $(abspath $(BUILD_DIR_BASE)/esp32)
# Target to generate linker script generator from fragments presented by each of
# the components

View File

@@ -442,15 +442,6 @@ static const esp_err_msg_t esp_err_msg_table[] = {
# endif
# ifdef ESP_ERR_MESH_VOTING
ERR_TBL_IT(ESP_ERR_MESH_VOTING), /* 16406 0x4016 */
# endif
# ifdef ESP_ERR_MESH_XMIT
ERR_TBL_IT(ESP_ERR_MESH_XMIT), /* 16407 0x4017 */
# endif
# ifdef ESP_ERR_MESH_QUEUE_READ
ERR_TBL_IT(ESP_ERR_MESH_QUEUE_READ), /* 16408 0x4018 */
# endif
# ifdef ESP_ERR_MESH_RECV_RELEASE
ERR_TBL_IT(ESP_ERR_MESH_RECV_RELEASE), /* 16410 0x401a */
# endif
// components/tcpip_adapter/include/tcpip_adapter.h
# ifdef ESP_ERR_TCPIP_ADAPTER_BASE

View File

@@ -84,20 +84,6 @@ esp_err_t esp_coex_status_bit_set(esp_coex_status_type_t type, uint32_t status);
*/
esp_err_t esp_coex_status_bit_clear(esp_coex_status_type_t type, uint32_t status);
/**
* @brief Enable BLE connection dynamic priority
* @attention If the parameter is true, BLE connection performance will be better but WiFi performance
* will be poorer. And vice versa.
* @param low_interval : true - Increase BLE connection priority to be higher than WiFi's when BLE
* connection interval is less or equal than 50 ms. The default value
* is false.
* false - not increace
* @param high_interval : true - Increase BLE connection priority to be higher than WiFi's when BLE
* connection interval is more than 50 ms. The default value is true.
* false - not increace
* @return : ESP_OK - success, other - failed
*/
esp_err_t esp_coex_ble_conn_dynamic_prio_enable(bool low_interval, bool high_interval);
#ifdef __cplusplus
}

View File

@@ -23,7 +23,7 @@ extern "C" {
/** Minor version number (x.X.x) */
#define ESP_IDF_VERSION_MINOR 3
/** Patch version number (x.x.X) */
#define ESP_IDF_VERSION_PATCH 4
#define ESP_IDF_VERSION_PATCH 3
/**
* Macro to convert IDF version number into an integer

View File

@@ -124,9 +124,6 @@ extern "C" {
#define ESP_ERR_MESH_DISCARD_DUPLICATE (ESP_ERR_MESH_BASE + 20) /**< discard the packet due to the duplicate sequence number */
#define ESP_ERR_MESH_DISCARD (ESP_ERR_MESH_BASE + 21) /**< discard the packet */
#define ESP_ERR_MESH_VOTING (ESP_ERR_MESH_BASE + 22) /**< vote in progress */
#define ESP_ERR_MESH_XMIT (ESP_ERR_MESH_BASE + 23) /**< XMIT */
#define ESP_ERR_MESH_QUEUE_READ (ESP_ERR_MESH_BASE + 24) /**< error in reading queue */
#define ESP_ERR_MESH_RECV_RELEASE (ESP_ERR_MESH_BASE + 26) /**< release esp_mesh_recv_toDS */
/**
* @brief Flags bitmap for esp_mesh_send() and esp_mesh_recv()
@@ -206,7 +203,6 @@ typedef enum {
MESH_ROOT, /**< the only sink of the mesh network. Has the ability to access external IP network */
MESH_NODE, /**< intermediate device. Has the ability to forward packets over the mesh network */
MESH_LEAF, /**< has no forwarding ability */
MESH_STA, /**< connect to router with a standlone Wi-Fi station mode, no network expansion capability */
} mesh_type_t;
/**
@@ -739,7 +735,6 @@ esp_err_t esp_mesh_recv(mesh_addr_t *from, mesh_data_t *data, int timeout_ms,
* - ESP_ERR_MESH_NOT_START
* - ESP_ERR_MESH_TIMEOUT
* - ESP_ERR_MESH_DISCARD
* - ESP_ERR_MESH_RECV_RELEASE
*/
esp_err_t esp_mesh_recv_toDS(mesh_addr_t *from, mesh_addr_t *to,
mesh_data_t *data, int timeout_ms, int *flag, mesh_opt_t opt[],
@@ -835,10 +830,8 @@ esp_err_t esp_mesh_get_id(mesh_addr_t *id);
/**
* @brief Designate device type over the mesh network
* - MESH_IDLE: designates a device as a self-organized node for a mesh network
* - MESH_ROOT: designates the root node for a mesh network
* - MESH_LEAF: designates a device as a standalone Wi-Fi station that connects to a parent
* - MESH_STA: designates a device as a standalone Wi-Fi station that connects to a router
* - MESH_LEAF: designates a device as a standalone Wi-Fi station
*
* @param[in] type device type
*

View File

@@ -1392,8 +1392,6 @@ PROVIDE ( g_rom_spiflash_chip = 0x3ffae270 );
PROVIDE ( hci_le_rd_rem_used_feats_cmd_handler = 0x400417b4 );
PROVIDE ( llcp_length_req_handler = 0x40043808 );
PROVIDE ( llcp_unknown_rsp_handler = 0x40043ba8 );
PROVIDE ( llcp_channel_map_req_handler = 0x4004291c );
PROVIDE ( llcp_con_up_req_handler = 0x400426f0 );
/*
These functions are xtos-related (or call xtos-related functions) and do not play well

View File

@@ -1,6 +1,76 @@
# NOT SUPPORT
# ICMP send Ping not supported
TCPIP_ICMP_0101
TCPIP_ICMP_0101_01
# Bug or not stable cases
# Wifi scan issue
WIFI_SCAN_0303
WIFI_SCAN_0303_01
WIFI_CONN_0302
WIFI_CONN_0302_01
WIFI_MODE_0102
WIFI_MODE_0103
WIFI_ADDR_0102
WIFI_ADDR_0102_01
# IGMP
TCPIP_IGMP_0201
TCPIP_IGMP_0201_01
TCPIP_IGMP_0202
TCPIP_IGMP_0202_01
TCPIP_IGMP_0204
TCPIP_IGMP_0204_01
# TCP
TCPIP_TCP_0401_01_02
# UDP
TCPIP_UDP_0103
TCPIP_UDP_0103_01
TCPIP_UDP_0103_02
TCPIP_UDP_0103_01_02
# BLE
# BT heap size issue
BTSTK_MISC_0301
# SMP
BTSTK_SMP_05001
BTSTK_SMP_05002
BTSTK_SMP_05003
BTSTK_SMP_06004
# multi connect
BTSTK_GAP_10001
BTSTK_GAP_10002
BTSTK_GAP_10003
BTSTK_GAP_10004
BTSTK_GAP_11001
BTSTK_GAP_11002
BTSTK_GAP_12001
BTSTK_GAP_12002
BTSTK_GATT_30001
BTSTK_GATT_30002
BTSTK_GATT_30003
BTSTK_GATT_31001
BTSTK_GATT_31002
BTSTK_GATT_31003
BTSTK_GATT_32001
BTSTK_GATT_32002
BTSTK_GATT_32003
BTSTK_GATT_32004
BTSTK_GATT_33001
BTSTK_GATT_33002
BTSTK_GATT_33003
BTSTK_GATT_34001
BTSTK_GATT_34002
BTSTK_GATT_34003
# GATT read multiple
BTSTK_GATT_27002
BTSTK_GATT_27003

View File

@@ -477,7 +477,6 @@ test cases:
- ['P SSC1 RE "\+BLESMP:RemoveBond,Success,%%s"%%(<dut2_bt_mac>)']
- ID: BLUEDROID_SMP_08003
<<: *SMP_CASE
CI ready: 'No'
test point 2: BLE SMP bond item management test
summary: BLE SMP get bond list and number when pairing and after reboot for BLUEDROID
steps: |

View File

@@ -1420,7 +1420,6 @@ test cases:
- 'R SSC2 C Complete'
- ID: BTSTK_GAP_10001
<<: *GAP_CASE
CI ready: 'No'
test point 2: BLE GAP master multi connection test
summary: master connect to 3 slaves with different app and master do disconnect
steps: |
@@ -1448,7 +1447,6 @@ test cases:
- ['P SSC1 C +BLECONN:GapDisconnect,OK', 'P SSC{%d} C +BLECONN:GapDisconnect,OK']
- ID: BTSTK_GAP_10002
<<: *GAP_CASE
CI ready: 'No'
test point 2: BLE GAP master multi connection test
summary: master connect to 3 slaves with different app and slave do disconnect
steps: |
@@ -1476,7 +1474,6 @@ test cases:
- ['P SSC1 C +BLECONN:GapDisconnect,OK,001[0-2]', 'P SSC{%d} C +BLECONN:GapDisconnect,OK']
- ID: BTSTK_GAP_10003
<<: *GAP_CASE
CI ready: 'No'
test point 2: BLE GAP master multi connection test
summary: master connect to 4 slaves with same app and master do disconnect
steps: |
@@ -1504,7 +1501,6 @@ test cases:
- ['P SSC1 C +BLECONN:GapDisconnect,OK', 'P SSC{%d} C +BLECONN:GapDisconnect,OK']
- ID: BTSTK_GAP_10004
<<: *GAP_CASE
CI ready: 'No'
test point 2: BLE GAP master multi connection test
summary: master connect to 4 slaves with same app and slave do disconnect
steps: |
@@ -1532,7 +1528,6 @@ test cases:
- ['P SSC1 C +BLECONN:GapDisconnect,OK', 'P SSC{%d} C +BLECONN:GapDisconnect,OK']
- ID: BTSTK_GAP_11001
<<: *GAP_CASE
CI ready: 'No'
test point 2: BLE GAP slave multi connection test
summary: slave connected by 4 master and master do disconnect
steps: |
@@ -1562,7 +1557,6 @@ test cases:
- ['P SSC{%d} C +BLECONN:GapDisconnect,OK', 'P SSC1 C +BLECONN:GapDisconnect,OK']
- ID: BTSTK_GAP_11002
<<: *GAP_CASE
CI ready: 'No'
test point 2: BLE GAP slave multi connection test
summary: slave connected by 4 master and slave do disconnect
steps: |
@@ -1593,7 +1587,6 @@ test cases:
- ['P SSC{%d} C +BLECONN:GapDisconnect,OK', 'P SSC1 C +BLECONN:GapDisconnect,OK']
- ID: BTSTK_GAP_12001
<<: *GAP_CASE
CI ready: 'No'
test point 2: BLE GAP multi connection as both master and slave role test
summary: connected by 2 masters and connect to 2 slaves and do disconnect
steps: |
@@ -1630,7 +1623,6 @@ test cases:
- ["P SSC[2-5] C Disconnect"]
- ID: BTSTK_GAP_12002
<<: *GAP_CASE
CI ready: 'No'
test point 2: BLE GAP multi connection as both master and slave role test
summary: connected by 2 masters and connect to 2 slaves and be disconnected
steps: |

View File

@@ -1118,7 +1118,6 @@ test cases:
- ["R SSC1 C +GATTC:OK","P SSC[1-2] C ConfigMTU,OK,261"]
- ID: BTSTK_GATT_30001
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection service discovery test
summary: do primary service discovery when DUT1 role is master, connected with 4 slaves
steps: |
@@ -1136,7 +1135,6 @@ test cases:
- ["R SSC1 C +GATTC:Discover,OK"]
- ID: BTSTK_GATT_30002
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection service discovery test
summary: do primary service discovery when DUT1 is slave, connected by 4 masters
steps: |
@@ -1152,7 +1150,6 @@ test cases:
- ["R SSC[2-5] C +GATTC:Discover,OK"]
- ID: BTSTK_GATT_30003
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection service discovery test
summary: do primary service discovery when DUT1 connect to DUT[2-3] and connected by DUT[4-5]
steps: |
@@ -1174,7 +1171,6 @@ test cases:
- ["R SSC[4-5] C +GATTC:Discover,OK"]
- ID: BTSTK_GATT_31001
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection read test
summary: do read when DUT1 role is master, connected with 4 slaves
steps: |
@@ -1200,7 +1196,6 @@ test cases:
- ["R SSC1 C +GATTC:ReadOnce,0010,A002,C301,256"]
- ID: BTSTK_GATT_31002
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection read test
summary: do read when DUT1 is slave, connected by 4 masters
steps: |
@@ -1220,7 +1215,6 @@ test cases:
- ["R SSC[2-5] C +GATTC:ReadOnce,0010,A002,C301,256"]
- ID: BTSTK_GATT_31003
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection read test
summary: do read when DUT1 connect to DUT[2-3] and connected by DUT[4-5]
steps: |
@@ -1254,7 +1248,6 @@ test cases:
- ["R SSC[4-5] C +GATTC:ReadOnce,0010,A002,C301,256"]
- ID: BTSTK_GATT_32001
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection write test
summary: do write when DUT1 role is master, connected with 4 slaves
steps: |
@@ -1280,7 +1273,6 @@ test cases:
- ["R SSC1 C +GATTC:Write,OK,0010,A002,C304"]
- ID: BTSTK_GATT_32002
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection write test
summary: do write when DUT1 is slave, connected by 4 masters
steps: |
@@ -1300,7 +1292,6 @@ test cases:
- ["R SSC[2-5] C +GATTC:Write,OK,0010,A002,C304"]
- ID: BTSTK_GATT_32003
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection write test
summary: do write when DUT1 connect to DUT[2-3] and connected by DUT[4-5]
steps: |
@@ -1334,7 +1325,6 @@ test cases:
- ["R SSC[4-5] C +GATTC:Write,OK,0010,A002,C304"]
- ID: BTSTK_GATT_33001
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection notify test
summary: do notify when DUT1 role is master, connected with 4 slaves
steps: |
@@ -1360,7 +1350,6 @@ test cases:
- ['P SSC1 RE "\+GATTC:Notification,0010,A002,C305,1,%%s"%%(<dut{%d}_bt_mac>)']
- ID: BTSTK_GATT_33002
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection notify test
summary: do notify when DUT1 is slave, connected by 4 masters
steps: |
@@ -1386,7 +1375,6 @@ test cases:
- ['P SSC{%d} RE "\+GATTC:Notification,0010,A002,C305,1,%%s"%%(<dut1_bt_mac>)']
- ID: BTSTK_GATT_33003
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection notify test
summary: do notify when DUT1 connect to DUT[2-3] and connected by DUT[4-5]
steps: |
@@ -1426,7 +1414,6 @@ test cases:
- ['P SSC{%d} RE "\+GATTC:Notification,0010,A002,C305,1,%%s"%%(<dut1_bt_mac>)']
- ID: BTSTK_GATT_34001
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection indicate test
summary: do indicate when DUT1 role is master, connected with 4 slaves
steps: |
@@ -1452,7 +1439,6 @@ test cases:
- ['P SSC1 RE "\+GATTC:Indication,0010,A002,C306,1,%%s"%%(<dut[2-5]_bt_mac>)']
- ID: BTSTK_GATT_34002
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection indicate test
summary: do indicate when DUT1 is slave, connected by 4 masters
steps: |
@@ -1478,7 +1464,6 @@ test cases:
- ['P SSC{%d} RE "\+GATTC:Indication,0010,A002,C306,1,%%s"%%(<dut1_bt_mac>)']
- ID: BTSTK_GATT_34003
<<: *GATT_CASE
CI ready: 'No'
test point 2: BLE GATT multi connection indicate test
summary: do indicate when DUT1 connect to DUT[2-3] and connected by DUT[4-5]
steps: |

View File

@@ -1651,7 +1651,6 @@ test cases:
- *check_connection
- ID: BTSTK_SMP_05003
<<: *SMP_CASE
CI ready: 'No'
test point 2: BLE SMP unsuccessful pair reply test
summary: BLE SMP unsuccessful passkey entry on both side test
steps: |
@@ -1767,7 +1766,6 @@ test cases:
- ['P SSC[1-2] C +BLESMP:AuthComplete,Success,0']
- ID: BTSTK_SMP_06004
<<: *SMP_CASE
CI ready: 'No'
test point 2: BLE SMP use API in abnormal state
summary: BLE SMP master disconnect during pairing and repairing
steps: |

View File

@@ -1041,7 +1041,7 @@ test cases:
- - P SSC[1-<node_num>] C +MESHSET:MLAYER,OK
- - MSSC SSC[1-<node_num>] mesh -T
- - P SSC[1-<node_num>] C +MESH:START,OK
- - DELAY <delay_time>
- - DELAY 60
- - ''
- - VALUE <tree_node_num> <node_num>
- - R PC_COM L OK

View File

@@ -1,5 +1,5 @@
test cases:
- CI ready: 'No'
- CI ready: 'Yes'
ID: TCPIP_ICMP_0101
SDK: |-
8266_NonOS

File diff suppressed because it is too large Load Diff

View File

@@ -2167,7 +2167,7 @@ test cases:
test point 1: basic function
test point 2: socket option test
version: v1 (2016-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: TCPIP_TCP_0401
SDK: |-
8266_NonOS

View File

@@ -85,7 +85,7 @@ test cases:
test point 1: basic function
test point 2: use UDP SAP (socket/espconn API) with different parameter
version: v1 (2016-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: TCPIP_UDP_0103
SDK: |-
8266_NonOS
@@ -136,7 +136,7 @@ test cases:
test point 1: basic function
test point 2: use UDP SAP (socket/espconn API) with different parameter
version: v1 (2016-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: TCPIP_UDP_0103
SDK: ESP32_IDF
Test App: SSC
@@ -180,7 +180,7 @@ test cases:
test point 1: basic function
test point 2: use UDP SAP (socket/espconn API) with different parameter
version: v1 (2016-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: TCPIP_UDP_0104
SDK: |-
8266_NonOS
@@ -233,7 +233,7 @@ test cases:
test point 1: basic function
test point 2: use UDP SAP (socket/espconn API) with different parameter
version: v1 (2016-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: TCPIP_UDP_0104_02
SDK: |-
8266_NonOS
@@ -286,7 +286,7 @@ test cases:
test point 1: basic function
test point 2: use UDP SAP (socket/espconn API) with different parameter
version: v1 (2016-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: TCPIP_UDP_0104_01_02
SDK: |-
8266_NonOS

View File

@@ -43,7 +43,7 @@ test cases:
test point 1: basic function
test point 2: mac address function test
version: v1 (2016-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: WIFI_ADDR_0102
SDK: |-
8266_NonOS

View File

@@ -315,7 +315,7 @@ test cases:
test point 1: interaction
test point 2: Conn interact with other WiFi operation
version: v1 (2016-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: WIFI_CONN_0302
SDK: |-
ESP32_IDF

View File

@@ -47,7 +47,7 @@ test cases:
test point 1: basic function
test point 2: wifi mode fucntion
version: v1 (2016-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: WIFI_MODE_0102
SDK: |-
8266_NonOS
@@ -88,7 +88,7 @@ test cases:
test point 1: basic function
test point 2: wifi mode fucntion
version: v1 (2016-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: WIFI_MODE_0103
SDK: |-
8266_NonOS

View File

@@ -587,7 +587,7 @@ test cases:
test point 1: interaction
test point 2: Scan interact with other WiFi operation
version: v1 (2015-8-15)
- CI ready: 'No'
- CI ready: 'Yes'
ID: WIFI_SCAN_0303
SDK: ESP32_IDF
Test App: SSC

View File

@@ -106,31 +106,18 @@ menu "LWIP"
help
Enabling this option allows checking for available data on a netconn.
config LWIP_IP4_FRAG
bool "Enable fragment outgoing IP4 packets"
config LWIP_IP_FRAG
bool "Enable fragment outgoing IP packets"
default y
help
Enabling this option allows fragmenting outgoing IP4 packets if their size
Enabling this option allows fragmenting outgoing IP packets if their size
exceeds MTU.
config LWIP_IP6_FRAG
bool "Enable fragment outgoing IP6 packets"
default y
help
Enabling this option allows fragmenting outgoing IP6 packets if their size
exceeds MTU.
config LWIP_IP4_REASSEMBLY
bool "Enable reassembly incoming fragmented IP4 packets"
config LWIP_IP_REASSEMBLY
bool "Enable reassembly incoming fragmented IP packets"
default n
help
Enabling this option allows reassemblying incoming fragmented IP4 packets.
config LWIP_IP6_REASSEMBLY
bool "Enable reassembly incoming fragmented IP6 packets"
default n
help
Enabling this option allows reassemblying incoming fragmented IP6 packets.
Enabling this option allows reassemblying incoming fragmented IP packets.
config LWIP_STATS
bool "Enable LWIP statistics"
@@ -464,13 +451,6 @@ menu "LWIP"
help
Enable this feature to support TCP window scaling.
config LWIP_TCP_RTO_TIME
int "Default TCP rto time"
default 3000
help
Set default TCP rto time for a reasonable initial rto.
In bad network environment, recommend set value of rto time to 1500.
endmenu # TCP
menu "UDP"

View File

@@ -157,32 +157,18 @@
--------------------------------
*/
/**
* IP_REASSEMBLY==1: Reassemble incoming fragmented IP4 packets. Note that
* IP_REASSEMBLY==1: Reassemble incoming fragmented IP packets. Note that
* this option does not affect outgoing packet sizes, which can be controlled
* via IP_FRAG.
*/
#define IP_REASSEMBLY CONFIG_LWIP_IP4_REASSEMBLY
#define IP_REASSEMBLY CONFIG_LWIP_IP_REASSEMBLY
/**
* LWIP_IPV6_REASS==1: reassemble incoming IP6 packets that fragmented. Note that
* this option does not affect outgoing packet sizes, which can be controlled
* via LWIP_IPV6_FRAG.
*/
#define LWIP_IPV6_REASS CONFIG_LWIP_IP6_REASSEMBLY
/**
* IP_FRAG==1: Fragment outgoing IP4 packets if their size exceeds MTU. Note
* IP_FRAG==1: Fragment outgoing IP packets if their size exceeds MTU. Note
* that this option does not affect incoming packet sizes, which can be
* controlled via IP_REASSEMBLY.
*/
#define IP_FRAG CONFIG_LWIP_IP4_FRAG
/**
* LWIP_IPV6_FRAG==1: Fragment outgoing IP6 packets if their size exceeds MTU. Note
* that this option does not affect incoming packet sizes, which can be
* controlled via IP_REASSEMBLY.
*/
#define LWIP_IPV6_FRAG CONFIG_LWIP_IP6_FRAG
#define IP_FRAG CONFIG_LWIP_IP_FRAG
/**
* IP_REASS_MAXAGE: Maximum time (in multiples of IP_TMR_INTERVAL - so seconds, normally)
@@ -390,12 +376,6 @@
#define TCP_RCV_SCALE CONFIG_TCP_RCV_SCALE
#endif
/**
* LWIP_TCP_RTO_TIME: TCP rto time.
* Default is 3 second.
*/
#define LWIP_TCP_RTO_TIME CONFIG_LWIP_TCP_RTO_TIME
/*
----------------------------------
---------- Pbuf options ----------

View File

@@ -49,14 +49,7 @@ if(CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES)
endif()
if(EXISTS ${partition_csv})
add_custom_target(partition_table ALL DEPENDS "${IDF_BUILD_ARTIFACTS_DIR}/partition_table/${final_partition_bin}"
COMMAND ${CMAKE_COMMAND} -E echo "Partition table binary generated. Contents:"
COMMAND ${CMAKE_COMMAND} -E echo "*******************************************************************************"
COMMAND COMMAND "${PYTHON}" "${CMAKE_CURRENT_SOURCE_DIR}/gen_esp32part.py"
-q --offset ${PARTITION_TABLE_OFFSET} ${md5_opt} ${flashsize_opt}
${partition_secure_opt} "${IDF_BUILD_ARTIFACTS_DIR}/partition_table/${unsigned_partition_bin}"
COMMAND ${CMAKE_COMMAND} -E echo "*******************************************************************************"
VERBATIM)
add_custom_target(partition_table ALL DEPENDS "${IDF_BUILD_ARTIFACTS_DIR}/partition_table/${final_partition_bin}")
else()
# If the partition input CSV is not found, create a phony partition_table target that
# fails the build. fail_at_build_time also touches CMakeCache.txt to cause a cmake run next time

View File

@@ -14,7 +14,7 @@ Toolchain Setup
The quick setup is to download the Windows all-in-one toolchain & MSYS2 zip file from dl.espressif.com:
https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain_idf3-20200714.zip
https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain_idf3-20200601.zip
Unzip the zip file to ``C:\`` (or some other location, but this guide assumes ``C:\``) and it will create an ``msys32`` directory with a pre-prepared environment.

View File

@@ -15,7 +15,7 @@ Windows 没有内置的 "make" 环境,因此如果要安装工具链,你需
快速设置的方法是从 dl.espressif.com 下载集成在一起的工具链和 MSYS2 压缩文件:
https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain_idf3-20200714.zip
https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain_idf3-20200601.zip
将 zip 压缩文件解压到 ``C:\`` (或其它路径,这里假设是 ``C:\``),它会使用预先准备的环境创建一个 ``msys32`` 目录。

View File

@@ -504,7 +504,7 @@ static void throughput_client_task(void *param)
assert(res == pdTRUE);
} else {
if (is_connect) {
int free_buff_num = esp_ble_get_cur_sendable_packets_num(gl_profile_tab[PROFILE_A_APP_ID].conn_id);
int free_buff_num = esp_ble_get_sendable_packets_num();
if(free_buff_num > 0) {
for( ; free_buff_num > 0; free_buff_num--) {
// the app data set to 490 just for divided into two packages to send in the low layer

View File

@@ -624,7 +624,7 @@ void throughput_server_task(void *param)
assert(res == pdTRUE);
} else {
if (is_connect) {
int free_buff_num = esp_ble_get_cur_sendable_packets_num(gl_profile_tab[PROFILE_A_APP_ID].conn_id);
int free_buff_num = esp_ble_get_sendable_packets_num();
if(free_buff_num > 0) {
for( ; free_buff_num > 0; free_buff_num--) {
esp_ble_gatts_send_indicate(gl_profile_tab[PROFILE_A_APP_ID].gatts_if, gl_profile_tab[PROFILE_A_APP_ID].conn_id,

View File

@@ -2,7 +2,7 @@
This example demonstrates how to program the ULP coprocessor to count pulses on an IO while the main CPUs are either running some other code or are in deep sleep. See the README.md file in the upper level 'examples' directory for more information about examples.
ULP program written in assembly can be found across `ulp/pulse_cnt.S` and `ulp/wake_up.S` (demonstrating multiple ULP source files). The build system assembles and links this program, converts it into binary format, and embeds it into the .rodata section of the ESP-IDF application.
ULP program written in assembly can be found in `ulp/pulse_cnt.S`. The build system assembles and links this program, converts it into binary format, and embeds it into the .rodata section of the ESP-IDF application.
At runtime, the main code running on the ESP32 (found in main.c) loads ULP program into the `RTC_SLOW_MEM` memory region using `ulp_load_binary` function. Main code configures the ULP program by setting up values of some variables and then starts it using `ulp_run`. Once the ULP program is started, it runs periodically, with the period set by the main program. The main program enables ULP wakeup source and puts the chip into deep sleep mode.

View File

@@ -15,7 +15,7 @@ set(ULP_APP_NAME ulp_${COMPONENT_NAME})
# 2. Specify all assembly source files here.
# Files should be placed into a separate directory (in this case, ulp/),
# which should not be added to COMPONENT_SRCS.
set(ULP_S_SOURCES "ulp/pulse_cnt.S" "ulp/wake_up.S")
set(ULP_S_SOURCES "ulp/pulse_cnt.S")
#
# 3. List all the component source files which include automatically
# generated ULP export file, $(ULP_APP_NAME).h:

View File

@@ -11,7 +11,7 @@ ULP_APP_NAME ?= ulp_$(COMPONENT_NAME)
# Files should be placed into a separate directory (in this case, ulp/),
# which should not be added to COMPONENT_SRCDIRS.
ULP_S_SOURCES = $(addprefix $(COMPONENT_PATH)/ulp/, \
pulse_cnt.S wake_up.S\
pulse_cnt.S \
)
#
# 3. List all the component object files which include automatically

View File

@@ -144,3 +144,14 @@ edge_detected:
jump wake_up, eq
/* Not yet. End program */
halt
.global wake_up
wake_up:
/* Check if the system can be woken up */
READ_RTC_FIELD(RTC_CNTL_LOW_POWER_ST_REG, RTC_CNTL_RDY_FOR_WAKEUP)
and r0, r0, 1
jump wake_up, eq
/* Wake up the SoC, end program */
wake
halt

View File

@@ -1,16 +0,0 @@
/* ULP assembly files are passed through C preprocessor first, so include directives
and C macros may be used in these files
*/
#include "soc/rtc_cntl_reg.h"
#include "soc/soc_ulp.h"
.global wake_up
wake_up:
/* Check if the system can be woken up */
READ_RTC_FIELD(RTC_CNTL_LOW_POWER_ST_REG, RTC_CNTL_RDY_FOR_WAKEUP)
and r0, r0, 1
jump wake_up, eq
/* Wake up the SoC, end program */
wake
halt

View File

@@ -1,3 +1,3 @@
IDF_VERSION_MAJOR := 3
IDF_VERSION_MINOR := 3
IDF_VERSION_PATCH := 4
IDF_VERSION_PATCH := 3

View File

@@ -350,10 +350,6 @@ function run_tests()
(grep '"command"' build/compile_commands.json | grep -v mfix-esp32-psram-cache-issue) && failure "All commands in compile_commands.json should use PSRAM cache workaround"
rm sdkconfig.defaults
print_status "Displays partition table when executing target partition_table"
idf.py partition_table | grep -E "# Espressif .+ Partition Table"
rm -r build
print_status "Make sure a full build never runs '/usr/bin/env python' or similar"
OLDPATH="$PATH"
PYTHON="$(which python)"

View File

@@ -24,12 +24,10 @@ if(HEAD_CONTENTS MATCHES "ref")
if(EXISTS "@GIT_DIR@/${HEAD_REF}")
configure_file("@GIT_DIR@/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY)
else()
if(EXISTS "@GIT_DIR@/packed-refs")
configure_file("@GIT_DIR@/packed-refs" "@GIT_DATA@/packed-refs" COPYONLY)
file(READ "@GIT_DATA@/packed-refs" PACKED_REFS)
if(${PACKED_REFS} MATCHES "([0-9a-z]*) ${HEAD_REF}")
set(HEAD_HASH "${CMAKE_MATCH_1}")
endif()
configure_file("@GIT_DIR@/packed-refs" "@GIT_DATA@/packed-refs" COPYONLY)
file(READ "@GIT_DATA@/packed-refs" PACKED_REFS)
if(${PACKED_REFS} MATCHES "([0-9a-z]*) ${HEAD_REF}")
set(HEAD_HASH "${CMAKE_MATCH_1}")
endif()
endif()
else()

View File

@@ -1,3 +1,3 @@
set(IDF_VERSION_MAJOR 3)
set(IDF_VERSION_MINOR 3)
set(IDF_VERSION_PATCH 4)
set(IDF_VERSION_PATCH 3)