mirror of
https://github.com/espressif/ESP8266_RTOS_SDK.git
synced 2025-06-20 05:51:46 +08:00
NEW VERSION: 1.0.4
1. memory optimize; 2. add irom version libm.a: libmirom.a; 3. more apis are supported in libcirom.a, such as sscanf, sprintf, etc; 4. add c++ support in Makefile; 5. put functions to iRAM default, don't need ICACHE_FLASH_ATTR anymore; 6. remove -O2 in Makefile; 7. fix some fatal exception bugs; 8. update smartconfig to version 2.4.7; 9. update some open source files and header files; 10.use os_printf can save memory; 11.add new apis: os_random and os_get_random; 12.bug fix in lwip/net80211/wpa modules; 13.other minor changes;
This commit is contained in:
22
Makefile
22
Makefile
@ -8,7 +8,7 @@ ifeq ($(COMPILE), gcc)
|
||||
AR = xtensa-lx106-elf-ar
|
||||
CC = xtensa-lx106-elf-gcc
|
||||
NM = xtensa-lx106-elf-nm
|
||||
CPP = xtensa-lx106-elf-cpp
|
||||
CPP = xtensa-lx106-elf-g++
|
||||
OBJCOPY = xtensa-lx106-elf-objcopy
|
||||
OBJDUMP = xtensa-lx106-elf-objdump
|
||||
else
|
||||
@ -162,6 +162,7 @@ else
|
||||
endif
|
||||
|
||||
CSRCS ?= $(wildcard *.c)
|
||||
CPPSRCS ?= $(wildcard *.cpp)
|
||||
ASRCs ?= $(wildcard *.s)
|
||||
ASRCS ?= $(wildcard *.S)
|
||||
SUBDIRS ?= $(patsubst %/,%,$(dir $(wildcard */Makefile)))
|
||||
@ -170,10 +171,12 @@ ODIR := .output
|
||||
OBJODIR := $(ODIR)/$(TARGET)/$(FLAVOR)/obj
|
||||
|
||||
OBJS := $(CSRCS:%.c=$(OBJODIR)/%.o) \
|
||||
$(CPPSRCS:%.cpp=$(OBJODIR)/%.o) \
|
||||
$(ASRCs:%.s=$(OBJODIR)/%.o) \
|
||||
$(ASRCS:%.S=$(OBJODIR)/%.o)
|
||||
|
||||
DEPS := $(CSRCS:%.c=$(OBJODIR)/%.d) \
|
||||
$(CPPSRCS:%.cpp=$(OBJODIR)/%.d) \
|
||||
$(ASRCs:%.s=$(OBJODIR)/%.d) \
|
||||
$(ASRCS:%.S=$(OBJODIR)/%.d)
|
||||
|
||||
@ -188,7 +191,6 @@ OBINS := $(GEN_BINS:%=$(BINODIR)/%)
|
||||
|
||||
CCFLAGS += \
|
||||
-g \
|
||||
-O2 \
|
||||
-Wpointer-arith \
|
||||
-Wundef \
|
||||
-Werror \
|
||||
@ -196,7 +198,9 @@ CCFLAGS += \
|
||||
-fno-inline-functions \
|
||||
-nostdlib \
|
||||
-mlongcalls \
|
||||
-mtext-section-literals
|
||||
-mtext-section-literals \
|
||||
-ffunction-sections \
|
||||
-fdata-sections
|
||||
# -Wall
|
||||
|
||||
CFLAGS = $(CCFLAGS) $(DEFINES) $(EXTRA_CCFLAGS) $(INCLUDES)
|
||||
@ -328,6 +332,18 @@ $(OBJODIR)/%.d: %.c
|
||||
sed 's,\($*\.o\)[ :]*,$(OBJODIR)/\1 $@ : ,g' < $@.$$$$ > $@; \
|
||||
rm -f $@.$$$$
|
||||
|
||||
$(OBJODIR)/%.o: %.cpp
|
||||
@mkdir -p $(OBJODIR);
|
||||
$(CPP) $(if $(findstring $<,$(DSRCS)),$(DFLAGS),$(CFLAGS)) $(COPTS_$(*F)) -o $@ -c $<
|
||||
|
||||
$(OBJODIR)/%.d: %.cpp
|
||||
@mkdir -p $(OBJODIR);
|
||||
@echo DEPEND: $(CPP) -M $(CFLAGS) $<
|
||||
@set -e; rm -f $@; \
|
||||
$(CPP) -M $(CFLAGS) $< > $@.$$$$; \
|
||||
sed 's,\($*\.o\)[ :]*,$(OBJODIR)/\1 $@ : ,g' < $@.$$$$ > $@; \
|
||||
rm -f $@.$$$$
|
||||
|
||||
$(OBJODIR)/%.o: %.s
|
||||
@mkdir -p $(OBJODIR);
|
||||
$(CC) $(CFLAGS) -o $@ -c $<
|
||||
|
@ -50,6 +50,7 @@ COMPONENTS_eagle.app.v6 = \
|
||||
|
||||
LINKFLAGS_eagle.app.v6 = \
|
||||
-L../lib \
|
||||
-Wl,--gc-sections \
|
||||
-nostdlib \
|
||||
-T$(LD_FILE) \
|
||||
-Wl,--no-check-sections \
|
||||
|
@ -148,8 +148,7 @@ void task3(void *pvParameters)
|
||||
* Parameters : none
|
||||
* Returns : none
|
||||
*******************************************************************************/
|
||||
void ICACHE_FLASH_ATTR
|
||||
user_init(void)
|
||||
void user_init(void)
|
||||
{
|
||||
printf("SDK version:%s\n", system_get_sdk_version());
|
||||
|
||||
|
@ -20,8 +20,6 @@
|
||||
#define server_ip "192.168.101.142"
|
||||
#define server_port 9669
|
||||
|
||||
sc_type SC_Type = 0;
|
||||
|
||||
void ICACHE_FLASH_ATTR
|
||||
smartconfig_done(sc_status status, void *pdata)
|
||||
{
|
||||
@ -34,6 +32,12 @@ smartconfig_done(sc_status status, void *pdata)
|
||||
break;
|
||||
case SC_STATUS_GETTING_SSID_PSWD:
|
||||
printf("SC_STATUS_GETTING_SSID_PSWD\n");
|
||||
sc_type *type = pdata;
|
||||
if (*type == SC_TYPE_ESPTOUCH) {
|
||||
printf("SC_TYPE:SC_TYPE_ESPTOUCH\n");
|
||||
} else {
|
||||
printf("SC_TYPE:SC_TYPE_AIRKISS\n");
|
||||
}
|
||||
break;
|
||||
case SC_STATUS_LINK:
|
||||
printf("SC_STATUS_LINK\n");
|
||||
@ -45,7 +49,7 @@ smartconfig_done(sc_status status, void *pdata)
|
||||
break;
|
||||
case SC_STATUS_LINK_OVER:
|
||||
printf("SC_STATUS_LINK_OVER\n");
|
||||
if (SC_Type == SC_TYPE_ESPTOUCH) {
|
||||
if (pdata != NULL) {
|
||||
uint8 phone_ip[4] = {0};
|
||||
|
||||
memcpy(phone_ip, (uint8*)pdata, 4);
|
||||
@ -60,9 +64,7 @@ smartconfig_done(sc_status status, void *pdata)
|
||||
void ICACHE_FLASH_ATTR
|
||||
smartconfig_task(void *pvParameters)
|
||||
{
|
||||
SC_Type = SC_TYPE_ESPTOUCH;
|
||||
|
||||
smartconfig_start(SC_Type, smartconfig_done);//SC_TYPE_AIRKISS
|
||||
smartconfig_start(smartconfig_done);
|
||||
|
||||
vTaskDelete(NULL);
|
||||
}
|
||||
|
@ -72,12 +72,12 @@ typedef enum {
|
||||
#define DMEM_ATTR __attribute__((section(".bss")))
|
||||
#define SHMEM_ATTR
|
||||
|
||||
#ifdef ICACHE_FLASH
|
||||
#define ICACHE_FLASH_ATTR __attribute__((section(".irom0.text")))
|
||||
#define ICACHE_RODATA_ATTR __attribute__((section(".irom.text")))
|
||||
#else
|
||||
#define IRAM_ATTR __attribute__((section(".text")))
|
||||
|
||||
#define ICACHE_FLASH_ATTR
|
||||
#endif /* ICACHE_FLASH */
|
||||
#define ICACHE_RODATA_ATTR __attribute__((section(".irom.text")))
|
||||
|
||||
#define STORE_ATTR __attribute__((aligned(4)))
|
||||
|
||||
#ifndef __cplusplus
|
||||
typedef unsigned char bool;
|
||||
|
@ -36,7 +36,6 @@ int printf(const char *format, ...);
|
||||
int sprintf(char *out, const char *format, ...);
|
||||
int snprintf(char *buf, unsigned int count, const char *format, ...);
|
||||
int puts(const char *str);
|
||||
int putchar(int c);
|
||||
|
||||
void *malloc(size_t n);
|
||||
void free(void *p);
|
||||
@ -47,16 +46,13 @@ void *realloc(void *p, size_t n);
|
||||
int atoi(const char *s);
|
||||
long atol(const char *s);
|
||||
|
||||
unsigned long os_random(void);
|
||||
int os_get_random(unsigned char *buf, size_t len);
|
||||
|
||||
/* NOTE: don't use printf_opt in irq handler, for test */
|
||||
#define printf_opt(fmt, ...) do { \
|
||||
static const char flash_str[] ICACHE_RODATA_ATTR = fmt; \
|
||||
#define os_printf(fmt, ...) do { \
|
||||
static const char flash_str[] ICACHE_RODATA_ATTR STORE_ATTR = fmt; \
|
||||
printf(flash_str, ##__VA_ARGS__); \
|
||||
} while(0)
|
||||
|
||||
/* NOTE: don't use printf_opt in irq handler, for test */
|
||||
#define sprintf_opt(out, fmt, ...) do { \
|
||||
static const char flash_str[] ICACHE_RODATA_ATTR = fmt; \
|
||||
sprintf(out, flash_str, ##__VA_ARGS__); \
|
||||
} while(0)
|
||||
|
||||
#endif /* __LIBC_H__ */
|
||||
|
@ -22,7 +22,7 @@ typedef enum {
|
||||
typedef void (*sc_callback_t)(sc_status status, void *pdata);
|
||||
|
||||
const char *smartconfig_get_version(void);
|
||||
bool smartconfig_start(sc_type type, sc_callback_t cb, ...);
|
||||
bool smartconfig_start(sc_callback_t cb, ...);
|
||||
bool smartconfig_stop(void);
|
||||
bool esptouch_set_timeout(uint8 time_s);//15s~255s, offset:45s
|
||||
|
||||
|
@ -83,7 +83,7 @@
|
||||
#define configCPU_CLOCK_HZ ( ( unsigned long ) 80000000 )
|
||||
#define configTICK_RATE_HZ ( ( portTickType ) 100 )
|
||||
#define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 15 )
|
||||
#define configMINIMAL_STACK_SIZE ( ( unsigned short )156 )
|
||||
#define configMINIMAL_STACK_SIZE ( ( unsigned short )176 )
|
||||
//#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 17 * 1024 ) )
|
||||
#define configMAX_TASK_NAME_LEN ( 16 )
|
||||
#define configUSE_TRACE_FACILITY 0
|
||||
|
@ -73,6 +73,13 @@ typedef int sys_prot_t;
|
||||
//#define LWIP_DEBUG
|
||||
|
||||
#ifdef LWIP_DEBUG
|
||||
#include <stdio.h>
|
||||
|
||||
#define os_printf(fmt, ...) do { \
|
||||
static const char flash_str[] ICACHE_RODATA_ATTR STORE_ATTR = fmt; \
|
||||
printf(flash_str, ##__VA_ARGS__); \
|
||||
} while(0)
|
||||
|
||||
#define LWIP_PLATFORM_DIAG(x) do {os_printf x;} while(0)
|
||||
#define LWIP_PLATFORM_ASSERT(x) do {os_printf(x); sys_arch_assert(__FILE__, __LINE__);} while(0)
|
||||
#else
|
||||
|
@ -206,6 +206,18 @@ void dhcp_fine_tmr(void);
|
||||
#define DHCP_OPTION_TCP_TTL 37
|
||||
#define DHCP_OPTION_END 255
|
||||
|
||||
/**add options for support more router by liuHan**/
|
||||
#ifdef LWIP_ESP8266
|
||||
#define DHCP_OPTION_DOMAIN_NAME 15
|
||||
#define DHCP_OPTION_PRD 31
|
||||
#define DHCP_OPTION_STATIC_ROUTER 33
|
||||
#define DHCP_OPTION_VSN 43
|
||||
#define DHCP_OPTION_NB_TINS 44
|
||||
#define DHCP_OPTION_NB_TINT 46
|
||||
#define DHCP_OPTION_NB_TIS 47
|
||||
#define DHCP_OPTION_CLASSLESS_STATIC_ROUTER 121
|
||||
|
||||
#endif
|
||||
/** DHCP options */
|
||||
#define DHCP_OPTION_REQUESTED_IP 50 /* RFC 2132 9.1, requested IP address */
|
||||
#define DHCP_OPTION_LEASE_TIME 51 /* RFC 2132 9.2, time in seconds, in 4 bytes */
|
||||
|
@ -76,7 +76,7 @@ typedef enum {
|
||||
#endif /* MEM_USE_POOLS */
|
||||
|
||||
#if MEMP_MEM_MALLOC || MEM_USE_POOLS
|
||||
extern const u16_t memp_sizes[MEMP_MAX];
|
||||
extern const u32_t memp_sizes[MEMP_MAX];
|
||||
#endif /* MEMP_MEM_MALLOC || MEM_USE_POOLS */
|
||||
|
||||
#if MEMP_MEM_MALLOC
|
||||
|
@ -250,6 +250,13 @@
|
||||
---------- Network Interfaces options ----------
|
||||
------------------------------------------------
|
||||
*/
|
||||
|
||||
/**
|
||||
* LWIP_NETIF_HOSTNAME==1: use DHCP_OPTION_HOSTNAME with netif's hostname
|
||||
* field.
|
||||
*/
|
||||
#define LWIP_NETIF_HOSTNAME 1
|
||||
|
||||
/**
|
||||
* LWIP_NETIF_TX_SINGLE_PBUF: if this is set to 1, lwIP tries to put all data
|
||||
* to be sent into one single pbuf. This is for compatibility with DMA-enabled
|
||||
@ -336,7 +343,7 @@
|
||||
* LWIP_TCPIP_CORE_LOCKING: (EXPERIMENTAL!)
|
||||
* Don't use it if you're not an active lwIP project member
|
||||
*/
|
||||
#define LWIP_TCPIP_CORE_LOCKING 1
|
||||
#define LWIP_TCPIP_CORE_LOCKING 0
|
||||
|
||||
/*
|
||||
------------------------------------
|
||||
|
@ -188,7 +188,7 @@ SECTIONS
|
||||
*(.entry.text)
|
||||
*(.init.literal)
|
||||
*(.init)
|
||||
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.literal .text .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.fini.literal)
|
||||
*(.fini)
|
||||
*(.gnu.version)
|
||||
@ -209,6 +209,7 @@ SECTIONS
|
||||
{
|
||||
_irom0_text_start = ABSOLUTE(.);
|
||||
*(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
|
||||
*(.literal.* .text.*)
|
||||
_irom0_text_end = ABSOLUTE(.);
|
||||
} >irom0_0_seg :irom0_0_phdr
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ SECTIONS
|
||||
*(.entry.text)
|
||||
*(.init.literal)
|
||||
*(.init)
|
||||
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.literal .text .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.fini.literal)
|
||||
*(.fini)
|
||||
*(.gnu.version)
|
||||
@ -209,6 +209,7 @@ SECTIONS
|
||||
{
|
||||
_irom0_text_start = ABSOLUTE(.);
|
||||
*(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
|
||||
*(.literal.* .text.*)
|
||||
_irom0_text_end = ABSOLUTE(.);
|
||||
} >irom0_0_seg :irom0_0_phdr
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ SECTIONS
|
||||
*(.entry.text)
|
||||
*(.init.literal)
|
||||
*(.init)
|
||||
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.literal .text .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.fini.literal)
|
||||
*(.fini)
|
||||
*(.gnu.version)
|
||||
@ -209,6 +209,7 @@ SECTIONS
|
||||
{
|
||||
_irom0_text_start = ABSOLUTE(.);
|
||||
*(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
|
||||
*(.literal.* .text.*)
|
||||
_irom0_text_end = ABSOLUTE(.);
|
||||
} >irom0_0_seg :irom0_0_phdr
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ SECTIONS
|
||||
*(.entry.text)
|
||||
*(.init.literal)
|
||||
*(.init)
|
||||
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.literal .text .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.fini.literal)
|
||||
*(.fini)
|
||||
*(.gnu.version)
|
||||
@ -209,6 +209,7 @@ SECTIONS
|
||||
{
|
||||
_irom0_text_start = ABSOLUTE(.);
|
||||
*(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
|
||||
*(.literal.* .text.*)
|
||||
_irom0_text_end = ABSOLUTE(.);
|
||||
} >irom0_0_seg :irom0_0_phdr
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ SECTIONS
|
||||
*(.entry.text)
|
||||
*(.init.literal)
|
||||
*(.init)
|
||||
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.literal .text .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.fini.literal)
|
||||
*(.fini)
|
||||
*(.gnu.version)
|
||||
@ -209,6 +209,7 @@ SECTIONS
|
||||
{
|
||||
_irom0_text_start = ABSOLUTE(.);
|
||||
*(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
|
||||
*(.literal.* .text.*)
|
||||
_irom0_text_end = ABSOLUTE(.);
|
||||
} >irom0_0_seg :irom0_0_phdr
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ SECTIONS
|
||||
*(.entry.text)
|
||||
*(.init.literal)
|
||||
*(.init)
|
||||
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.literal .text .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.fini.literal)
|
||||
*(.fini)
|
||||
*(.gnu.version)
|
||||
@ -209,6 +209,7 @@ SECTIONS
|
||||
{
|
||||
_irom0_text_start = ABSOLUTE(.);
|
||||
*(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
|
||||
*(.literal.* .text.*)
|
||||
_irom0_text_end = ABSOLUTE(.);
|
||||
} >irom0_0_seg :irom0_0_phdr
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ SECTIONS
|
||||
*(.entry.text)
|
||||
*(.init.literal)
|
||||
*(.init)
|
||||
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.literal .text .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.fini.literal)
|
||||
*(.fini)
|
||||
*(.gnu.version)
|
||||
@ -209,6 +209,7 @@ SECTIONS
|
||||
{
|
||||
_irom0_text_start = ABSOLUTE(.);
|
||||
*(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
|
||||
*(.literal.* .text.*)
|
||||
_irom0_text_end = ABSOLUTE(.);
|
||||
} >irom0_0_seg :irom0_0_phdr
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ SECTIONS
|
||||
*(.entry.text)
|
||||
*(.init.literal)
|
||||
*(.init)
|
||||
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.literal .text .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.fini.literal)
|
||||
*(.fini)
|
||||
*(.gnu.version)
|
||||
@ -209,6 +209,7 @@ SECTIONS
|
||||
{
|
||||
_irom0_text_start = ABSOLUTE(.);
|
||||
*(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
|
||||
*(.literal.* .text.*)
|
||||
_irom0_text_end = ABSOLUTE(.);
|
||||
} >irom0_0_seg :irom0_0_phdr
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ SECTIONS
|
||||
*(.entry.text)
|
||||
*(.init.literal)
|
||||
*(.init)
|
||||
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.literal .text .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.fini.literal)
|
||||
*(.fini)
|
||||
*(.gnu.version)
|
||||
@ -209,6 +209,7 @@ SECTIONS
|
||||
{
|
||||
_irom0_text_start = ABSOLUTE(.);
|
||||
*(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
|
||||
*(.literal.* .text.*)
|
||||
_irom0_text_end = ABSOLUTE(.);
|
||||
} >irom0_0_seg :irom0_0_phdr
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ SECTIONS
|
||||
*(.entry.text)
|
||||
*(.init.literal)
|
||||
*(.init)
|
||||
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.literal .text .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
|
||||
*(.fini.literal)
|
||||
*(.fini)
|
||||
*(.gnu.version)
|
||||
@ -209,6 +209,7 @@ SECTIONS
|
||||
{
|
||||
_irom0_text_start = ABSOLUTE(.);
|
||||
*(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
|
||||
*(.literal.* .text.*)
|
||||
_irom0_text_end = ABSOLUTE(.);
|
||||
} >irom0_0_seg :irom0_0_phdr
|
||||
}
|
||||
|
BIN
lib/libcirom.a
BIN
lib/libcirom.a
Binary file not shown.
Binary file not shown.
BIN
lib/libjson.a
BIN
lib/libjson.a
Binary file not shown.
BIN
lib/liblwip.a
BIN
lib/liblwip.a
Binary file not shown.
BIN
lib/libmain.a
BIN
lib/libmain.a
Binary file not shown.
BIN
lib/libminic.a
BIN
lib/libminic.a
Binary file not shown.
BIN
lib/libmirom.a
Normal file
BIN
lib/libmirom.a
Normal file
Binary file not shown.
Binary file not shown.
BIN
lib/libphy.a
BIN
lib/libphy.a
Binary file not shown.
BIN
lib/libpp.a
BIN
lib/libpp.a
Binary file not shown.
Binary file not shown.
BIN
lib/libssl.a
BIN
lib/libssl.a
Binary file not shown.
BIN
lib/libwpa.a
BIN
lib/libwpa.a
Binary file not shown.
5
third_party/freertos/port.c
vendored
5
third_party/freertos/port.c
vendored
@ -320,7 +320,7 @@ PortDisableInt_NoNest( void )
|
||||
void
|
||||
PortEnableInt_NoNest( void )
|
||||
{
|
||||
printf("ERRRRR\n");
|
||||
// printf("ERRRRR\n");
|
||||
|
||||
if(NMIIrqIsOn == 0)
|
||||
{
|
||||
@ -335,6 +335,7 @@ PortEnableInt_NoNest( void )
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
_xt_isr_entry isr[16];
|
||||
char _xt_isr_status = 0;
|
||||
|
||||
void ICACHE_FLASH_ATTR
|
||||
_xt_isr_attach(uint8 i, _xt_isr func, void *arg)
|
||||
@ -364,7 +365,9 @@ uint16 _xt_isr_handler(uint16 i)
|
||||
|
||||
_xt_clear_ints(1<<index);
|
||||
|
||||
_xt_isr_status = 1;
|
||||
isr[index].handler(isr[index].arg);
|
||||
_xt_isr_status = 0;
|
||||
|
||||
return i & ~(1 << index);
|
||||
}
|
||||
|
8
third_party/freertos/queue.c
vendored
8
third_party/freertos/queue.c
vendored
@ -1350,7 +1350,7 @@ unsigned portBASE_TYPE uxReturn;
|
||||
} /*lint !e818 Pointer cannot be declared const as xQueue is a typedef not pointer. */
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
unsigned portBASE_TYPE ICACHE_FLASH_ATTR
|
||||
unsigned portBASE_TYPE
|
||||
uxQueueMessagesWaitingFromISR( const xQueueHandle xQueue )
|
||||
{
|
||||
unsigned portBASE_TYPE uxReturn;
|
||||
@ -1822,7 +1822,7 @@ PortEnableInt_NoNest();
|
||||
|
||||
#if ( configUSE_CO_ROUTINES == 1 )
|
||||
|
||||
signed portBASE_TYPE
|
||||
signed portBASE_TYPE ICACHE_FLASH_ATTR
|
||||
xQueueCRSendFromISR( xQueueHandle xQueue, const void *pvItemToQueue, signed portBASE_TYPE xCoRoutinePreviouslyWoken )
|
||||
{
|
||||
xQUEUE * const pxQueue = ( xQUEUE * ) xQueue;
|
||||
@ -1855,7 +1855,7 @@ PortEnableInt_NoNest();
|
||||
|
||||
#if ( configUSE_CO_ROUTINES == 1 )
|
||||
|
||||
signed portBASE_TYPE
|
||||
signed portBASE_TYPE ICACHE_FLASH_ATTR
|
||||
xQueueCRReceiveFromISR( xQueueHandle xQueue, void *pvBuffer, signed portBASE_TYPE *pxCoRoutineWoken )
|
||||
{
|
||||
signed portBASE_TYPE xReturn;
|
||||
@ -2081,7 +2081,7 @@ PortEnableInt_NoNest();
|
||||
|
||||
#if ( configUSE_QUEUE_SETS == 1 )
|
||||
|
||||
xQueueSetMemberHandle
|
||||
xQueueSetMemberHandle ICACHE_FLASH_ATTR
|
||||
xQueueSelectFromSetFromISR( xQueueSetHandle xQueueSet )
|
||||
{
|
||||
xQueueSetMemberHandle xReturn = NULL;
|
||||
|
2
third_party/ssl/crypto/ssl_crypto_misc.c
vendored
2
third_party/ssl/crypto/ssl_crypto_misc.c
vendored
@ -217,7 +217,7 @@ void ICACHE_FLASH_ATTR get_random_NZ(int num_rand_bytes, uint8_t *rand_data)
|
||||
for (i = 0; i < num_rand_bytes; i++)
|
||||
{
|
||||
while (rand_data[i] == 0) /* can't be 0 */
|
||||
rand_data[i] = (uint8_t)(rand());
|
||||
rand_data[i] = (uint8_t)(os_random());
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user