LiPeng
7ca602e86b
fix(vfs): Fix event_write may not exit critical section
...
This commit fixes the event_write() function where the critical section
was unbalanced.
Merges https://github.com/espressif/esp-idf/pull/12258
2023-09-19 08:53:58 +02:00
morris
be5fff2364
vfs_uart: fix out-of-bounds read
...
when open uart device "/2" on chips only have 2 UART peripherals
2023-06-20 10:47:06 +08:00
Adam Múdry
da823eddf5
vfs: select sanity NULL check
...
https://github.com/espressif/esp-idf/issues/9964
2023-05-26 13:46:40 +02:00
morris
2dc6c95859
Merge branch 'bugfix/usb_serial_driver_block_v4.4' into 'release/v4.4'
...
usb_serial_jtag: Fix bug of blocking TX xfer when using driver (backport v4.4)
See merge request espressif/esp-idf!22831
2023-04-20 11:01:01 +08:00
Dong Heng
b7ea6e44b2
vfs: uart/cdcacm/usb_serial_jtag fcntl return read/write state
2023-03-23 08:22:56 +00:00
Cao Sen Miao
897082dbe5
usb_serial_jtag: Fix bug of blocking TX xfer when using driver,
...
Merges https://github.com/espressif/esp-idf/pull/10208
2023-03-20 14:39:35 +08:00
Chip Weinberger
6cf1d8ea40
[USB Serial/JTAG Driver] use time-limited blocking for TX
2023-03-20 14:20:40 +08:00
Mahavir Jain
57082d14a5
Merge branch 'feature/semihosting_call_number_change_v4.4' into 'release/v4.4'
...
Semihosting V2 (v4.4)
See merge request espressif/esp-idf!18332
2022-06-06 20:31:19 +08:00
Erhan Kurubas
c55db5e688
semihosting: drop absolute path support
2022-06-02 11:14:18 +02:00
Ivan Grokhotkov
cd21a31416
vfs: usb_serial_jtag: consider O_NONBLOCK flag when reading via driver
...
Closes https://github.com/espressif/esp-idf/issues/8839
2022-06-01 16:32:28 +02:00
Erhan Kurubas
c0df348156
semihosting: version 2
2022-06-01 14:49:03 +02:00
David Cermak
f974099b42
vfs: Fix potential select() race if both sock and other-fd trigger
...
This fixes a potential race condition in select() if both a socket-fd
and non-socket fd trigger simultaneously to unblock this select.
In case of both fds, we use lwip's local thread semaphore, so we only
have to try return it (if it was taken/triggered more than once) when
we exit select().
Closes https://github.com/espressif/esp-idf/issues/8896
2022-05-19 16:57:39 +02:00
Vamshi Gajjela
ebb9cc3670
fatfs: Add ftruncate api support for VFS and FAT-VFS
...
Unit test cases added to verify ftruncate within fatfs tests.
Closes https://github.com/espressif/esp-idf/issues/8279
2022-05-02 04:37:56 +00:00
Ivan Grokhotkov
ad532236ae
vfs: add support for semihosting on ESP32-C3
2022-04-19 13:55:36 +00:00
Ivan Grokhotkov
23b0cdad8a
vfs: add test for errno value after 'open'
2022-02-07 11:36:00 +01:00
hörbert
931dd74da6
vfs: don't overwrite errno by a hard coded ENOENT
...
Calling "open" in CHECK_AND_CALL sets a perfectly correct errno.
There is no need to overwrite that with a value of ENOENT, since doing
so hides lower level errors like EIO.
Closes https://github.com/espressif/esp-idf/pull/8036
2022-02-07 11:35:59 +01:00
Mahavir Jain
ff3922d217
Merge branch 'bugfix/fix_select_timeout_v4.4' into 'release/v4.4'
...
VFS: `select` function's timeout is now POSIX compliant (and fix eventfd example) (backport v4.4)
See merge request espressif/esp-idf!16189
2021-12-08 08:32:42 +00:00
Omar Chebib
cf21312d8d
VFS: select
function's timeout is now POSIX compliant
...
`select` function will now round up the timeout passed as a parameter (if any).
It makes it POSIX compliant.
* Closes https://github.com/espressif/esp-idf/issues/7514
2021-11-30 11:51:46 +08:00
Jiacheng Guo
ce7c936633
vfs: reduce lock in vfs_select
2021-11-29 17:32:43 +08:00
Cao Sen Miao
fcecbde778
vfs_usb_serial: set secondary selection for making usb port can output under default menu
2021-11-17 19:54:15 +08:00
Jiacheng Guo
7eafcb0372
vfs: fix occasional ISR context mismatch in event fd
2021-09-17 17:31:20 +08:00
Andrei Safronov
9159aa58d3
tests: refactoring of the gcc's inner functions, because clang doesn't support them
2021-09-10 19:51:27 +03:00
Ivan Grokhotkov
b7a4df9031
vfs: list IO functions which can be used with VFS_SUPPORT_IO disabled
2021-08-23 07:02:19 +02:00
Ivan Grokhotkov
a005e9bfbc
docs: move VFS documentation into the component directory
...
These files were added into the component directory back when we
didn't have the documentation directory, and weren't moved once the
documentation directory was created.
2021-08-23 07:02:19 +02:00
David Cermak
07612b0854
vfs: Add initial lwip vfs test
...
to test fstat() implementation
2021-08-19 17:29:34 +02:00
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