Jiacheng Guo
f20fb57871
vfs: fix select return value when non-permanent fd closed
2021-08-16 10:49:31 +08:00
Alex Henrie
d4ff9ab266
Fix memory leak on error path in register_select
...
And remove dead error handling code from unregister_select.
Closes https://github.com/espressif/esp-idf/pull/7296
2021-07-23 17:49:34 +05:30
Marius Vikhammer
a29a6ceef0
uart: update register headers and examples for S3
2021-07-22 12:05:49 +08:00
Renz Bagaporo
7c22cccb9c
esp32: cleanup build script
2021-07-16 20:14:27 +08:00
Cao Sen Miao
3aa9ac2469
usb_serial_jtag: Add blocking driver to support vfs.
2021-07-05 11:22:38 +08:00
Shu Chen
6fce2930d0
esp32h2: enable more components to support esp32h2
...
Involved components:
* app_trace
* esp-tls
* esp_adc_cal
* esp_pm
* esp_serial_slave_link
* esp_timer
* freertos
* idf_test
* log
* mbedtls
* newlib
* perfmon
* spi_flash
* spiffs
* ulp
* unity
* vfs
2021-07-01 19:53:11 +08:00
Jeroen Domburg
2c75f63f89
* ets_delay_us(1) has too much overhead; change logic
...
* Fix MR comments
2021-04-28 16:38:24 +08:00
Jiacheng Guo
bbb0e7a573
vfs: fix build & ci errors
2021-04-15 15:19:00 +08:00
Jiacheng Guo
0d986de363
vfs: add default initializer for vfs_eventfd
2021-04-15 15:19:00 +08:00
Jiacheng Guo
40035edcac
vfs: add doc links
2021-04-15 15:19:00 +08:00
Jiacheng Guo
7c64d1530a
vfs: modify copyright header
2021-04-15 15:18:59 +08:00
Jiacheng Guo
37a992bbde
vfs: add example for eventfd
2021-04-15 15:18:59 +08:00
Jiacheng Guo
7b911e4641
vfs: add support for mutiple selects in eventfd
2021-04-15 15:18:59 +08:00
Jiacheng Guo
30e9345bc7
vfs: add unit tests for eventfd
2021-04-15 15:18:59 +08:00
Jiacheng Guo
f6fd2eb164
vfs: add eventfd support
...
eventfd imitates the behavior of POSIX api `man(2) eventfd`. This api
can be used to pass events to a select based message loop.
2021-04-15 15:18:59 +08:00
Marius Vikhammer
2aead8ba57
Support ESP32S3 Beta 3 target
...
Update ROM API. Port changes from bringup branch.
2021-03-18 10:24:22 +08:00
Jiacheng Guo
b14830c5c0
vfs: use sys/dirent.h from newlib
...
The dirent.h shipped with the risc-v compiler lacks `extern "C"`
declartion and causes linkage declartion conflict when included in C++
files. Use the dirent.h from newlib only to avoid this issue.
2021-03-04 14:58:43 +08:00
Marius Vikhammer
eec2419390
system: enable shared stack watchpoint
...
Enable shared stack watchpoint for overflow detection
Enable unit tests:
* "test printf using shared buffer stack" for C3
* "Test vTaskDelayUntil" for S2
* "UART can do poll()" for C3
2021-02-18 15:38:30 +08:00
morris
753a929525
global: fix sign-compare warnings
2021-01-12 14:05:08 +08:00
Ivan Grokhotkov
b1c4107275
vfs: zero-initialize struct stat in *_stat and *_fstat handlers
...
...otherwise some fields will contain garbage values.
This wasn't noticed until HAVE_BLKSIZE got enabled in newlib builds.
2020-12-29 16:18:04 +01:00
Angus Gratton
c3ba995f2c
Merge branch 'ci/ccomp_performance_tests' into 'master'
...
unit_test: Refactor all performance tests that rely on cache compensated timer
See merge request espressif/esp-idf!11709
2020-12-24 13:44:52 +08:00
Angus Gratton
1741ae941e
vfs: Update for esp32c3
...
From internal commit 6d894813
2020-12-24 14:18:02 +11:00
Marius Vikhammer
0a95151a75
unit_test: Refactor all performance tests that rely on cache compensated timer
...
There is no ccomp timer on C3, which means our performance tests will start
failing again due to variance caused by cache misses.
This MR adds TEST_PERFORMANCE_CCOMP_ macro that will only fail
performance test if CCOMP timer is supported on the target
2020-12-22 18:56:24 +11:00
Angus Gratton
5228d9f9ce
esp32c3: Apply one-liner/small changes for ESP32-C3
2020-12-01 10:58:50 +11:00
Angus Gratton
420aef1ffe
Updates for riscv support
...
* Target components pull in xtensa component directly
* Use CPU HAL where applicable
* Remove unnecessary xtensa headers
* Compilation changes necessary to support non-xtensa gcc types (ie int32_t/uint32_t is no
longer signed/unsigned int).
Changes come from internal branch commit a6723fc
2020-11-13 07:49:11 +11:00
Angus Gratton
66fb5a29bb
Whitespace: Automated whitespace fixes (large commit)
...
Apply the pre-commit hook whitespace fixes to all files in the repo.
(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
morris
61f89b97c6
bringup esp32-s3 on FPGA
2020-09-22 15:15:03 +08:00
Jakob Hasse
20c068ef3b
cmock: added cmock as component
...
* changing dependencies from unity->cmock
* added component.mk and Makefile.projbuild
* ignore test dir in gen_esp_err_to_name.py
* added some brief introduction of CMock in IDF
2020-09-02 16:38:37 +08:00
Ivan Grokhotkov
e4e553efeb
Merge branch 'bugfix/vfs_zero_length_base_path' into 'master'
...
vfs: fix invalid dereference for zero-length base_path
Closes IDFGH-3567
See merge request espressif/esp-idf!9561
2020-07-23 04:06:48 +08:00
morris
345606e7f3
esp_rom: extract common uart apis into esp_rom_uart.h
2020-07-17 16:00:59 +08:00
houwenxiang
8e00522cd7
vfs: support vfs uart set line endings with specified uart number
2020-07-10 11:15:09 +08:00
Ivan Grokhotkov
53f89464a3
vfs: fix invalid dereference for zero-length base_path
...
When base_path has len == 0, the code used to compare base_path[-1]
with '/'. Fix by correcting the length check.
Also mention the case of zero-length base_path in the API reference.
Closes https://github.com/espressif/esp-idf/issues/5514
2020-07-10 00:20:55 +02:00
Ivan Grokhotkov
fc8cd4048d
vfs: add vfs_cdcacm driver (aka USB CDC)
2020-06-26 15:38:49 +02:00
Ivan Grokhotkov
002c50540b
vfs: move line ending definitions into esp_vfs_common
2020-06-24 15:50:51 +02:00
Andrei Gramakov
283026a761
vfs: semihost driver bugfix
2020-04-15 15:46:47 +02:00
Andrei Gramakov
305592f1aa
vfs: semihosting driver update supporting semihosting_common handler from OpenOCD
...
- implemented SYS_DRVINFO syscall and version handling for the semihosting driver
- removed a support of old oocd versions
renamed kconfig options:
- CONFIG_SEMIHOSTFS_HOST_PATH_MAX_LEN to CONFIG_VFS_SEMIHOSTFS_HOST_PATH_MAX_LEN
- CONFIG_SEMIHOSTFS_MAX_MOUNT_POINTS to CONFIG_VFS_SEMIHOSTFS_MAX_MOUNT_POINTS
2020-04-03 16:19:06 +02:00
Angus Gratton
62426a6c90
Merge branch 'refactor/use_new_component_registration_functions' into 'master'
...
CMake: Use new component registration function
See merge request espressif/esp-idf!8068
2020-03-25 08:02:42 +08:00
Renz Bagaporo
3d0967a58a
test: declare requirements and include dirs private
2020-03-23 10:58:50 +08:00
Ivan Grokhotkov
cadab2cbcf
vfs: define all implementations as esp_vfs_, create aliases
...
This change allows (in the future) to test VFS on host, without having
it conflict with the host C library. On host, all aliases would be
disabled.
2020-03-20 13:43:42 +01:00
Ivan Grokhotkov
a3c0bcb0a0
vfs: introduce options to turn off some features
...
CONFIG_VFS_SUPPORT_IO: for basic I/O functions support
CONFIG_VFS_SUPPORT_DIR: for file/directory functions support
CONFIG_VFS_SUPPORT_SELECT: for select support
2020-03-20 13:43:42 +01:00
Ivan Grokhotkov
45e50f1f2a
newlib: move dirent.h, ioctl.h headers from VFS
2020-03-20 13:43:42 +01:00
Angus Gratton
99cdddeb63
docs: Fix broken or incorrect link roles to IDF files & directories
2020-02-18 10:34:11 +11:00
Angus Gratton
11fac8637a
docs: Resolve doxygen & Sphinx warnings
2020-02-07 16:37:45 +11:00
morris
e30cd361a8
global: rename esp32s2beta to esp32s2
2020-01-22 12:14:38 +08:00
Roland Dobai
a9c4dab4d3
VFS: Check in select() if the UART driver is installed or not
...
Closes https://github.com/espressif/esp-idf/issues/4627
2020-01-14 13:52:27 +01:00
Konstantin Kondrashov
2c793cef06
idf: Support a custom toolchain with time_t wide 64-bits
...
Allows resolving the Y2K38 problem.
Closes: IDF-350
Closes: https://github.com/espressif/esp-idf/issues/584
2020-01-10 12:58:54 +08:00
Ivan Grokhotkov
23848fd1b9
newlib: define fcntl as strong symbol
...
Closes https://github.com/espressif/esp-idf/issues/3694
Closes https://github.com/espressif/esp-idf/issues/4407
2019-12-11 14:53:26 +01:00
houwenxiang
f27ae9b0e2
feature: Add uart hal support.
2019-11-26 20:01:50 +08:00
Renz Christian Bagaporo
550c0ef234
vfs: use ccomp timer in performance test
2019-11-18 10:29:02 +08:00
Roland Dobai
84bbafb6a4
VFS: Fix performance test for esp32s2beta
2019-11-01 09:40:16 +00:00
Roland Dobai
2a0285fdb4
Fix VFS UART unit tests for esp32s2beta
2019-10-30 13:45:12 +00:00
Angus Gratton
7ce75a42c7
Merge branch 'master' into feature/esp32s2beta_merge
2019-10-25 15:13:52 +11:00
Roland Dobai
8b56496efa
VFS: Fix bug which occurs when driver is installed during a select() call
...
Closes https://github.com/espressif/esp-idf/issues/3554
2019-10-21 11:59:38 +02:00
Ivan Grokhotkov
5830f529d8
Merge branch 'master' into feature/esp32s2beta_merge
2019-10-02 19:01:39 +02:00
Wang Fang
32adfdc307
Add Chinese translation for the 2nd batch of the files in storage folder in api-reference.
...
1. The translation should be first reviewed by technical reviewers;
2. and then by language reviewers.
For the translation for the first batch of files, please see !MR5620 and !MR5613
2019-09-20 12:32:55 +08:00
Angus Gratton
438d513a95
Merge branch 'master' into feature/esp32s2beta_merge
2019-09-16 16:18:48 +10:00
Roland Dobai
7cc225c85b
VFS: Fix memory access after free() in UART select()
...
Closes https://github.com/espressif/esp-idf/issues/4030
2019-09-10 04:59:03 +00:00
Michael (XIAO Xufeng)
76a3a5fb48
ci: disable unavailable tests for esp32s2beta
2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
9baa7826be
fix unit test and examples for s2beta
2019-09-04 10:53:25 +10:00
Angus Gratton
6990a7cd54
Merge branch 'master' into feature/esp32s2beta_update
2019-08-19 15:03:43 +10:00
Angus Gratton
04ae56806c
Merge branch 'master' into feature/esp32s2beta_update
2019-08-08 15:26:58 +10:00
Angus Gratton
24d26fccde
Merge branch 'master' into feature/esp32s2beta_update
2019-08-08 13:44:24 +10:00
Roland Dobai
2211039b6d
docs: Correct and extend the documentation about VFS select()
2019-08-05 11:17:43 +02:00
Roland Dobai
91ce5db172
VFS: Support concurrent VFS select calls
...
Closes https://github.com/espressif/esp-idf/issues/3392
2019-08-05 11:17:41 +02:00
Michael Zimmermann
74a459dd3d
make code conform to Wstrict-prototypes
...
Merges https://github.com/espressif/esp-idf/pull/2937
2019-08-01 16:28:56 +07:00
Anton Maklakov
afbaf74007
tools: Mass fixing of empty prototypes (for -Wstrict-prototypes)
2019-08-01 16:28:56 +07:00
chenjianqiang
e43513b610
bugfix(uart): uniform AT_CMD char configuration
2019-07-18 19:24:13 +08:00
Michael (XIAO Xufeng)
00b33a8e14
vfs_uart: refactor to have static context structure
2019-07-18 15:57:00 +08:00
chenjianqiang
4cc962353c
feat(uart): update uart driver for esp32s2beta
2019-07-18 15:57:00 +08:00
Roland Dobai
41062bea99
VFS: Implement pread() and pwrite()
...
Closes https://github.com/espressif/esp-idf/issues/3515
2019-07-11 06:20:21 +00:00
Roland Dobai
43eb58da99
VFS: Fix Kconfig prefix
2019-07-02 17:17:18 +02:00
Renz Christian Bagaporo
9eccd7c082
components: use new component registration api
2019-06-21 19:53:29 +08:00
Michael (XIAO Xufeng)
b5c3ac0ec2
vfs_uart: refactor to have static context structure
2019-06-20 11:32:24 +08:00
chenjianqiang
cf2ba210ef
uart: multichip support
2019-06-20 11:32:22 +08:00
Kirill Chalov
4faf2de035
Doc/review api ref storage
2019-06-17 14:23:52 +08:00
Renz Christian Bagaporo
3882e48e8a
cmake: use new signature form of target_link_library to link components
...
!4452 used setting LINK_LIBRARIES and INTERFACE_LINK_LIBRARIES to link
components built under ESP-IDF build system. However, LINK_LIBRARIES does
not produce behavior same as linking PRIVATE. This MR uses the new
signature for target_link_libraries directly instead. This also moves
setting dependencies during component registration rather than after all
components have been processed.
The consequence is that internally, components have to use the new
signature form as well. This does not affect linking the components to
external targets, such as with idf_as_lib example. This only affects
linking additional libraries to ESP-IDF libraries outside component processing (after
idf_build_process), which is not even possible for CMake<v3.13 as
target_link_libraries is not valid for targets not created in current
directory. See https://cmake.org/cmake/help/v3.13/policy/CMP0079.html#policy:CMP0079
2019-06-11 18:09:26 +08:00
Angus Gratton
ddbd09eb15
esp32/esp32s2beta: Extract common SPIRAM options into esp_commmon component
2019-06-11 13:07:37 +08:00
suda-morris
84b2f9f14d
build and link hello-world for esp32s2beta
2019-06-11 13:07:37 +08:00
Konstantin Kondrashov
399d2d2605
all: Using xxx_periph.h
...
Using xxx_periph.h in whole IDF instead of xxx_reg.h, xxx_struct.h, xxx_channel.h ... .
Cleaned up header files from unnecessary headers (releated to soc/... headers).
2019-06-03 14:15:08 +08:00
Angus Gratton
22514c1dd9
cmake: For gcc8 use linker to find paths to libc, libm, libstdc++, etc
...
Removes the need to know/guess the paths to these libraries. Once we are gcc 8 only, we
can remove -nostdlib and no additional arguments are needed for system libraries.
The catch is: any time IDF overrides a symbol in the toolchain sysroot, we need
an undefined linker marker to make sure this symbol is seen by linker.
2019-05-28 12:54:37 +08:00
Roland Dobai
0ae53691ba
Rename Kconfig options (components/esp32)
2019-05-21 09:09:01 +02:00
Roland Dobai
92950db44e
Rename Kconfig options (components/lwip)
2019-05-21 09:09:01 +02:00
Renz Christian Bagaporo
ffec9d4947
components: update with build system changes
2019-05-13 19:59:17 +08:00
Ivan Grokhotkov
89798b328b
Merge branch 'bugfix/select_init_sem' into 'master'
...
VFS: Allocate socket select semaphore outside ISR
See merge request idf/esp-idf!4591
2019-04-25 19:10:08 +08:00
Renz Christian Bagaporo
90ee405afd
ldgen: update component linker fragment files
2019-04-04 15:57:34 +08:00
Roland Dobai
2df9fb057d
VFS: Allocate socket select semaphore outside ISR
2019-03-22 13:47:32 +00:00
Ivan Grokhotkov
940a1f6e79
Merge branch 'feature/separate_rom_from_esp32' into 'master'
...
separate rom from esp32 component to esp_rom
Closes IDF-542
See merge request idf/esp-idf!4500
2019-03-21 22:10:45 +08:00
Ivan Grokhotkov
3a779380a7
Merge branch 'feature/semihost_vfs' into 'master'
...
Adds semihosting VFS driver
Closes IDF-367
See merge request idf/esp-idf!4145
2019-03-21 22:03:06 +08:00
morris
c159984264
separate rom from esp32 component to esp_rom
...
1. separate rom include files and linkscript to esp_rom
2. modefiy "include rom/xxx.h" to "include esp32/rom/xxx.h"
3. Forward compatible
4. update mqtt
2019-03-21 18:51:45 +08:00
Ivan Grokhotkov
48b1433772
vfs: change fcntl argument to int (instead of va_list), add weak fcntl
2019-03-19 21:44:17 +08:00
Alexey Gerenkov
4fc14e8eb6
vfs: Adds semihosting VFS driver
2019-03-08 15:08:10 +03:00
Roland Dobai
aa9d302814
VFS: Implement poll() based on select()
...
Closes https://github.com/espressif/esp-idf/issues/2945
2019-02-25 10:34:27 +01:00
Roland Dobai
37126d3451
Correct Kconfigs according to the coding style
2019-01-29 13:37:01 +01:00
Roland Dobai
c8e8044293
VFS: move all functions into RAM which are called in the performance test
2019-01-03 19:56:19 +01:00
Ivan Grokhotkov
61beb16225
vfs: fix unregister removing top level VFS instead of nested
...
Credits @neoniousTR.
Fixes https://github.com/espressif/esp-idf/pull/2770
2018-12-06 19:43:49 +08:00
Ivan Grokhotkov
21b3919369
Merge branch 'bugfix/vfs_open_write_close_perf_test' into 'master'
...
Fix VFS unit test failure ("Open & write & close through VFS passes performance test")
Closes #44
See merge request idf/esp-idf!3759
2018-11-29 09:40:54 +08:00
Roland Dobai
738c56e84a
Fix VFS_OPEN_WRITE_CLOSE_TIME unit test issue
...
Closes idf/esp-idf#44
2018-11-28 20:36:08 +01:00
Roland Dobai
957cf0ab84
VFS: select() on UART should return immediately when data is buffered
2018-11-27 13:39:00 +01:00
Ivan Grokhotkov
6091021e83
unity: separate common and IDF specific functionality
...
New unity component can be used for testing other applications.
Upstream version of Unity is included as a submodule.
Utilities specific to ESP-IDF unit tests (partitions, leak checking
setup/teardown functions, etc) are kept only in unit-test-app.
Kconfig options are added to allow disabling certain Unity features.
2018-11-19 12:36:31 +08:00
Ivan Grokhotkov
aa692b3483
vfs: implement fsync for UART VFS
2018-11-19 12:36:31 +08:00