Commit graph

431 commits

Author SHA1 Message Date
Wangjialin 2be163f6cc add gpio driver code 2016-09-19 17:33:21 +08:00
Ivan Grokhotkov b1ac144874 Merge branch 'driver_merge_tmp/merge_struct_header' into 'master'
add peripheral modules struct headers



See merge request !88
2016-09-19 15:34:37 +08:00
Ivan Grokhotkov ff2750ab07 components/esp32: move peripheral symbols to separate ld script 2016-09-19 15:05:32 +08:00
Jeroen Domburg dfab57cd93 Merge branch 'features/lwip-SO_REUSEADDR' into 'master'
Enable SO_REUSEADDR in LWIP

Daniel initially asked me why this wasn't enabled, and I don't think I got any reasons against enabling this. If any, it makes porting existing software easier. Tuan needs it for UDP multicast as well.

Code changes are by Tuan: basically the enable for SO_REUSEADDR in LWIP as well as a bugfix in a bit of mbedTLS that gets enabled.

See merge request !90
2016-09-19 10:42:35 +08:00
Angus Gratton c2bc965c2c Merge branch 'bugfix/rom_gpio' into 'master'
rom/gpio.h: Use new GPIO_PIN0_REG register name

Closes github #12

See merge request !86
2016-09-19 10:41:34 +08:00
Ivan Grokhotkov 14e003fcf2 components/log: regroup macros for better readability 2016-09-19 08:53:09 +08:00
Ivan Grokhotkov 1188bdfc68 components/log: fix timestamp calculation 2016-09-18 21:06:43 +08:00
Ivan Grokhotkov 26bf85bad6 components/log: set default runtime log level to ESP_LOG_VERBOSE
With this change, it is possible to use LOG_LOCAL_LEVEL to raise debug level for given file/component
2016-09-18 21:01:28 +08:00
Ivan Grokhotkov 3cdefd9923 components/log: fix error when using ESP_LOGx from C++ code 2016-09-18 20:51:57 +08:00
Ivan Grokhotkov 69278b28bf components/log: fix bugs, add options to override log level for files, components, and bootloader 2016-09-18 20:24:31 +08:00
Wangjialin 015ae7e0d0 fix ledc and spi typo 2016-09-18 19:24:43 +08:00
Wangjialin 94bcb14bcc remove prefix and postfix 2016-09-18 19:05:37 +08:00
Jeroen Domburg 4d4c6a3694 Enable SO_REUSEADDR in LWIP 2016-09-18 16:43:48 +08:00
liuzhifu 4c74ec9415 freertos: fix memory debug macro issue
Define configENABLE_MEMORY_DEBUG according to CONFIG_ENABLE_MEMORY_DEBUG
2016-09-18 15:35:42 +08:00
Ivan Grokhotkov 9938f512f3 peripheral structure headers: move volatile keyword from members to typedef 2016-09-18 12:36:33 +08:00
Wangjialin 489b4f31a9 add peripheral module struct headers 2016-09-18 03:14:18 +08:00
Angus Gratton 6cffb5d8b4 rom/gpio.h: Use new GPIO_PIN0_REG register name
Closes github #12
2016-09-16 09:43:52 +10:00
Ivan Grokhotkov b0683b0bb4 components/esp32,bootloader: fix build
esp32: use new register name in cpu_start
bootloader: EXTRA_CFLAGS don't work any more, set global CFLAGS in Makefile.projbuild
2016-09-15 02:37:54 +08:00
Ivan Grokhotkov 90e37d9eda fix whitespace after merge 2016-09-15 02:17:08 +08:00
Ivan Grokhotkov cf22e4445a Merge branch 'master' into feature/logging
* master: (45 commits)
  esp32/lib: update to 1303c92c
  dhcpserver: Fix crash when switching wifi mode
  mbedtls: Temporarily disable default hardware crypto SHA & bignum
  mbedtls hwcrypto sha512: Fix redirection of function names
  mbedtls upstream tweak: Move mbedtls_sha512_process in sha512.h
  Format code by using 4 spaces instead
  modify  character conversion error and typo
  modify i2s_reg.h, rebase to master
  Only modify headers in soc/ . Pass compiling under esp-idf-tests/merge_soc_tmp/merge_for_soc_headers branch.(only change some names of register and INUM).
  Rename vender_ie_type_t and vendor_ie_id_t to wifi_vendor_ie_type_t and wifi_vendor_ie_id_t respectively
  modify arguments for vendor ie APIs by using enum instead
  esp32: fix typo
  esp32: fix kconfig
  define lwip task priority in esp_task.h
  components: esp32 - fix build error
  components: lwip - Modify lwip task priority and stack definition method
  components: esp32
  components: esp32
  components: esp32/lwip
  task priority: modify lwip/wifi/event task priority
  ...

# Conflicts:
#	components/bootloader/src/main/bootloader_start.c
#	components/bootloader/src/main/flash_encrypt.c
#	components/bootloader/src/main/secure_boot.c
#	components/esp32/cpu_start.c
2016-09-15 02:15:50 +08:00
Ivan Grokhotkov 0290a34b55 components/esp32: clean up cpu_start
Move CPU region protection setup into soc/cpu.h
change tabs to spaces
remove unused extern declarations
use RTC_WDTCONFIG0 instead of numeric address (still need to fix BB reg)
2016-09-15 02:03:55 +08:00
Ivan Grokhotkov 716cec5ded components/log: add implementation, update a few components to use it
This also removes logging implementation from bootloader and replaces it
with the one provided by the log component. Some occurrences of printf
and ets_printf have been changed to ESP_LOGx APIs.
2016-09-15 00:53:33 +08:00
Wu Jian Gang 2efaf42253 Merge remote-tracking branch 'origin/feature/mbedtls' 2016-09-14 18:05:56 +08:00
Wu Jian Gang b3e671e725 esp32/lib: update to 3372298f
remove freq change in system_init
2016-09-14 17:54:34 +08:00
Ivan Grokhotkov 066f3358a7 components/esp32: use APB_CLK_FREQ instead of a number 2016-09-14 17:54:34 +08:00
Ivan Grokhotkov 5ab769516d components/esp32: add CPU frequency selection in menuconfig
Note that with WiFi stack enabled, system_init will reset frequency to 240MHz.
To make this setting useful, esp32-wifi-libs submodule needs to be updated.
2016-09-14 17:54:34 +08:00
Wu Jian Gang e04e6b0c7f Merge branch 'feature/wifi_lib_update' into 'master'
esp32/lib: update to 1303c92c

1. support to set vendor ie;
2. fix "mode:" log twice issue; TW7019
3. fix station can not connect to some AP in WEP mode; TW7021

See merge request !85
2016-09-14 17:53:01 +08:00
Wu Jian Gang 8051a8b91e Merge branch 'bugfix/tw7058_mode_fatal' into 'master'
[teamwork7058]It causes fatal when switch wifi mode.



See merge request !84
2016-09-14 17:46:12 +08:00
Wu Jian Gang 6bfe892099 esp32/lib: update to 1303c92c 2016-09-14 16:57:00 +08:00
Wu Jian Gang 6104370ac9 Merge branch 'feature/support_vendor_ie_api' into 'master'
esp32: add vendor ie API

1. add esp_wifi_set_vnd_ie
2. add esp_wifi_set_vnd_ie_cb

See merge request !75
2016-09-14 16:53:53 +08:00
Xu Chun Guang 064d2b4ecb dhcpserver: Fix crash when switching wifi mode
See Teamwork 7058.
2016-09-14 16:14:50 +08:00
Angus Gratton 67a26d52ac mbedtls: Temporarily disable default hardware crypto SHA & bignum
Due to limitations referenced in the comments of the changes.
2016-09-14 17:52:39 +10:00
Angus Gratton f01cabf71d mbedtls hwcrypto sha512: Fix redirection of function names 2016-09-14 17:52:24 +10:00
Angus Gratton 126a68ca1f mbedtls upstream tweak: Move mbedtls_sha512_process in sha512.h
Function declaration should only be included if MBEDTLS_SHA512_ALT is
not set. This matches sha1.h and sha256.h

This change should be contributed back upstream to mbedTLS project.
2016-09-14 17:51:27 +10:00
qiyueixa 56586a10ac Format code by using 4 spaces instead 2016-09-14 15:18:06 +08:00
Wangjialin f32823ff6c modify character conversion error and typo 2016-09-14 13:47:28 +08:00
Wangjialin c13ab62e4c modify i2s_reg.h, rebase to master 2016-09-14 13:47:28 +08:00
Wangjialin 41d397cf3f Only modify headers in soc/ .
Pass compiling under esp-idf-tests/merge_soc_tmp/merge_for_soc_headers branch.(only change some names of register and INUM).
2016-09-14 13:47:28 +08:00
qiyueixa f02e5cdec7 Rename vender_ie_type_t and vendor_ie_id_t to wifi_vendor_ie_type_t and wifi_vendor_ie_id_t respectively 2016-09-14 13:39:30 +08:00
qiyueixa d866fe84a4 modify arguments for vendor ie APIs by using enum instead 2016-09-14 13:39:30 +08:00
Wu Jian Gang 01cc811ee0 esp32: fix typo 2016-09-14 13:26:17 +08:00
Wu Jian Gang c1a874fb9e esp32: fix kconfig 2016-09-14 12:55:41 +08:00
Ivan Grokhotkov 2fc60ba938 Merge branch master into feature/logging
* branch master: (51 commits)
  fix typos
  callback: add a void* pointer with each callback
  header: callbacks use "void *" as arguments
  header: format and fix typos
  add wifi api comments
  add wifi api comments
  components/spi_flash: call SPIUnlock only once
  components/spi_flash: improve comments and readability
  esp32 cpu_start: Include rom/uart.h, remove inline ROM function declarations
  bootloader: Add bootloader Kconfig
  Fix bug where nesting vTaskEnterCritical calls would not re-enable interrupts after vTaskExitCritical sections.
  installed gitlab key in global before_script, don't need to overwrite in template before_script
  ci: Use github repo for wifi libraries on master branch, gitlab repo otherwise
  components/esp32,spi_flash: update some comments
  components/esp32: remove dependency of WIFI_ENABLED on FREERTOS_UNICORE
  esp32/lib: Bump WiFi revision
  update ci: build ssc with idf submodule wifi lib
  components/esp32: add inter-processor call API and implement spi_flash through it
  add MACRO to get flash pad number from efuse value
  add comments to register read/write operations
  ...
2016-09-14 12:19:43 +08:00
liuzhifu d2d231de29 define lwip task priority in esp_task.h 2016-09-14 12:00:46 +08:00
liuzhifu 8ed5010356 components: esp32 - fix build error 2016-09-14 12:00:46 +08:00
liuzhifu 4a98027242 components: lwip - Modify lwip task priority and stack definition method
lwip task priority and stack size defintion should not depends on esp_task.h, define it
in lwipopts.h directly
2016-09-14 12:00:46 +08:00
liuzhifu 2a15eda8bc components: esp32
Remove priority/stack definition of task that is freertos/lwip/app
2016-09-14 12:00:46 +08:00
liuzhifu 109691f9bc components: esp32
add missing file esp_task.h
2016-09-14 12:00:46 +08:00
liuzhifu 9cf997a6fc components: esp32/lwip
Add esp_task.h for placing all task priority/stack size macro definition
2016-09-14 12:00:46 +08:00
liuzhifu 56a684d9eb task priority: modify lwip/wifi/event task priority
1. Modify lwip core task priority to configMAX_PRIORITIES-7
2. Modify wifi startup task priority to configMAX_PRIORITIES-7
3. Modify event task priority to configMAX_PRIORITIES-4
2016-09-14 11:59:25 +08:00
Wu Jian Gang 058a411786 Merge branch 'feature/add_wifi_api_comments' into 'master'
Feature/add wifi api comments

Add wifi API comments


See merge request !63
2016-09-14 11:17:29 +08:00
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
Wu Jian Gang ed8e8848e3 fix typos 2016-09-13 20:54:20 +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 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
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
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
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 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
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 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
Ivan Grokhotkov be4dfed822 Merge branch 'master' into feature/dualcore_spi_flash_api
* master: (130 commits)
  lwip: Define LWIP_ESP8266 in port lwipopts.h not gcc command line
  CI: Build the esp-idf-template with the matching branch name, if it exists
  README: Add Resources section with some links
  Rename README.buildenv to docs/build_system.rst and ReST-ify it
  Eclipse docs: Easier to just replace entire PATH, msys32 has everything we need to build/flash
  test_build_system: Print ESP_IDF_TEMPLATE_GIT for easier debugging
  Name component makefiles component.mk instead of Makefile
  Eclipse doc: Add troubleshooting note about Makefile directories
  eclipse_make.sh: Fix printing of make directory
  Move bin/eclipse_windows_make.sh to tools/windows_eclipse_make.sh
  Eclipse docs: Prepend IDF paths to beginning of PATH
  Set default SPI flash access mode to DIO
  FreeRTOS: temporary solution for memory canaries and memory debug
  tcpip_adapter: fix dhcp client work flow
  event: not post got ip event if static is invalid
  tcpip_adapter: typedef clean up
  event: post got ip event when use static ip
  tcpip_adapter: use dhcp callback to post got ip event
  dhcp: add dhcp callback
  lwip: remove netif_reg_addr_change_cb
  ...
2016-09-09 17:14:16 +08:00
liuhan 47db66e495 esp32: modify realloc behaves just like malloc when pass a null pointer for ptr. 2016-09-09 15:06:56 +10:00
Angus Gratton 46a9754b8e hwcrypto sha: Fix initialisation of SHA hardware in esp_shaX_start functions
Problem exposed by previous commit.
2016-09-09 14:27:53 +10:00
Angus Gratton eb47a25012 mbedtls: Revert changes to upstream library sources.
This reverts part of commit 0f83831c74.
2016-09-09 14:10:44 +10:00
Angus Gratton 6f006c25fb json & expat: Update component.mk after merging from master 2016-09-09 14:07:45 +10:00
Angus Gratton 264b115eb0 mbedtls: Move esp_config.h file to port directory 2016-09-09 14:06:14 +10:00
Angus Gratton 1d355b93df lwip: Define LWIP_ESP8266 in port lwipopts.h not gcc command line 2016-09-09 13:53:38 +10:00
Angus Gratton a939c15723 mbedtls networking: Remove WIN32 parts, minor cleanup 2016-09-09 11:24:35 +10:00
Angus Gratton 7c58c1e06b Build system: Allow components to add to the global CFLAGS via Makefile.projbuild
Used by mbedTLS to set MBEDTLS_CONFIG_FILE in all components.

This change sets CFLAGS/etc at the project level and then exports those
variables for components, rather than setting them independently each time
a component Makefile is invoked.
2016-09-09 11:08:19 +10:00
Angus Gratton 31e6b2cdb4 Merge branch 'master' into feature/mbedtls 2016-09-09 10:29:19 +10:00
Angus Gratton add32cbc9a Merge branch 'bugfix/docs_eclipse' into 'master'
Eclipse fixes, including renaming component Makefiles to component.mk

Some changes after following up some Eclipse problems with @nilay .

Biggest thing is renaming all component Makefiles to component.mk. This requires changes to all esp-idf projects, ie:
* https://github.com/espressif/esp-idf-template/compare/bugfix/docs_eclipse?expand=1
* http://gitlab.espressif.cn/idf/esp-idf-tests/tree/update/component_makefiles

... this fixes Eclipse weirdness and also means the only "Makefile"s in the project are the ones you should run make against.

If this MR is merged then I'll also merge these, email all developers about the breaking change and post on esp32.com.

See merge request !34
2016-09-09 07:41:32 +08:00
Ivan Grokhotkov 7268f0a60a components/log: add API header for logging library
TW6703
2016-09-08 20:02:26 +08:00
Wu Jian Gang 95defc7d32 mbedtls: Use hardware accelerated AES, SHA, bignum 2016-09-08 17:41:43 +08:00
Angus Gratton 2211759cc0 hwcrypto aes: Fix bugs w/ ECB decrypt, CFB modes 2016-09-08 17:02:52 +08:00
Jeroen Domburg 99b64c82d1 Merge branch 'bugfix/default_dio_spiflashmode' into 'master'
Set default SPI flash access mode to DIO

We have a bunch of boards out there (the NodeMCU-lookalike, breadboardable boards) in the hands of early reviewers. Because the flash chips on these boards have a different command to go into QIO mode, ESP-IDF will break on these boards out of the box. Eventually, we need some nifty way to autodetect this or something, but for now, the quick fix is to make DIO the default access mode.

Once this is merged, I will also modify the default in the template apps sdkconfig.

See merge request !65
2016-09-08 16:58:34 +08:00
Angus Gratton d951ab2661 hwcrypto aes: Performance tweak, only write key to hardware once
Shaves ~10% off time to compute AES-CBC
2016-09-08 16:47:37 +08:00
Angus Gratton a32e954f67 hwcrypto sha: Feed one block at a time to hardware SHA implementation
Fixes a bug where some longer block sizes produced incorrect results.
2016-09-08 16:47:34 +08:00
Angus Gratton 0a970e3a25 hwcrypto: Match API completely to mbedTLS naming conventions 2016-09-08 16:47:31 +08:00
Angus Gratton 2580c07ae6 esp32 hwcrypto: Make SHA-224 an obvious no-op for now
This is not the long term solution...
2016-09-08 16:47:28 +08:00
Angus Gratton 2bee84062a esp32: Add comment to ROM crypto functions recommending they not be used directly 2016-09-08 16:47:24 +08:00
Angus Gratton 0647d1e922 esp32 hwcrypto: Rework hardware crypto locking
Should protect against concurrent use of hardware crypto primitives,
with good performance.

Not necessary to call esp_aes_acquire_hardware(),
esp_sha_acquire_hardware(), etc when using these APIs. These are
provided for external users calling the hardware crypto hardware
directly, to coexist with this implementation.
2016-09-08 16:47:13 +08:00
Angus Gratton 4167b68eef esp32: Move hardware crypto implementation/headers to hwcrypto directories 2016-09-08 16:46:28 +08:00
Wu Jian Gang fc2bfc1f49 mbedtls: just format related files
method from !46
2016-09-08 16:46:25 +08:00
liuhan f4ff32977d components/mbedtls: modify MBEDTLS net feature
modify get the connection's 'errno' info by calling getsockopt function.
2016-09-08 16:46:21 +08:00
Angus Gratton 09aa6ebc85 lwip Makefile: Add POSIX headers to include path to #include <sys/sockets.h>, etc, works. 2016-09-08 16:45:57 +08:00
liuhan 1900c50d3b components/mbedtls: modify hardware encryption feature
rename "flag" and "keybites" in aes file,
rename "xxx_starts" and add license in sha file.
2016-09-08 16:45:51 +08:00
liuhan 2d80fada70 components/mbedtls: MBEDTLS Handshake result check
modify esp_config.h add some feature for support http2.0 protocol, TLS Handshake OK.
2016-09-08 16:45:44 +08:00
liuhan 0f83831c74 1. multi thread verify bignum AES and SHA 2016-09-08 16:45:23 +08:00
liuhan 98021903a2 recompile crypto and bignum function 2016-09-08 16:45:16 +08:00
liuhan d9b660f6d4 1. add lock function for every function
2. modify some function for crypto
2016-09-08 16:44:58 +08:00
liuhan 30be5f6eb5 [t6001]: chip Use hardware acceleration of Encryption 2016-09-08 16:44:53 +08:00
Angus Gratton 3b1c3dab4b Name component makefiles component.mk instead of Makefile
Fixes problems with Eclipse trying to build in directories it shouldn't.

This is a breaking change for existing repositories, they need to rename
any component Makefiles to component.mk and rename their references to
$(IDF_PATH)/make/component.mk to $(IDF_PATH)/make/component_common.mk
2016-09-08 13:41:19 +10:00
Angus Gratton 42357990aa Merge branch 'feature/mbedtls_upstream_source' into 'master'
Add mbedtls release version 2.3.0



See merge request !56
2016-09-08 11:32:02 +08:00
Angus Gratton e9b73e5c0d Merge branch 'feature/memory_canaries_temp' into 'master'
FreeRTOS: temporary solution for memory canaries and memory debug

1. This is just a temporary solution, it will be removed when umm_malloc is ready
2. Support memory canaries mechanism
2. Add debug code to show allocated memory info

See merge request !64
2016-09-08 11:20:17 +08:00
Jeroen Domburg 5a0e374a46 Set default SPI flash access mode to DIO 2016-09-08 10:22:15 +08:00
Wu Jian Gang 28ca0b0526 Merge branch 'bugfix/got_ip_event' into 'master'
tcpip_adapter: got ip event stuff

Include:
1. add dhcp callback;
2. post got ip event in dhcp callback when dhcp bind;
3. tcpip_adapter typedef clean;
4. post got ip event in station connected event handler when use valid static ip;

TW6926

See merge request !61
2016-09-08 09:44:48 +08:00
liuzhifu b21d2dfa6b FreeRTOS: temporary solution for memory canaries and memory debug
1. This is just a temporary solution, it will be removed when umm_malloc is ready
2. Support memory canaries mechanism
2. Add debug code to show allocated memory info
2016-09-07 21:52:24 +08:00
Angus Gratton 1a6e63feef Merge branch 'feature/config_spi_flash_params_menuconfig' into 'master'
Feature/config spi flash params menuconfig

Simple menuconfig option for flash speed and access mode.

See merge request !59
2016-09-07 10:16:59 +08:00
Wu Jian Gang c97aa4a709 tcpip_adapter: fix dhcp client work flow 2016-09-06 19:36:03 +08:00
Wu Jian Gang 80d60270bb event: not post got ip event if static is invalid 2016-09-06 19:36:03 +08:00
Wu Jian Gang df53d1588a tcpip_adapter: typedef clean up 2016-09-06 19:36:03 +08:00
Wu Jian Gang 1588d1aa6e event: post got ip event when use static ip
TW6926
2016-09-06 19:32:34 +08:00
Wu Jian Gang c3af6e51d7 tcpip_adapter: use dhcp callback to post got ip event 2016-09-06 19:32:34 +08:00
Wu Jian Gang 3cf377b06e dhcp: add dhcp callback
The callback has no parameter now.
TODO: add a parameter to show dhcp status if needed.
2016-09-06 19:32:33 +08:00
Wu Jian Gang ef23607a67 lwip: remove netif_reg_addr_change_cb 2016-09-06 19:32:33 +08:00
xiaxiaotian 43d441d0f4 Change the type of authmode 2016-09-06 16:47:03 +08:00
xiaxiaotian 8622fda764 Change the type of authmode 2016-09-06 16:47:03 +08:00
xiaxiaotian 035a48f102 Post station's auth mode event after it is connected to AP. 2016-09-06 16:47:02 +08:00
xiaxiaotian c764683542 Add get station auth mode 2016-09-06 16:47:02 +08:00
Jeroen Domburg 669e85758c Add flash freq selection to menuconfig 2016-09-06 14:24:28 +08:00
Jeroen Domburg 4272996ebe Add QIO/QOUT/DIO/DOUT select for esptool.py 2016-09-06 14:24:14 +08:00
Angus Gratton fe53b96634 Merge feature/lwip_sntp into feature/lwip_sntp_master 2016-09-06 11:49:06 +10:00
Angus Gratton b8fc0c9511 FreeRTOS thread local storage config: If using WiFi this must be >0 2016-09-06 11:15:28 +10:00
Angus Gratton 4fb3f2c27e mbedtls: Fix component Makefile 2016-09-05 15:08:30 +10:00
Wu Jian Gang ef91702100 Add mbedtls release version 2.3.0 2016-09-05 12:03:39 +10:00
Angus Gratton 166d876d90 Temporarily restrict WiFi stack to only run in single core more
See github #6.
2016-09-05 12:02:11 +10:00
Angus Gratton 587f90929c Minor comment cleanup 2016-09-05 11:50:53 +10:00
Angus Gratton 44ef108fd8 Bump WiFi libraries to latest 2016-09-05 10:54:43 +10:00
Angus Gratton 412fbffeae Makefiles: Fix case where updating the WiFi libraries directory didn't trigger a re-link 2016-09-05 10:49:12 +10:00
Angus Gratton cb6bd109f2 Merge wifi commit '87977b92f3e12cfca74cf2e4dea87dc8d60b26fc' into feature/wifi-stage-two 2016-09-05 10:42:17 +10:00
Wu Jian Gang 25e1a7bf1a sntp: fix author name 2016-09-02 16:26:06 +08:00
Angus Gratton 66956dbb7c Update WiFi library version.
This version compiles but does not startup with WiFi component enabled.
2016-09-02 11:59:21 +10:00
Angus Gratton 314dbc0b61 Minor comment cleanup
Remove old commented code, etc.
2016-09-02 11:33:53 +10:00
Angus Gratton be77601098 tcpip_adapter: Fix typo STOPED->STOPPED 2016-09-02 11:29:27 +10:00
liuzhifu dddb9ace2e components: esp32
remove debug info in event.c/wifi.c
2016-09-02 11:16:37 +10:00
Angus Gratton 2f54d0e425 Merge wifi branch commit '588d384393536a040f899b382890316c56061b6a' into feature/wifi-stage-one 2016-09-02 11:14:27 +10:00
liuhan 37d817b6f9 components/lwip: modify sntp function
delete sntp_time.c file, move sntp head file.
2016-09-01 19:56:51 +08:00
liuhan 1e3f9fbda3 components/lwip/apps/sntp: modify SNTP function feature
modify makefile for compile SNTP function in lwip, see sntp file.
2016-09-01 19:22:36 +08:00
liuhan 380f5635b6 components/lwip: add SNTP function feature
Develop and Compile SNTP function based on LWIP core code, see lwip/apps/sntp file.
2016-09-01 19:22:36 +08:00
Wu Jian Gang 87977b92f3 lwip: format dhcpserver.c 2016-09-01 19:05:50 +08:00
liuhan f5df40e2d1 lwip: fix a mistake in parse_msg of dhcpserver.c
TW6872
2016-09-01 18:13:58 +08:00
Wu Jian Gang 7ee4ec0d18 Merge branch 'bugfix/adapter_dhcp' into 'wifi'
Fix adapter dhcp

Fix some bugs when call adapter dhcpc/s API to test dhcp start/stop, from QA, TW6803 & TW6804.

See merge request !45
2016-09-01 17:19:28 +08:00
Angus Gratton 96852d49c2 Load esptool.py from submodule, currently WIP esptool.py v2.0
More details at https://github.com/themadinventor/esptool/pull/121
2016-09-01 18:45:10 +10:00
Angus Gratton d793d23b94 Remove bin/ directory in favour of an add_path.sh script that can be sourced
Remaining file in bin/ will be moved out as part of !34
2016-09-01 18:45:10 +10:00
Angus Gratton fb87346864 Merge branch 'feature/newlib_locking' into 'master'
newlib locking support

Has matching tests here: http://gitlab.espressif.cn/idf/esp-idf-tests/commits/feature/newlib_locking_tests

This is ready, the "bug" I saw was me not understanding how newlib stream locking works (I still don't understand why it works like it does, but that's less important for now.)

See merge request !17
2016-09-01 16:17:22 +08:00
liuzhifu 1e9fc9f8f1 components: lwip - modify HEAP_HIGHWAT from 6K to 20K
Since esp32 has much more memory than esp31B, modify the HEAP_HIGHWAT from
6K to 20K.
Notes: HEAP_HIGHWAT is used for tcp/udp tx flow control, if socket task detects
that the free heap memory is less than HEAP_HIGHWAT, it stops to trasmitting until
the free heap memory is greater than HEAP_HIGHWAT
2016-09-01 15:17:50 +08:00
Wu Jian Gang 861a976eee tcpip_adapter: fix a typo 2016-09-01 15:11:23 +08:00
xiaxiaotian 869fe1647d WIFI API: esp_err_t esp_wifi_set_storage(wifi_storage_t storage);
1. Add the parameter type of api esp_wifi_set_storage.
2. WIFI_STORAGE_RAM means storing profiles in ram. WIFI_STORAGE_FLASH means storing profiles in flash.
2016-09-01 15:09:00 +08:00
Angus Gratton 6367268f99 Merge branch 'bugfix/md5_rom_header_types' into 'master'
md5_hash.h: Replace outdated use of c_types.h with stdint



See merge request !44
2016-09-01 11:22:22 +08:00
Wu Jian Gang e2b4421629 tcpip_adapter: fix a mistake in tcpip_adapter_dhcpc_stop
TW6803
2016-09-01 10:44:09 +08:00
Wu Jian Gang a19b03611c tcpip_adapter: adjust some function sequence, fix ip info log 2016-09-01 10:44:08 +08:00
Wu Jian Gang 7a13eda78f tcpip_adapter: modify dhcpc status, fix static ip issue
TW6804 supplement
2016-09-01 10:44:08 +08:00
Wu Jian Gang 7bea025b56 tcpip_adapter: not allow to set ip if dhcpc/s not stoped
TW6804
2016-09-01 10:44:08 +08:00
Angus Gratton a825fe8703 md5_hash.h: Replace outdated use of c_types.h with stdint 2016-09-01 08:58:29 +10:00
Wu Jian Gang b56ca86571 wifi_lib: update to fbb084da 2016-08-31 23:25:29 +08:00
Jeroen Domburg 0f42f017e2 Merge branch 'bugfix/ocd_stop_on_unhandled_exception' into 'master'
Fix: Return after setting breakpoint when ocd is detected instead of continuing …

…into the panic routine

Made a small thinko when refactoring the panic handler code. This fixes it.

See merge request !36
2016-08-31 12:15:04 +08:00
xiaxiaotian 8fe9347de2 Merge branch 'wifi' of ssh://gitlab.espressif.cn:27227/idf/esp-idf into wifi 2016-08-30 18:10:30 +08:00
xiaxiaotian e6d45cc91f 1. Add api ssc cmd "ap -K -a aid" to kick out connected station.
The parameter aid followed -a is aid of the connected station. If aid is 0, kick out all of the connected stations.
2. Add block parameter to api esp_wifi_scan_start.
   If block is true, the api blocks before scan done or returns directly.
2016-08-30 18:09:48 +08:00
liuzhifu 77caf256c6 components: lwip - enable PERF macro for debug reason 2016-08-30 18:06:37 +08:00
liuzhifu 68bc7b4476 set sta gotip default event handler 2016-08-30 18:05:32 +08:00
liuzhifu 5068ff2be8 TW6785 - add sta auto connect api 2016-08-30 18:04:22 +08:00
Jeroen Domburg c6394ed2ce Fix: Return after setting breakpoint when ocd is detected instead of continuing into the panic routine 2016-08-30 17:55:20 +08:00
liuzhifu a68ad74459 components:esp32 - notify wifi driver when sta got ip 2016-08-30 14:04:12 +08:00
Liu Han 13022ceff6 Merge branch 'feature/json' into 'master'
components/json: add JSON parse feature

Develop and Compile JSON Parse function, can test by running list,  see test_json file.

See merge request !33
2016-08-30 13:54:16 +08:00
Liu Han f9bf9b3269 Merge branch 'feature/expat' into 'master'
components/expat: add XML parse feature

Develop and Compile XML Parse based on XMPP protocol, can test from unity running list, see expat file.

See merge request !32
2016-08-30 13:52:51 +08:00
liuzhifu e23a012dac components: lwip - adjust ip print 2016-08-30 13:52:44 +08:00
liuzhifu f94a7a4d20 components: esp32 - notify wifi when got sta ip 2016-08-30 13:51:41 +08:00
liuzhifu c144feb2dd remove unnecessary print in sys_arch.c 2016-08-30 09:48:08 +08:00
Wu Jian Gang 23cc3c0f90 components/lwip: use newlib errno 2016-08-29 15:35:44 +08:00
liuzhifu bae976ae0e components:lwip
disable debug info of lwip
2016-08-29 14:32:38 +08:00
rudi ;-) fa310016dd Update aes.h
found small mistake in it

we have:

PROVIDE ( ets_aes_crypt = 0x4005c9b8 );
PROVIDE ( ets_aes_disable = 0x4005c8f8 );
PROVIDE ( ets_aes_enable = 0x4005c8cc );
PROVIDE ( ets_aes_set_endian = 0x4005c928 );
PROVIDE ( ets_aes_setkey_dec = 0x4005c994 );
PROVIDE ( ets_aes_setkey_enc = 0x4005c97c );

Signed-off-by: Ivan Grokhotkov <ivan@espressif.com>
2016-08-27 22:17:23 +08:00
liuzhifu be87f38532 rename wifi_set_promiscuous_rx_cb wifi esp_wifi_set_promiscuous_rx_cb 2016-08-27 18:10:01 +08:00
Wu Jian Gang f31ba138e1 Merge remote-tracking branch 'origin/bugfix/TW6738' into wifi 2016-08-26 19:06:39 +08:00
Wu Jian Gang 588d384393 tcpip_adpater: set ip to zero in tcpip_adapter_down
In some cases, there will have "ip unchanged", and have no event posted
when station reconnected.
2016-08-26 19:06:38 +08:00
liuzhifu c65030b8ab disable log info in tcpip_adapter layer 2016-08-26 19:06:38 +08:00
Wu Jian Gang 7d0c139fdc tcpip_adapter: code clean up 2016-08-26 19:06:38 +08:00
Wu Jian Gang cb33a0fb9b tcpip_adapter: clean up dhcpc status
only auto start dhcpc in init status
2016-08-26 19:06:38 +08:00
liuzhifu ee8a0079bd components: esp32
remove debug info in event.c/wifi.c
2016-08-26 19:06:38 +08:00
liuhan 62c891735b recompile DHCP server function
modify DHCP data parameter type in calling DHCP interface.
2016-08-26 19:06:38 +08:00
Wu Jian Gang f81535a840 system api: clean unsupported system apis 2016-08-26 19:06:38 +08:00