Commit graph

100 commits

Author SHA1 Message Date
liuzhifu
65cccfe89f components: lwip
Implement lwip per-thread-sem with:
vTaskSetThreadLocalStoragePointerAndDelCallback/pvTaskGetThreadLocalStoragePointer
register sys_thread_tls_free to free per-thread-sem when the thread is terminated.
Also let lwip use index CONFIG_LWIP_THREAD_LOCAL_STORAGE_INDEX
2016-08-26 19:06:38 +08:00
liuzhifu
ad188c3854 Remove the workaround that erase flash before calling nvs_flash_init 2016-08-26 19:06:33 +08:00
liuzhifu
2ca1b738d3 modify APB_CLK_FREQ from 40M to 80M 2016-08-26 19:03:51 +08:00
liuzhifu
ebfb8547d2 Implement ETS_INTR_ENABLE/ETS_INTR_DISABLE with xt_ints_on/xt_ints_off 2016-08-26 19:03:51 +08:00
liuzhifu
dcc998c92f components: lwip/tcpip_adapter/freertos/esp32
Replace os_printf with printf
2016-08-26 19:03:51 +08:00
liuzhifu
cb3d46786d enable sys_arch_protect/sys_arch_unprotect with portENTER_CRITICAL/portEXIT_CRITICAL 2016-08-26 19:03:51 +08:00
liuzhifu
52953851f4 component: lwip
1. add lock version print for lwip (workaround)
2. add debug info into sys_arch.c to debug xQueueReceive issue
2016-08-26 19:03:51 +08:00
xiaxiaotian
ef0cd1cde3 1. Remove ip member of struct station_info
2. Add struct station_list into tcpip_adapter layer
3. When ap -L cmd is received, get mac address from mac layer first and then search ip address based on mac address on dhcp layer.
2016-08-26 19:03:50 +08:00
xiaxiaotian
c35b57ac7b 1. Move the structure pointer into the respective case statement. 2016-08-26 19:03:50 +08:00
xiaxiaotian
3ba06efd7d Merge branch 'wifi' of ssh://gitlab.espressif.cn:27227/idf/esp-idf into wifi 2016-08-26 19:03:50 +08:00
xiaxiaotian
ccd60408b3 Fix the bug that the query reault is 'connected' when station is disconnected by input 'sta -D' 2016-08-26 19:03:50 +08:00
liuzhifu
91135da190 impact components: lwip/freertos
1. Remove xTaskGetPerTaskData
2. Implement lwip per thread semaphore with vTaskSetThreadLocalStoragePointer
   and pvTaskGetThreadLocalStoragePointer
3. Add sys_thread_sem_get/sys_thread_sem_init/sys_thread_sem_deinit
2016-08-26 19:03:50 +08:00
xiaxiaotian
1325a761e9 add got ip event handler 2016-08-26 19:03:50 +08:00
liuzhifu
6f122928f0 fix socket compile error 2016-08-26 19:03:50 +08:00
liuzhifu
e4722e6143 modify tcpip_dep_dhcpc_stop to tcpip_adapter_dhcpc_stop 2016-08-26 19:03:50 +08:00
liuzhifu
34ac96994b add debug info to wifi.c 2016-08-26 19:03:50 +08:00
Angus Gratton
00ea21f736 FreeRTOS: Convert portMUX_DEBUG to a configuration item 2016-08-25 16:43:59 +08:00
Angus Gratton
96b9649aa4 newlib locking: Fix bug w/ _lock_close not clearing semaphore handle 2016-08-25 16:43:55 +08:00
Angus Gratton
e6bc527dfb Merge branch 'master' into feature/newlib_locking 2016-08-25 12:09:21 +08:00
Jeroen Domburg
803aef6e97 Merge branch 'bugfix/tskNO_AFFINITY_ambiguous' into 'master'
FreeRTOS: Change tskNO_AFFINITY value to not match CPU 1 when UNICORE is set



See merge request !27
2016-08-25 11:48:21 +08:00
Angus Gratton
7458f9193b Rename build_system_tests to less-ambiguous test_build_system
Before it was unclear if we were building the system tests or testing
the build system.
2016-08-25 11:55:47 +08:00
Angus Gratton
f54348ff83 build_system_tests.sh: Replace use of second-precision-only [ a -ot b ] 2016-08-25 11:54:37 +08:00
Angus Gratton
580fd635e5 FreeRTOS: Change tskNO_AFFINITY value to not match CPU 1 when UNICORE is set 2016-08-25 11:30:24 +08:00
Angus Gratton
9e703612a7 Merge branch 'master' into feature/newlib_locking 2016-08-25 11:25:05 +08:00
Angus Gratton
a04b510a21 Merge branch 'master' into feature/newlib_locking 2016-08-25 11:11:35 +08:00
Ivan Grokhotkov
842bc53549 Merge branch 'bugfix/dualcore_startup' into 'master'
Fix dualcore startup

This MR includes:
- a workaround for a hardware bug with cache initialization
- fix of `#if CONFIG_WIFI_ENABLED` block in cpu_start.c for the case when WiFi is disabled.
- removal of miscellaneous delays in cpu_start.c

See merge request !22
2016-08-25 11:07:21 +08:00
Angus Gratton
8369d328ed Merge remote-tracking branch 'origin/bugfix/dualcore_startup' into feature/newlib_locking 2016-08-25 10:29:36 +08:00
Ivan Grokhotkov
bce356b700 Merge branch 'bugfix/make_tests_noninteractive' into 'master'
make: update template configuration before running tests

This fixes build error for non-interactive builds

See merge request !26
2016-08-25 10:20:48 +08:00
Ivan Grokhotkov
cb6e0b18f1 make: update template configuration before running tests
This fixes build error for non-interactive builds
2016-08-25 10:28:25 +08:00
Ivan Grokhotkov
2cd1da31f9 Merge branch 'bugfix/dram_attr' into 'master'
fix DRAM_ATTR attribute

Variables marked with DRAM_ATTR were not placed in any specific section and were appended to the last section, causing some errors at binary file generation stage.
This change places contents of .dram1 section into .dram0.data.
Also removes .iram1pro/.iram1app/.dram1pro/.dram1app which weren't used anywhere.

See merge request !23
2016-08-25 10:19:17 +08:00
Angus Gratton
700dbca4db newlib locking: Remove lock table, much simpler implementation. 2016-08-24 20:59:02 +08:00
Ivan Grokhotkov
7ba0d90df2 Merge branch 'bugfix/bootloader_incremental_build' into 'master'
Make: fix incremental builds, add build tests

Four semi-related build changes in one:
* Add basic tests for make system sanity (can be expanded as we find corner cases)
* Fix incremental building of bootloader when source files change
* Don't regenerate component libraries or re-link the ELF file if nothing changed
* Rename `$(vecho)` to  `$(summary)` and add a new `$(details)` macro to echo some helpful build details when V=1.


See merge request !20
2016-08-24 20:24:33 +08:00
Jeroen Domburg
accea4718b Merge branch 'feature/openocd-freertos-support_try2' into 'master'
Add symbol needed for OpenOCD to detect FreeRTOS, add feature to break execution, try 2

Add symbol needed for OpenOCD to detect FreeRTOS, add optional feature to break execution when the scheduler is initially started. The workflow is now so that if you start an esp-idf program, you can reset the CPU and end up in a gdb prompt just before all threads start up. In gdb you can then inspect all threads and watch breakpoints. Has the nice side effect that OpenOCD will restore any break/watchpoints that were there before you reset the chip.

This is try 2 because seemingly, someone or something replaced the bit of my brain that is responsible for handling Git with a squeaky toy.

See merge request !24
2016-08-24 20:21:52 +08:00
Jeroen Domburg
95f547025b Undo two empty lines 2016-08-24 18:34:04 +08:00
Jeroen Domburg
b1ad6a16e9 Undo submodule commit 2016-08-24 18:31:37 +08:00
Angus Gratton
f5715ac28d FreeRTOS: Add xQueueGetMutexHolder support
Enables it as a config option, but there's no overhead at all if the
function is not called anywhere.
2016-08-24 18:13:10 +08:00
Angus Gratton
4b281af0f7 newlib locking: Turns out the "hack" is the way to make stdout thread-safe in newlib 2016-08-24 18:13:10 +08:00
Angus Gratton
93c92f7a5b FreeRTOS: Configure configASSERT fail behaviour, abort() by default 2016-08-24 18:13:10 +08:00
Jeroen Domburg
bdf4b27e38 Add symbol needed for OpenOCD to detect FreeRTOS, add feature to break execution when the scheduler is initially started. 2016-08-24 17:32:20 +08:00
Jeroen Domburg
a44c45e63e Add files I forgot (FreeRTOS-openocd.c and panic.h) 2016-08-24 17:30:53 +08:00
Ivan Grokhotkov
9e57466c96 components/esp32: fix DRAM_ATTR attribute
This change places contents of .dram1 section into .dram0.data.
Also removes .iram1pro/.iram1app/.dram1pro/.dram1app which weren't used anywhere.
2016-08-24 17:20:00 +08:00
Ivan Grokhotkov
4d1084120c components/bootloader: fix enabling cache for APP CPU
This is a workaround for a hardware bug with cache initialization.
Only two lines of code related to DPORT_APP_CACHE_MMU_IA_CLR were added around mmu_init(1); call,
and two lines at the end of comment block.
I reformatted surrounding lines to use spaces for indentation, like the rest of the code in this file does.
2016-08-24 16:25:04 +08:00
Ivan Grokhotkov
be112daa71 components/esp32: fix and clean up dual core startup
This change removes various delays in PRO and APP CPU startup paths.
Also some unused code and ets_printf statements are cleaned up or removed.
2nd CPU now communicates that it has started through a global variable.
2016-08-24 16:21:28 +08:00
Angus Gratton
94104f0fe8 Add hack of explicitly locking stdout
This shouldn't be necessary as stdout is already locked by libc (see
comment.) Not sure which part isn't working.
2016-08-24 13:49:17 +08:00
Angus Gratton
bd2f9e03f0 Add newlib libc locking using FreeRTOS primitives 2016-08-24 13:49:17 +08:00
Angus Gratton
9921e60f55 freertos: Change variable name in comment 2016-08-24 13:49:17 +08:00
Angus Gratton
3b508c8b37 esp32 syscalls.c: Use rom/uart.h for uart_tx_one_char prototype 2016-08-24 13:49:17 +08:00
Angus Gratton
a233619429 CI: Pass IDF_PATH to build_system_tests.sh 2016-08-24 13:31:33 +08:00
Jeroen Domburg
29c2e58c75 'Merge branch 'thread_local_storage_delete_callbacks' into 'master'
The thread-local-storage feature in FreeRTOS attaches an application-usable array of pointers to a thread control block. These pointers usually point to a structure the thread allocates. When a thread gets (voluntarily or involuntarily) destroyed, this memory can leak. This merge adds a matching second array of user-settable pointers to destructor routines. As soon as the task gets cleaned up (which happens in the idle thread), the destructors get called and the memory can be freed.

See merge request !19
2016-08-24 13:30:30 +08:00
Angus Gratton
a278c51d3e Make: Building the bootloader depends on syncing its sdkconfig from the top-level project 2016-08-24 13:25:06 +08:00