Commit Graph

159 Commits

Author SHA1 Message Date
Wu Jian Gang
7665082ad0 feat(esp8266): Make os_printf equal to printf
Since the string used by printf are put in flash by default.
Don't need the old os_printf to define a macro to put string to flash manually.
2018-05-24 10:17:00 +08:00
Wu Jian Gang
36d8852194 feat(ld): Put rodata into flash by default
except rodata in libpp.a
2018-05-24 09:57:07 +08:00
Trygve Laugstøl
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
Wu Jian Gang
3c560f678a feat(driver): Clean up header files dependency 2018-05-23 16:43:29 +08:00
Wu Jian Gang
78bdcf043e feat(driver): Use standard typedef 2018-05-23 15:24:05 +08:00
Wu Jian Gang
3b28e58a3e feat(driver): Use static instead of LOCAL 2018-05-23 15:17:00 +08:00
Wu Jian Gang
84781e3d37 feat(driver): Don't need to use ICACHE_FLASH_ATTR 2018-05-23 15:16:16 +08:00
Wu Jian Gang
a08d0711a4 feat(driver): Use astyle to format the code 2018-05-23 15:16:16 +08:00
Wu Jian Gang
ae6c134ec4 feat(driver): Update to use apache license 2018-05-23 15:14:08 +08:00
Trygve Laugstøl
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
Wu Jian Gang
97bcae3801 feat(freertos): Move freertos related files from esp8266 to freertos 2018-05-20 21:29:56 +08:00
Wu Jian Gang
331600eae4 Merge branch 'bugfix/fix_github_issues_174' into 'master'
fix(esp8266): Fix github issues 174

See merge request sdk/ESP8266_RTOS_SDK!145
2018-05-19 20:48:06 +08:00
Dong Heng
5876cc6bc6 fix(esp8266): Fix github issues 174
Use "$CONFIG_PYTHON" to generate firmware.
Closes https://github.com/espressif/ESP8266_RTOS_SDK/issues/174
Merges https://github.com/espressif/ESP8266_RTOS_SDK/pull/185
2018-05-19 20:43:22 +08:00
Wu Jian Gang
b67badd220 Merge branch 'fix/load_store_error_a0' into 'master'
Fix load/store error when use "a0"

See merge request sdk/ESP8266_RTOS_SDK!164
2018-05-18 22:54:29 +08:00
Dong Heng
ef782b24ff fix(esp8266): Fix load/store error when use "a0"
Closes https://github.com/espressif/ESP8266_RTOS_SDK/issues/183
2018-05-18 22:52:34 +08:00
Dong Heng
2e657bba41 feat(esp8266): dos2unix source file type 2018-05-18 14:12:32 +08:00
Dong Heng
7df0212b92 feat(ld): add "ets_printf" to rom link file 2018-05-14 14:51:49 +08:00
Dong Heng
4048ed82de feat(main): Update library to 0b78c0f
1. remove "syscall" and "printf"
2. remove global "errno"
2018-05-14 14:51:16 +08:00
Dong Heng
30de450816 feat(newlib): Add newlib platform function 2018-05-14 14:30:42 +08:00
Wu Jian Gang
2a5a639019 Merge branch 'chore/add_cmake_function_for_esp8266' into 'master'
feat(esp8266): Add cmake fucntion

See merge request sdk/ESP8266_RTOS_SDK!136
2018-05-04 17:10:32 +08:00
Dong Heng
1202c9d77f feat(esp8266): Add cmake fucntion
1. add fucntion to generate target firmware
2. add function "flash", "erase_flash" and "monitor"
2018-05-04 17:03:48 +08:00
Dong Heng
dfd7fa3490 feat(esp8266): Add cmake script 2018-05-04 16:48:23 +08:00
Wu Jian Gang
c47421d9be feat(esp8266): Don't use libminic
Link error with libc
2018-05-04 08:57:32 +08:00
Zhang Jun Hao
57880c7a41 feat(esp8266): Change ip_addr/ip_addr_t to ip4_addr/ip4_addr_t 2018-05-01 13:26:52 +08:00
Wu Jian Gang
9ba5d39551 feat(esp8266): Modify ld files back
commit: 3dda7069 enlarges .text section temperary
2018-04-28 16:17:13 +08:00
Wu Jian Gang
0e8280e1dc feat(freertos): Put freertos in flash by default 2018-04-27 21:56:36 +08:00
Wu Jian Gang
2f058746c0 Merge branch 'feature/update_freertos_to_newest' into 'master'
update freertos to v10.0.1

See merge request sdk/ESP8266_RTOS_SDK!95
2018-04-27 20:58:20 +08:00
Dong Heng
3dda706968 feat(esp8266): Add 0xD00 bytes IRAM space for new FreeRTOS 2018-04-27 20:54:32 +08:00
Dong Heng
632af7388e feat(esp8266): Add panic function when crash 2018-04-27 17:54:26 +08:00
Wu Jian Gang
98bb966357 feat(wifi): Using esp socket in WiFi libs 2018-04-26 18:05:21 +08:00
Dong Heng
27888f19cc feat(esp8266): Add WIFI socket and async APIs
1. add section to linking file
2018-04-20 21:00:32 +08:00
Wu Jian Gang
34cd06c059 feat(esp8266): Remove freeRTOS dependence in internal libs 2018-04-19 20:16:48 +08:00
Dong Heng
313aa1b4e8 feat(esp8266): Rename WIFI OS adapter array 2018-04-19 17:38:27 +08:00
Wu Jian Gang
a832a0d506 feat(esp8266): Remove freeRTOS dependence in internal libs 2018-04-19 16:58:35 +08:00
Dong Heng
3ee9fe751b feat(esp8266): Modify WIFI OS adapter APIs for ESP8266
Add platform code of FreeRTOS.
2018-04-19 16:21:21 +08:00
Dong Heng
8ed2d1de46 feat(esp8266): Bring wifi OS adapter API header file from esp-idf 2018-04-19 16:19:32 +08:00
Wu Jian Gang
d7b67ed6e8 feat(esp8266): Remove xtensa source from libcore.a 2018-04-19 14:41:22 +08:00
Dong Heng
bd148bbb34 feat(esp8266): Add fucntion to pass compiling
Remove unused code.
2018-04-19 14:22:14 +08:00
Dong Heng
f8692936e0 feat(esp8266): Add xtensa source to esp8266 component 2018-04-19 14:15:39 +08:00
zhangjunhao
84829fec67 feat(wifi): remove lwip from wifi 2018-04-17 21:15:34 +08:00
Wu Jian Gang
e3cdb2dae3 feat(structure): Re-structure some include 2018-04-08 20:42:35 +08:00
Wu Jian Gang
6a4bbf217d feat(structure): Remove unused makefile 2018-04-08 18:16:19 +08:00
Dong Heng
ef0ba30297 fix(esptool): fix linking error 2018-04-08 17:23:09 +08:00
Dong Heng
2065a90079 feat(esp8266): Add libhal.a to esp8266 2018-04-08 16:54:27 +08:00
Dong Heng
e74ac4e624 feat(esp8266): Update esp8266 header file
Add NMI critical function.
2018-04-08 16:28:38 +08:00
Dong Heng
93df33802f feat(esp8266): Modify Makefile.projbuild for esp8266
1. support generating esp8266 specific bin when input 'make' and so on
2. support 'make flash', 'make monitor' and 'make monitor flash'
3. esp8266 do not support secure boot
2018-04-08 14:17:05 +08:00
Dong Heng
70152ef723 feat(esp8266): Move Makefile.projbuild from esptool_py to esp8266
Every chip should has its own 'esptool' function and parameters.
2018-04-08 14:02:17 +08:00
Dong Heng
1f52074eaf feat(esp8266): Modify component.mk for esp8266 2018-04-08 12:43:21 +08:00
Dong Heng
b7070f35c3 feat(esp8266): Bring esp32 component.mk from esp-idf
Prepare to modify for ESP8266.
2018-04-08 11:30:04 +08:00
Wu Jian Gang
752f131021 Merge branch 'feature/move_xtensa_to_esp8266' into 'refactor'
Move xtensa to components

See merge request sdk/ESP8266_RTOS_SDK!30
2018-04-08 10:59:37 +08:00