feat(esp8266): Remove critical from WIFI OSI

This commit is contained in:
Dong Heng
2018-08-27 19:22:42 +08:00
parent eacf6c3b37
commit a78fb5c99f
9 changed files with 13 additions and 33 deletions

View File

@ -37,8 +37,6 @@ extern "C" {
typedef struct {
int32_t version;
uint32_t (*enter_critical)(void);
void (*exit_critical)(uint32_t tmp);
void *(*task_create)(void *task_func, const char *name, uint32_t stack_depth, void *param, uint32_t prio);
void (*task_delete)(void *task_handle);

View File

@ -23,12 +23,6 @@ extern "C" {
extern wifi_osi_funcs_t s_wifi_osi_funcs;
#define wifi_enter_critical(t) \
t = s_wifi_osi_funcs.enter_critical()
#define wifi_exit_critical(t) \
s_wifi_osi_funcs.exit_critical(t)
#define wifi_task_create(func, name, depth, param, pri) \
s_wifi_osi_funcs.task_create(func, name, depth, param, pri)

View File

@ -1,9 +1,9 @@
gwen:
crypto: 8943c89
crypto: eca7811
espnow: 8943c89
core: b394446
net80211: b394446
pp: 830c0c8
core: eca7811
net80211: eca7811
pp: eca7811
pwm: 0181338
smartconfig:68bd9c5
wpa: f59f0e0
smartconfig:eca7811
wpa: eca7811

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -31,18 +31,6 @@
#include "esp_newlib.h"
#endif
static uint32_t IRAM_ATTR enter_critical_wrapper(void)
{
taskENTER_CRITICAL();
return 0;
}
static void IRAM_ATTR exit_critical_wrapper(uint32_t tmp)
{
taskEXIT_CRITICAL();
}
static void *task_create_wrapper(void *task_func, const char *name, uint32_t stack_depth, void *param, uint32_t prio)
{
portBASE_TYPE ret;
@ -367,12 +355,9 @@ static int32_t rand_wrapper(void)
return (int32_t)esp_random();
}
wifi_osi_funcs_t s_wifi_osi_funcs = {
const wifi_osi_funcs_t s_wifi_osi_funcs = {
.version = ESP_WIFI_OS_ADAPTER_VERSION,
.enter_critical = enter_critical_wrapper,
.exit_critical = exit_critical_wrapper,
.task_create = task_create_wrapper,
.task_delete = task_delete_wrapper,
.task_yield = task_yield_wrapper,

View File

@ -95,9 +95,9 @@
#define SPI_FLASH_RDSR2 0x35
#define SPI_FLASH_PROTECT_STATUS (BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(14))
#define FLASH_INTR_DECLARE(t) uint32_t t
#define FLASH_INTR_LOCK(t) wifi_enter_critical(t)
#define FLASH_INTR_UNLOCK(t) wifi_exit_critical(t)
#define FLASH_INTR_DECLARE(t)
#define FLASH_INTR_LOCK(t) vPortEnterCritical()
#define FLASH_INTR_UNLOCK(t) vPortExitCritical()
#define FLASH_ALIGN_BYTES 4
#define FLASH_ALIGN(addr) ((((size_t)addr) + (FLASH_ALIGN_BYTES - 1)) & (~(FLASH_ALIGN_BYTES - 1)))
@ -140,6 +140,9 @@ extern void pp_soft_wdt_feed(void);
extern void pp_soft_wdt_stop(void);
extern void pp_soft_wdt_restart(void);
extern void vPortEnterCritical(void);
extern void vPortExitCritical(void);
esp_spi_flash_chip_t flashchip = {
0x1640ef,
(32 / 8) * 1024 * 1024,