Commit Graph

27989 Commits

Author SHA1 Message Date
Ivan Grokhotkov
0ed64da963 console: initialize buf_size before calling open_memstream
POSIX open_memstream documentation [1] does not mention that it may use
the  value supplied in buf_size before the call.
newlib implementation of open_memstream does use it as a hint of the
buffer size [2]. To avoid using potential garbage in this variable,
newlib caps the size to 64kB (!).

If the allocation of this initial buffer fails, NULL file pointer is
returned. Previous code did not check returned file pointer and crashed
when it was used.

Initialize size to zero (in which case newlib allocates a 64 byte
buffer), and check the returned file pointer.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/functions/open_memstream.html
[2] https://github.com/espressif/newlib-esp32/blob/23c0f21/newlib/libc/stdio/open_memstream.c#L26-L29
    https://github.com/espressif/newlib-esp32/blob/23c0f21/newlib/libc/stdio/open_memstream.c#L324-L336
2017-08-23 01:10:30 +08:00
Ivan Grokhotkov
2861f3e88e Merge branch 'bugfix/spi_dma_align' into 'master'
fix(spi_dma): fix the receive error with RX DMA start with non-aligned address.

See merge request !1112
2017-08-22 23:39:53 +08:00
Wangjialin
842caaab21 driver(touch): fix bug and add more features
1. add sens_struct.h
2. add definition of RTCCNTL and RTCIO
3. modify touch pad examples
4. update example code.
5. add comments add option in menuconfig
6. fix issue that pad index 8 and 9 are mismatched
7. add touch_pad_read_filtered() api to get value filtered by iir filter
8. modify touch pad isr func
9. Make the items in perihperal.ld in the sequence of address
10. delete Kconfig for touch pad
11. add touchpad filter APIs to adjust the filter
12. add touch_pad into index.rst
13. add touch_pad in Doxyfile
14. add touch_pad.rst
2017-08-22 21:21:39 +08:00
houchenyao
cf64c7e9a6 unit test: add sd env and spi env for sdmmc 2017-08-22 21:01:34 +08:00
zhangyanjiao
61f64e38d9 assert when close a connecting socket 2017-08-22 20:36:35 +08:00
Ivan Grokhotkov
6f52cf0f9d Merge branch 'bugfix/ci_fix_getting_sources' into 'master'
CI: Fix the spell for more reliable getting the sources

See merge request !1127
2017-08-22 20:03:12 +08:00
Ivan Grokhotkov
4f4808445f Merge branch 'feature/sdmmc_highspeed_mode' into 'master'
SDMMC: add support for high-speed mode

See merge request !1108
2017-08-22 19:31:10 +08:00
Ivan Grokhotkov
0532d37373 Merge branch 'feature/esptool-v2.1' into 'master'
esptool: Update to v2.1 final release

See merge request !1131
2017-08-22 19:30:48 +08:00
Ivan Grokhotkov
4781f806f4 Merge branch 'feature/kconfig_options_doc' into 'master'
Generate documentation for Kconfig options

See merge request !1128
2017-08-22 19:30:31 +08:00
baohongde
593fbe6d8d updata gatt read by type response bug 2017-08-22 18:11:01 +08:00
xiewenxiang
46e7570dcd component/bt: add example for ble spp server
- the first characteristic is used to receive data from client.
 - the second characteristic is used to notify data to client.
 - the third characteristic is used to receive command from client, user
   can add code to process the command.
 - the fourth characteristic is used to notify status to client.
 - the fifth characteristic is used to keep ble connection
2017-08-22 16:56:20 +08:00
Jiang Jiang Jian
642117a37f Merge branch 'bugfix/btdm_optimize_gatt_server_demo' into 'master'
component/bt: optimize gatt server demo

See merge request !1040
2017-08-22 16:30:08 +08:00
Jiang Jiang Jian
2e7d2b3ece Merge branch 'bugfix/btdm_modify_gatt_client_demo' into 'master'
component/bt: optimize gatt_client demo

See merge request !1039
2017-08-22 16:29:48 +08:00
Amey Inamdar
a2dcf7faa8 nvs: Support for handling multiple NVS partitions
This commit adds support for multiple NVS partitions. This provides application a flexibility to have multiple NVS
partitions such as separate partition with read-only manufacturing data and read-write partition with configuration.
Application can also use this to separate out application's configuration storage from system configuration.

This feature does not change any of the basic property of NVS subsystem. The same-named namespaces across partitions are
considered to be different namespaces. The original NVS API available for the applications remains unchanged. The only
difference is that instead of first NVS partition in the partition table, it now operates on the partition with label
"nvs" (which is default in the IDF provided partition table files). Additional APIs are provided to open a handle and
erase NVS with partition name as a parameter.

A test case is added in the host tests and it is made sure that all the host tests pass. nvs_rw_value app is also tested
with multiple partitions.

Signed-off-by: Amey Inamdar <amey.inamdar@gmail.com>
2017-08-22 13:48:14 +05:30
Amey Inamdar
3e4e4dd07a nvs_flash: Reduced visibility of handle counter
Monotonically increasing handle counter need not be visible outside the HandleEntry class.

Signed-off-by: Amey Inamdar <amey.inamdar@gmail.com>
2017-08-22 12:58:56 +05:30
Ivan Grokhotkov
908f94c8e9 docs: wifi: use list instead of nested table
Latex backend does not support nested tables, which caused documentation
build to fail on readthedocs.
2017-08-22 15:12:35 +08:00
Ivan Grokhotkov
08e787dc4d mbedtls: remove duplicate Kconfig options 2017-08-22 15:12:35 +08:00
Ivan Grokhotkov
430cf3e9b3 docs: link to Kconfig options documentation 2017-08-22 15:12:35 +08:00
Ivan Grokhotkov
a2f4f2999d docs: generate documentation for Kconfig options
This adds a simple script which parses Kconfig files using Kconfiglib
and emits ReST document with the list of all options. For each option
a link target is generated, to make it possible to link to any Kconfig
option from the rest of the documentation.
Since Kconfiglib is not on PyPI, the latest version (45f87b9d) is
bundled into the docs directory.
2017-08-22 15:12:34 +08:00
zhiweijian
6fa06c4646 Component/bt: optimize gatt server demo 2017-08-22 14:48:01 +08:00
zhiweijian
2e6835e90c Component/bt: optimize gatt_client demo 2017-08-22 14:40:12 +08:00
Ivan Grokhotkov
fb43948413 Update several Kconfig files to make help texts compatible with ReST 2017-08-22 14:34:19 +08:00
zhiweijian
974cff4773 Component/bt: fixbug_set_rand_addr()
- The two most significant bits of the address shall be equal to 1
- All bits of the random part of the address shall not be equal to 1
- All bits of the random part of the address shall not be equal to 0
2017-08-22 14:25:10 +08:00
Jiang Jiang Jian
9b18625d29 Merge branch 'bugfix/memory_leak_when_run_wpa2' into 'master'
wpa2: fix memory leak when run wpa2

See merge request !1126
2017-08-22 14:18:17 +08:00
Jiang Jiang Jian
9f24f06a65 Merge branch 'bugfix/btdm_security_section_remove_bug' into 'master'
component/bt: Change the remove section error &&  SMP_INCLUDE marco

See merge request !1133
2017-08-22 14:13:29 +08:00
Jiang Jiang Jian
43f3c59f81 Merge branch 'feature/btdm_add_multiple_connections_demo' into 'master'
component/bt : add gattc multiple connect demo

See merge request !1027
2017-08-22 14:12:33 +08:00
Jiang Jiang Jian
5c3f2bdd00 Merge branch 'feature/btdm_add_gatt_security_client_demo' into 'master'
component/bt: add gatt_security_client demo

See merge request !1049
2017-08-22 11:59:42 +08:00
Jiang Jiang Jian
b0188b3f29 Merge branch 'bugfix/btdm_add_check_value_length_for_gatts_get_attribute_value' into 'master'
component/bt: add check value and length for esp_ble_gatts_get_attr_value(uint16…

See merge request !1110
2017-08-22 11:37:56 +08:00
Yulong
71d35c7770 component/bt: Change the remove section error. 2017-08-21 23:28:45 -04:00
Angus Gratton
581aa57a05 nghttp: Restore nghttp2 v1.24
We had already updated to v1.24 months ago, but the submodule commit was accidentally
reverted in 1fb85b494c.

Fixes (again) error when compiling with assertions disabled.

As reported on forum: https://esp32.com/viewtopic.php?f=13&t=2750&p=13069
2017-08-22 13:01:36 +10:00
Deng Xin
d739e6bf05 WPA2:Fix the issue memory leak when run wifi enterprise
fix the issue memory leak when run wpa2
2017-08-22 10:49:31 +08:00
Angus Gratton
d6c3fb52c8 esptool: Update to v2.1 final release
Replaces v2.1-beta1 release.

Compared to beta, fixes issues with espefuse.py not prompting correctly on Windows (TW11139).
2017-08-22 11:49:07 +10:00
michael
4c9754726f fix(spi_master): fix the command field to make it more intuitive to use. 2017-08-21 20:37:57 +08:00
Jiang Jiang Jian
fc85cb683d Merge branch 'feature/wifi_and_ip_event_process_refactor' into 'master'
Feature/wifi and ip event process refactor

See merge request !986
2017-08-21 19:49:30 +08:00
Jiang Jiang Jian
5c9d9ae696 Merge branch 'bugfix/btdm_smp_invalid_key_size' into 'master'
component/bt: Change the SMP key size analyzing conditions.

See merge request !958
2017-08-21 19:38:15 +08:00
Jiang Jiang Jian
44e9be5d83 Merge branch 'bugfix/btdm_cherry_pick_api_manage_pair_info_#13119' into 'master'
component/bt: cherry-pick the bugfix/btdm_api_manage_pair_info_#13119 to this branch.

See merge request !1095
2017-08-21 19:37:15 +08:00
Yulong
202c5783db component/bt:squash the 2 commits.
component/bt: cherry-pick the bugfix/btdm_api_manage_pair_info_#13119 to this branch.

component/bt: Change the ble gap API code format & added the status judgment in the btc_storage_load_bonded_ble_devices function.
2017-08-21 06:17:21 -04:00
Yulong
c5ea00c727 component/bt: Change the debug info. 2017-08-21 17:49:05 +08:00
Yulong
eebc2e2df1 component/bt: Change the btm ble security key size range. 2017-08-21 17:49:05 +08:00
Yulong
677f58577f component/bt: Change the SMP key size analyzing conditions. 2017-08-21 17:49:05 +08:00
Ivan Grokhotkov
195a5f977b Merge branch 'feature/console' into 'master'
Console component and example

See merge request !1114
2017-08-21 17:33:31 +08:00
Ivan Grokhotkov
abe9516fdc newlib: implement usleep 2017-08-21 15:58:28 +08:00
Ivan Grokhotkov
10f0543080 console: add support for terminal probing and dumb terminal mode 2017-08-21 15:58:28 +08:00
Ivan Grokhotkov
1e4587a09f vfs: implement fcntl via VFS interface 2017-08-21 15:58:28 +08:00
Ivan Grokhotkov
141b1174c6 idf_monitor: send CR when ENTER is pressed
Other terminal emulators (screen, minicom) default to sending CR when
ENTER is pressed on the keyboard. Make behavior of idf_monitor
consistent with them.
2017-08-21 15:58:28 +08:00
Ivan Grokhotkov
d7d6f1e376 idf_monitor: use cancellation and Console.getkey from pyserial 3.3.0+
Between 3.1.0 and 3.3.0, pyserial had thread cancellation implemented
using a select, which blocked on the stdin and an auxiliary pipe. When
thread had to be cancelled, a byte would be sent into the pipe,
unblocking stdin.

Unfortunately, this method suffers from a problem with using select on
a StreamReader (which represents the decoder wrapped around stdin).
In some cases, when the TTY sends an escape sequence in response to
an escape sequence received from serial, this escape sequence will not
be read from stdin until some key is pressed.

In https://github.com/pyserial/pyserial/commit/cab3dab, this method
was replaced with an TIOCSTI ioctl. This change makes sure we use the
new cancellation method even if the script is running with older
pyserial.
2017-08-21 15:58:28 +08:00
Ivan Grokhotkov
489c523870 vfs: support for blocking reads, more newline conversion options
Previously VFS driver for UART could only use simple non-blocking
functions to read from and write to the UART. UART driver provides more
complex blocking and interrupt-driven functions, which can be used
instead.
This commit adds optional support for using UART driver's functions.

Also added is a more flexible mechanism for configuring newline
conversion rules on input and output.

This commit also fixes a bug that all UARTs shared one static variable
used as a character buffer in newline conversion code. This variable is
changed to be per-UART.
2017-08-21 15:58:28 +08:00
Ivan Grokhotkov
a8075ea140 console/argtable3: expose arg_print_formatted function 2017-08-21 15:58:28 +08:00
Ivan Grokhotkov
160f842d35 console/argtable3: fix usage of char as argument to ctype functions 2017-08-21 15:58:27 +08:00
Ivan Grokhotkov
5de7c91a54 add console component and example 2017-08-21 15:58:27 +08:00