39 Commits

Author SHA1 Message Date
8633994744 feat(FreeRTOS): Modify for ESP8266 2018-08-22 14:05:59 +08:00
56e89a4372 feat(FreeRTOS): Bring os hook from esp-idf
Commit ID: 4eb28b9a
2018-08-22 11:00:20 +08:00
f5196d26a6 feat(esp8266): Modify header file relationship for app using BITx 2018-08-09 19:53:44 +08:00
35ee995327 fix(components): Fix all components's compile warning and enable warning checking 2018-08-07 15:42:28 +08:00
8f9e0da791 Merge branch 'feature/add_throughput_mode' into 'master'
Add full icache mode

See merge request sdk/ESP8266_RTOS_SDK!352
2018-08-01 15:15:29 +08:00
bbdb7737fb Merge branch 'feature/add_freertos_hz_config' into 'master'
feat: configurate FreeRTOS HZ

See merge request sdk/ESP8266_RTOS_SDK!337
2018-08-01 09:58:33 +08:00
b32c52874d feat(esp8266): Add full icache mode
Use full 32 KB iram as icache.
2018-07-31 11:01:06 +08:00
8e50ff353a fix(newlib): Fix application disable intterupt then call newlib internal mutex function 2018-07-30 19:58:11 +08:00
610e6a11ef feat: configurate FreeRTOS HZ 2018-07-26 16:50:04 +08:00
48a173e358 feat(freertos): Add memory mark to trace heap over call levels 2018-07-18 16:03:06 +08:00
627452e85c bugfix(freertos): CPU switch from kernel to user mode 2018-07-18 10:36:04 +08:00
e2091c6af9 feat(FreeRTOS): Close ISR when panic 2018-07-17 20:40:20 +08:00
d5b6457704 feat(freertos): Fix FreeRTOS stack overflow checking missing 2018-07-10 15:35:15 +08:00
1ba1e5ccbd feat(task): Change all tasks size 4 times the original 2018-07-09 20:11:41 +08:00
0a0db61155 feat(freertos): Change task stack unit from "unsigned long" to "unsigned char" 2018-07-09 19:35:00 +08:00
ce35ff95e7 Merge branch 'feature/modify_malloc_function' into 'master'
feat(newlib): Use new private malloc function

See merge request sdk/ESP8266_RTOS_SDK!264
2018-07-06 19:53:35 +08:00
c42975f28f feat(freertos): Enable cache when panic
Some function may disable cache.
2018-07-05 14:31:30 +08:00
83ec6f3d58 feat(newlib): Use new private malloc function
Add return address to debug memory leak.
2018-07-05 10:55:59 +08:00
4268f9c971 feat(freertos): Add panic for task stack 2018-07-03 17:50:59 +08:00
ac6393b5b3 feat(esp8266): Add software watch dog panic function 2018-07-02 13:52:19 +08:00
19f9a8221d feat(esp8266): Refactor startup function 2018-06-28 14:54:40 +08:00
9d0b024433 feat(esp8266): Refactor ets system headler file 2018-06-27 11:39:50 +08:00
49e9e51b3c feat(freertos): Add error check function 2018-06-25 20:11:13 +08:00
1cde2f5f81 feat(bootloader): Add startup function 2018-06-21 13:06:08 +08:00
df9a5d6bb1 feat(spi_flash): Modify SPI flash driver 2018-06-08 18:04:38 +08:00
e15f211d46 feat(esp8266): Add "putc" and "vprintf" of version "ets_" 2018-05-25 19:28:36 +08:00
e518650b36 feat: Don't use c_types.h in SDK 2018-05-24 20:41:29 +08:00
291c94b501 feat: Remove the use of os_printf in SDK 2018-05-24 19:52:43 +08:00
91f7080231 fix: Fix all files when change to use standard typedef 2018-05-24 19:27:41 +08:00
b9922f5116 fix: Fix warning while esp_libc update 2018-05-24 14:47:14 +08:00
29f5577ac6 feat(esp8266): Don't use ICACHE_FLASH_ATTR in SDK side 2018-05-24 12:38:06 +08:00
d75ffa61eb feat(esp8266): Don't use ICACHE_RODATA_ATTR to let string to be in flash
rodata will be in flash by default.
2018-05-24 11:02:34 +08:00
2e1fb87aaf feat(heap): Fix heap parameters
Line = 0 will make it alloc memory at iram.
2018-05-24 10:26:17 +08:00
73f23833ec Make sure vShowMalloc() doesn't crash.
fix(freertos): Only show the file name if the pointer is not NULL. Try
to shorten the path to only the last components (mydir/foo.c =>
foo.c). Use fixed-width specifiers instead of tab characters.

Merges https://github.com/espressif/ESP8266_RTOS_SDK/pull/192
2018-05-24 08:57:36 +08:00
c31e4a3633 Improve pvPortMalloc() and family.
fix(freertos): Better implementation of realloc, calloc and zalloc.
Implement them with the same symmetry as malloc. Removes duplicate and
nearly identical implementations. Make the libc symbols aliases of the
non-tracing versions.

This improves on my previous patch for espressif/ESP8266_RTOS_SDK#189.
2018-05-24 08:57:29 +08:00
24ef94f811 Improve pvPortMalloc() and family.
fix(esp8266): If MEMLEAK_DEBUG is defined, create an alternate function
called `.._trace` that for each of `pvPortMalloc`, `pvPortZalloc`,
`pvPortCalloc` and `vPortFree`. The original function delegates to this new
tracing function but uses NULL and 0 for the file and line number. This ensures
that the pvPortMalloc exists as a symbol that can be used by the binary blobs
without any problems.

Example output from earlier usage:

~~~
--------Show Malloc--------
F:ppT	L:512	malloc 2064	@ 0x3ffefd08
F:pmT	L:256	malloc 1040	@ 0x3fff0518
F:tiT	L:512	malloc 2064	@ 0x3fff0928
F:uiT	L:640	malloc 2576	@ 0x3fff1138
F:IDLE	L:176	malloc 720	@ 0x3fff1b48
F:Tmr Svc	L:512	malloc 2064	@ 0x3fff1e18
~~~

fix(lwip): Remove declarations of `pvPortMalloc()` and family.

This fixes some of the issues in espressif/ESP8266_RTOS_SDK#189 but some of the
example applications fails. Not ready for merge but comments on my approach
will be appreciated.
2018-05-24 08:57:21 +08:00
f82e9be787 fix: Fixing lots of compilation warnings
- fix(esp8266):
  - Adding includes for missing symbols.
  - Removing unused variables.
  - Skip unsupported packing pragmas.
  - Add rom_functions.h for symbols that come from the ESP ROM. Add attributes on
ets_printf so GCC will check the syntax of the formatting string and types of
the arguments.
  - Add ETS_GPIO_INTR_EN(DIS)ABLE macro.
  - Use gpio_output_conf instead of gpio_output_set.

- fix(freertos):
  - Define functions that are useful.
  - Use correct printf symbols when printing.

- fix(lwip):
  - Ignore the warning in sntp.

- fix(mqtt):
  - `xTicksToWait` is unsigned, can't check for less than zero. Remove
unused variables.

- fix(newlib):
  - `_free_r()` returns `void`, not `void *`.
  - Adding includes for missing symbols.

- fix(ssl):
  - Make sure functions always return a value.

Merges https://github.com/espressif/ESP8266_RTOS_SDK/pull/188
2018-05-23 14:52:26 +08:00
97bcae3801 feat(freertos): Move freertos related files from esp8266 to freertos 2018-05-20 21:29:56 +08:00
ba4dfbed74 feat(freertos): Restructure freertos folder to support different platform 2018-05-20 21:29:56 +08:00