659 Commits

Author SHA1 Message Date
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
36d8852194 feat(ld): Put rodata into flash by default
except rodata in libpp.a
2018-05-24 09:57:07 +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
3c560f678a feat(driver): Clean up header files dependency 2018-05-23 16:43:29 +08:00
78bdcf043e feat(driver): Use standard typedef 2018-05-23 15:24:05 +08:00
3b28e58a3e feat(driver): Use static instead of LOCAL 2018-05-23 15:17:00 +08:00
84781e3d37 feat(driver): Don't need to use ICACHE_FLASH_ATTR 2018-05-23 15:16:16 +08:00
a08d0711a4 feat(driver): Use astyle to format the code 2018-05-23 15:16:16 +08:00
ae6c134ec4 feat(driver): Update to use apache license 2018-05-23 15:14:08 +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
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
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
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
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
2e657bba41 feat(esp8266): dos2unix source file type 2018-05-18 14:12:32 +08:00
7df0212b92 feat(ld): add "ets_printf" to rom link file 2018-05-14 14:51:49 +08:00
4048ed82de feat(main): Update library to 0b78c0f
1. remove "syscall" and "printf"
2. remove global "errno"
2018-05-14 14:51:16 +08:00
30de450816 feat(newlib): Add newlib platform function 2018-05-14 14:30:42 +08:00
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
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
dfd7fa3490 feat(esp8266): Add cmake script 2018-05-04 16:48:23 +08:00
c47421d9be feat(esp8266): Don't use libminic
Link error with libc
2018-05-04 08:57:32 +08:00
57880c7a41 feat(esp8266): Change ip_addr/ip_addr_t to ip4_addr/ip4_addr_t 2018-05-01 13:26:52 +08:00
9ba5d39551 feat(esp8266): Modify ld files back
commit: 3dda7069 enlarges .text section temperary
2018-04-28 16:17:13 +08:00
0e8280e1dc feat(freertos): Put freertos in flash by default 2018-04-27 21:56:36 +08:00
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
3dda706968 feat(esp8266): Add 0xD00 bytes IRAM space for new FreeRTOS 2018-04-27 20:54:32 +08:00
632af7388e feat(esp8266): Add panic function when crash 2018-04-27 17:54:26 +08:00
98bb966357 feat(wifi): Using esp socket in WiFi libs 2018-04-26 18:05:21 +08:00
27888f19cc feat(esp8266): Add WIFI socket and async APIs
1. add section to linking file
2018-04-20 21:00:32 +08:00
34cd06c059 feat(esp8266): Remove freeRTOS dependence in internal libs 2018-04-19 20:16:48 +08:00
313aa1b4e8 feat(esp8266): Rename WIFI OS adapter array 2018-04-19 17:38:27 +08:00
a832a0d506 feat(esp8266): Remove freeRTOS dependence in internal libs 2018-04-19 16:58:35 +08:00
3ee9fe751b feat(esp8266): Modify WIFI OS adapter APIs for ESP8266
Add platform code of FreeRTOS.
2018-04-19 16:21:21 +08:00
8ed2d1de46 feat(esp8266): Bring wifi OS adapter API header file from esp-idf 2018-04-19 16:19:32 +08:00
d7b67ed6e8 feat(esp8266): Remove xtensa source from libcore.a 2018-04-19 14:41:22 +08:00
bd148bbb34 feat(esp8266): Add fucntion to pass compiling
Remove unused code.
2018-04-19 14:22:14 +08:00
f8692936e0 feat(esp8266): Add xtensa source to esp8266 component 2018-04-19 14:15:39 +08:00
84829fec67 feat(wifi): remove lwip from wifi 2018-04-17 21:15:34 +08:00
e3cdb2dae3 feat(structure): Re-structure some include 2018-04-08 20:42:35 +08:00
6a4bbf217d feat(structure): Remove unused makefile 2018-04-08 18:16:19 +08:00
ef0ba30297 fix(esptool): fix linking error 2018-04-08 17:23:09 +08:00
2065a90079 feat(esp8266): Add libhal.a to esp8266 2018-04-08 16:54:27 +08:00
e74ac4e624 feat(esp8266): Update esp8266 header file
Add NMI critical function.
2018-04-08 16:28:38 +08:00
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
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
1f52074eaf feat(esp8266): Modify component.mk for esp8266 2018-04-08 12:43:21 +08:00
b7070f35c3 feat(esp8266): Bring esp32 component.mk from esp-idf
Prepare to modify for ESP8266.
2018-04-08 11:30:04 +08:00
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