Commit Graph

27199 Commits

Author SHA1 Message Date
Angus Gratton
d7cfe08b13 Merge branch 'bugfix/add_tx_flowcontrol' into 'master'
lwip: add socket tx flow control

This fix is used to solve wifi q full issue:
1. When wifi tx q is full, set tx_enable to false
2. When wifi tx q decrease 1/2 max length, set tx_enable to true again
3. esp_wifi_tx_enable return whether tx_enable is true
4. If esp_wifi_tx_enable return false, socket will be blocked

See merge request !62
2016-09-14 09:01:42 +08:00
Angus Gratton
66b6a4c642 Merge branch 'feature/esptool_upstream' 2016-09-14 10:28:41 +10:00
Ivan Grokhotkov
d7f7c36af0 gitlab-ci: fix setting GitHub deploy key
- don't run default before_script before push_master_to_github job
- replace echo >> with echo > to avoid mistakes in the future
2016-09-13 21:24:57 +08:00
Wu Jian Gang
ed8e8848e3 fix typos 2016-09-13 20:54:20 +08:00
Ivan Grokhotkov
ab12f6e9c1 Merge branch 'bugfix/spi_flash_unlock_once' into 'master'
components/spi_flash: call SPIUnlock once

This fixes the performance impact for spi_flash_write and spi_flash_erase.
With this change, NVS init in single core mode takes about 50ms (compared to >2seconds before that).

For dual core mode, we still spend on average 2ms for each spi_flash_ operation due to synchronization between CPUs, so NVS startup time is about 2 seconds in dual core mode.

See merge request !80
2016-09-13 18:14:22 +08:00
Wu Jian Gang
b56098a612 Merge remote-tracking branch 'origin/master' into feature/mbedtls 2016-09-13 16:31:48 +08:00
Wu Jian Gang
bf5e83a6ed callback: add a void* pointer with each callback
also format event.c/wifi.c/esp_event.h/esp_wifi.h
2016-09-13 16:20:29 +08:00
Wu Jian Gang
c56a790f64 header: callbacks use "void *" as arguments 2016-09-13 16:19:09 +08:00
Wu Jian Gang
c5f8396df4 header: format and fix typos
SYSTEM_EVENT_STA_GOTIP to SYSTEM_EVENT_STA_GOT_IP
2016-09-13 16:17:41 +08:00
liuzhifu
ded5df7513 add wifi api comments 2016-09-13 16:17:41 +08:00
liuzhifu
b86e060647 add wifi api comments 2016-09-13 16:17:41 +08:00
Ivan Grokhotkov
9027be98d1 Merge branch 'bugfix/ci_update_for_wifi_revision' into 'master'
update ci: build ssc with idf submodule wifi lib

update CI build SSC part according to the discussion in MR bugfix/wifi_revision

See merge request !76
2016-09-13 16:05:17 +08:00
Ivan Grokhotkov
29c6eab6dc components/spi_flash: call SPIUnlock only once
This fixes the performance impact for spi_flash_write and spi_flash_erase.
With this change, NVS init in single core mode takes about 50ms (compared to >2seconds before that).
2016-09-13 15:16:36 +08:00
Angus Gratton
b6b83c33be Merge branch 'feature/bootloader_config' into 'master'
Add bootloader menuconfig entries

Adds log verbosity & ANSI coloring to menuconfig, also some cleanup in cpu_start.c

See merge request !79
2016-09-13 14:31:18 +08:00
Ivan Grokhotkov
f9013d9ff8 Merge branch 'feature/dualcore_spi_flash_api' into 'master'
Dual core compatible spi flash APIs

Implementation of spi flash APIs which work in dual core mode.

This also includes other changes:
- fixes to FreeRTOS tasks.c made by Jeroen and me — these were originally made to fix issues with high priority tasks seen in WiFi stack, but were required to get stuff in ipc.c working as well
- initial base idea with two high-priority tasks was separated into a separate API — esp_ipc.h. That API allows one to run a function on the other CPU from a high-priority task. Because we don't have preemption across CPUs, this is currently not very fast: it requires on average half a tick until the second CPU switches to the high priority task. Currently that API can be either blocking, or non-blocking with queue length of 1. I haven't yet found a use case for arbitrary sized queue of IPC requests. Anyone who needs that can trivially add that later by replacing a binary semaphore with a generic queue.

With these changes i can run application with WiFi stack and NVS on both cores.

See merge request !25
2016-09-13 13:58:54 +08:00
Ivan Grokhotkov
ce2153c447 components/spi_flash: improve comments and readability 2016-09-13 12:47:21 +08:00
Angus Gratton
7ba471d531 esp32 cpu_start: Include rom/uart.h, remove inline ROM function declarations 2016-09-13 14:18:17 +10:00
Angus Gratton
3061ae40c0 bootloader: Add bootloader Kconfig
Allow debug level & colour highlighting to be configured
2016-09-13 14:18:17 +10:00
Jeroen Domburg
174a0e3f8b Fix bug where nesting vTaskEnterCritical calls would not re-enable interrupts after vTaskExitCritical sections. 2016-09-13 11:47:22 +08:00
Yinling
1f6fca672d installed gitlab key in global before_script,
don't need to overwrite in template before_script
2016-09-13 10:06:09 +08:00
Angus Gratton
417dcee450 ci: Use github repo for wifi libraries on master branch, gitlab repo otherwise 2016-09-13 11:53:16 +10:00
Ivan Grokhotkov
23d5c7579b components/esp32,spi_flash: update some comments 2016-09-12 20:02:51 +08:00
Ivan Grokhotkov
1b6022bd07 components/esp32: remove dependency of WIFI_ENABLED on FREERTOS_UNICORE 2016-09-12 19:53:38 +08:00
Wu Jian Gang
4598f9fc88 esp32/lib: Bump WiFi revision 2016-09-12 19:32:05 +08:00
Yinling
19bbe64a56 update ci: build ssc with idf submodule wifi lib 2016-09-12 19:09:28 +08:00
Ivan Grokhotkov
e9f2645b21 components/esp32: add inter-processor call API and implement spi_flash through it
With this change, flash operations can run on both cores.
NVS and WiFi stack can also run in dual core mode now.
2016-09-12 18:54:45 +08:00
Wu Jian Gang
19f9ca0200 Merge branch 'bugfix/wifi_revision' into 'master'
esp32/lib: Bump WiFi revision



See merge request !72
2016-09-12 18:52:40 +08:00
Wu Jian Gang
b8f5974a62 Merge branch 'feature/add_rom_comments' into 'master'
header files: modify rom code header files and soc header files

1. timer reg file for both time group 0 and time group 1, not only timer group 0
2. fix bug that io mux header file mismatch with chip
3. fix bug that some BASE address not correct
4. add some static function to eagle.fpga32.rom.addr.v7.ld
5. add interrupts usage table
6. add some comments for rom code functions

See merge request !43
2016-09-12 18:14:02 +08:00
Jack
bd8febe58c add MACRO to get flash pad number from efuse value 2016-09-12 17:47:50 +08:00
Jack
d0442602c7 add comments to register read/write operations 2016-09-12 17:47:50 +08:00
Wu Jian Gang
04b53643ef header files: clean up
1. format;
2. Slow RTC memory reverse 2KB;
2016-09-12 17:47:50 +08:00
jack
24011ddd05 header files: modify rom code and soc header files
1. timer reg file for both time group 0 and time group 1, not only timer group 0
2. fix bug that io mux header file mismatch with chip
3. fix bug that some BASE address not correct
4. add some static function to eagle.fpga32.rom.addr.v7.ld
5. add interrupts usage table
6. add some comments for rom code functions
2016-09-12 17:47:49 +08:00
Jeroen Domburg
fe3380d32e Merge branch 'bugfix/realloc' into 'master'
modify realloc behaves

 modify realloc behaves just like malloc when pass a null pointer for ptr.

See merge request !66
2016-09-12 17:08:57 +08:00
Angus Gratton
bab3faba58 add_path.sh: Use non-bash-specific instructions 2016-09-12 18:39:20 +10:00
Angus Gratton
bdc4ecb9dd CI for SSC: Allow for submodules & using the gitlab repo's libraries 2016-09-12 18:04:09 +10:00
Angus Gratton
fcf278848d Merge branch 'master' into feature/esptool_upstream 2016-09-12 18:02:10 +10:00
Angus Gratton
5810dbef05 make: Add macro to test for & try to fix up files required for submodules
Now applied to both esptool.py & esp32 wifi libs
2016-09-12 18:00:20 +10:00
Angus Gratton
f293d530f8 esp32/lib: Bump WiFi revision 2016-09-12 17:31:43 +10:00
Angus Gratton
9c51f8a7a3 Merge branch 'master' into feature/mbedtls 2016-09-12 17:30:11 +10:00
Wu Jian Gang
56fcae19af Merge branch 'bug/storage_enum' into 'master'
Change the enum of wifi_storage_t to be the same as that in wifi lib.



See merge request !71
2016-09-12 11:49:22 +08:00
xiaxiaotian
7c607e4d63 Change the enum of wifi_storage_t to be the same as that in wifi lib. 2016-09-12 11:38:13 +08:00
Ivan Grokhotkov
86f434c9be Merge branch 'feature/ci_add_function_test' into 'master'
update ci config file with 2 changes:

1. add build SSC and do sanity test config
2. add tags to each job as sanity test need to be executed on special runner

Test is now only arranged for master branch

See merge request !69
2016-09-12 11:30:09 +08:00
Ivan Grokhotkov
1c6859573b freertos: protect calls to prvAddTaskToReadyList with xTaskQueueMutex 2016-09-09 17:59:37 +08:00
liuzhifu
32f01c61a2 add comments about current tx flow control 2016-09-09 17:58:21 +08:00
liuzhifu
e38c4b0365 modify esp32_tx_flow_ctrl to static function and move extern api to header file 2016-09-09 17:58:21 +08:00
liuzhifu
19c8476344 modify macro ESP32_TX_FLOW_CTRL to inline function 2016-09-09 17:58:21 +08:00
liuzhifu
a28ef1776e lwip: add socket tx flow control 2016-09-09 17:58:21 +08:00
Jeroen Domburg
9664de6867 Add working portASSERT_IF_IN_ISR function, fix enter_critical thing even better. 2016-09-09 17:15:50 +08:00
Jeroen Domburg
128bb77c5a Fix prev code to not crash horribly when scheduler is not running yet 2016-09-09 17:15:49 +08:00
Jeroen Domburg
08ec33c6a2 Make vTaskEnterCritical callable from ISR 2016-09-09 17:15:12 +08:00