feat(esp8266): Link some functions from IRAM to flash

This commit is contained in:
Dong Heng
2018-09-13 17:47:28 +08:00
parent 1a6460b19a
commit bc239c0ed3
6 changed files with 21 additions and 17 deletions

View File

@ -85,7 +85,7 @@ static SLIST_HEAD(esp_thread_list_head, esp_pthread_entry) s_threads_list
static pthread_key_t s_pthread_cfg_key;
static int IRAM_ATTR pthread_mutex_lock_internal(esp_pthread_mutex_t *mux, TickType_t tmo);
static int pthread_mutex_lock_internal(esp_pthread_mutex_t *mux, TickType_t tmo);
static inline void uxPortCompareSet(volatile uint32_t *addr, uint32_t compare, uint32_t *set)
{
@ -503,7 +503,7 @@ int pthread_mutex_destroy(pthread_mutex_t *mutex)
return 0;
}
static int IRAM_ATTR pthread_mutex_lock_internal(esp_pthread_mutex_t *mux, TickType_t tmo)
static int pthread_mutex_lock_internal(esp_pthread_mutex_t *mux, TickType_t tmo)
{
if (mux->type == PTHREAD_MUTEX_RECURSIVE) {
if (xSemaphoreTakeRecursive(mux->sem, tmo) != pdTRUE) {
@ -530,7 +530,7 @@ static int pthread_mutex_init_if_static(pthread_mutex_t *mutex) {
return res;
}
int IRAM_ATTR pthread_mutex_lock(pthread_mutex_t *mutex)
int pthread_mutex_lock(pthread_mutex_t *mutex)
{
if (!mutex) {
return EINVAL;
@ -542,7 +542,7 @@ int IRAM_ATTR pthread_mutex_lock(pthread_mutex_t *mutex)
return pthread_mutex_lock_internal((esp_pthread_mutex_t *)*mutex, portMAX_DELAY);
}
int IRAM_ATTR pthread_mutex_trylock(pthread_mutex_t *mutex)
int pthread_mutex_trylock(pthread_mutex_t *mutex)
{
if (!mutex) {
return EINVAL;
@ -554,7 +554,7 @@ int IRAM_ATTR pthread_mutex_trylock(pthread_mutex_t *mutex)
return pthread_mutex_lock_internal((esp_pthread_mutex_t *)*mutex, 0);
}
int IRAM_ATTR pthread_mutex_unlock(pthread_mutex_t *mutex)
int pthread_mutex_unlock(pthread_mutex_t *mutex)
{
esp_pthread_mutex_t *mux;