Ivan Grokhotkov
5b54ae76d4
esp_timer, hal: add support for non-integer systimer frequency
...
When ESP32-C2 is paired with a 26 MHz XTAL, the systimer tick
frequency becomes equal to 26 / 2.5 = 10.4 MHz. Previously we always
assumed that systimer tick frequency is integer (and 1 MHz * power of
two, above that!).
This commit introduces a new LL macro, SYSTIMER_LL_TICKS_PER_US_DIV.
It should be set in such a way that:
1. SYSTIMER_LL_TICKS_PER_US / SYSTIMER_LL_TICKS_PER_US_DIV equals the
actual systimer tick frequency,
2. and SYSTIMER_LL_TICKS_PER_US is integer.
For ESP32-C2 this means that SYSTIMER_LL_TICKS_PER_US = 52 and
SYSTIMER_LL_TICKS_PER_US_DIV = 5.
This introduced two possible issues:
1. Overflow when multiplying systimer counter by 5
- Should not be an issue, since systimer counter is 52-bit, so
counter * 5 is no more than 55-bit.
2. The code needs to perform:
- divide by 5: when converting from microseconds to ticks
- divide by 52: when converting from ticks to microseconds
The latter potentially introduces a performance issue for the
esp_timer_get_time function.
2022-07-11 12:24:37 +08:00
Martin Vychodil
0c87ae2a91
System/Security: Memprot API unified (ESP32S3)
...
Added missing features and improvements
2022-07-09 22:57:51 +02:00
Jiang Jiang Jian
a7bf3af687
Merge branch 'bugfix/reset_ble_hw_on_inititalization' into 'master'
...
component/bt: reset Bluetooth hardware during controller inititalization on ESP32-C3/ESP32-S3
Closes BT-2402
See merge request espressif/esp-idf!18831
2022-07-08 16:21:41 +08:00
Michael (XIAO Xufeng)
a58362a429
Merge branch 'feature/efuse_rev_major_minor' into 'master'
...
efuse: Adds major and minor versions
See merge request espressif/esp-idf!18255
2022-07-07 11:48:54 +08:00
wangmengyang
1d55f12c2d
component/bt: reset Bluetooth hardware during controller inititalization on ESP32-C3/ESP32-S3
...
1. Rename MACROs SYSTEM_WIFI_RST_EN register bit fields to be more recognizable
2. reset Bluetooth baseband and clock bits to fix the issue of task watchdog triggered during controller initialization due to invalid hardware state
2022-07-06 16:23:48 +08:00
Cao Sen Miao
e218723e0e
I2C: Make I2C clock frequency accurate
2022-07-06 11:58:08 +08:00
KonstantinKondrashov
0f8ff5aa15
efuse: Adds major and minor versions and others
2022-07-05 14:38:27 +08:00
Omar Chebib
cd48baf979
Refactor: move regi2c_*.h header files from esp_hw_support to soc component
...
When creating G0 layer, some regi2c_*.h headers were moved out from
esp_hw_support (G1) to soc (G0). In order to be consistent with that change,
move all the remaining regi2c_*.h headers to soc too.
2022-06-30 09:40:44 +00:00
Armando
31b3f31ef4
ext_mem: make memory region check strict
2022-06-28 14:17:44 +08:00
Cao Sen Miao
2c0651a671
Add regi2c enable/disable reference count
2022-06-23 15:36:44 +08:00
Cao Sen Miao
3a820462ac
temperature_sensor: Add temperature sensor support for ESP32-C2
2022-06-23 15:36:43 +08:00
Omar Chebib
8fae0f0753
G0: Support Xtensa targets for G0-only compilation
...
G0-only example now supports Xtensa targets. This means that G0 layer
does not depend on G1+ layers anymore
2022-06-20 11:34:20 +00:00
Omar Chebib
752026a174
Merge branch 'refactor/remove_g0_dep_on_g1_riscv' into 'master'
...
G0: RISC-V targets have now an independent G0 layer
See merge request espressif/esp-idf!17926
2022-06-16 11:53:39 +08:00
laokaiyao
28b8fc6a7e
i2s: update documents for driver-NG
2022-06-15 10:30:04 +08:00
laokaiyao
0fe3bb8ab7
i2s: update examples and unit-tests
2022-06-15 10:29:06 +08:00
laokaiyao
621d0aa942
i2s: Introduced a brand new driver
2022-06-15 10:29:06 +08:00
Darian
e213e66ba3
Merge branch 'refactor/esp_hw_support_cpu' into 'master'
...
esp_hw_support: Add new esp_cpu.h abstraction
Closes IDF-4769
See merge request espressif/esp-idf!17091
2022-06-14 21:11:30 +08:00
Omar Chebib
2fd784c97a
G0 RISC-V: Remove "private_include/regi2c_brownout.h" header as it has been moved and simplify "regi2c_ctrl.h"
2022-06-14 15:00:53 +08:00
Omar Chebib
5bcd9b2db8
G0: RISC-V targets have now an independent G0 layer
...
G0 doesn't depend on any G1+ layer for RISC-V based targets
2022-06-14 15:00:53 +08:00
Darian Leung
a8a3756b38
hal: Route CPU and Interrupt Controller HAL/LL to esp_cpu calls
...
This commit makes changes to cpu_ll.h, cpu_hal.h, and interrupt_controller_hal.h:
- Moved to esp_hw_support in order to be deprecated in the future
- HAL/LL API now route their calls to esp_cpu.h functions instead
Also updated soc_hal.h as follows:
- Removed __SOC_HAL_..._OTHER_CORES() macros as they dependend on cpu_hal.h
- Made soc_hal.h and soc_ll.h interfaces always inline, and removed soc_hal.c.
This commit also updates the XCHAL_ERRATUM_572 workaround by
- Removing it's HAL function and invoking the workaround it directly the bootloader
- Added missing workaround for the ESP32-S3
2022-06-14 14:40:03 +08:00
Darian Leung
149872131a
hal: Move dedicated GPIO LL and HAL
...
This commit moves the dedicated GPIO LL and HAL functions from
cpu_ll.h to dedic_gpio_cpu_ll.h.
- cpu_ll_enable_cycle_count() has also been removed due to lack of feasible usage scenarios
2022-06-14 14:38:29 +08:00
songruojing
c8752cee6a
clk_tree: Refactor rtc_clk.c by adding HAL layer for clock subsystem
2022-06-13 17:47:50 +08:00
Cao Sen Miao
6589daabb9
MMU: Add configurable mmu page size support on ESP32C2
2022-06-08 19:34:31 +08:00
Cao Sen Miao
6a2d3509dc
spi_flash: Making XMC flash works more stable when brownout detected
2022-06-02 10:38:55 +08:00
Konstantin Kondrashov
b824f68b35
Merge branch 'feature/move_dport_workaround_to_g0' into 'master'
...
dport_access: Move DPORT workaround to G0
Closes IDF-2177
See merge request espressif/esp-idf!17961
2022-06-01 12:11:12 +08:00
KonstantinKondrashov
c5a4ab39a7
soc: Fix description of efuse fail bits
2022-05-31 11:21:24 +00:00
KonstantinKondrashov
ac4c7d99fe
dport: Move DPORT workaround to G0
2022-05-31 13:44:18 +08:00
morris
4352c39e3e
Merge branch 'feature/cache_c2_support' into 'master'
...
cache: access error & illegal error ll functions
Closes IDF-3820
See merge request espressif/esp-idf!18203
2022-05-30 11:40:11 +08:00
Armando
8532d09259
cache: access error & illegal error ll functions
2022-05-23 15:00:47 +08:00
jiangguangming
9c6afee12f
flash mmap: abstract R/W MMU table instead of reg access
2022-05-20 16:46:27 +08:00
Omar Chebib
477bc9e64c
I2C: Fix SCL period timings on ESP targets
...
The output frequency is now more accurate as the SCL period timings have been fixed.
This fix applies for ESP32, ESP32S3, ESP32C3, ESP32C2 and ESP32H2
2022-05-18 05:36:08 +00:00
Armando
49747bb486
adc: create common adc hal layer
2022-05-07 19:20:44 +08:00
Armando (Dou Yiwen)
76be0c2624
Merge branch 'bugfix/fix_esp32_mmu_init_issue' into 'master'
...
mmu: add ll functions for mmu unmap
Closes OCD-526 and IDF-4962
See merge request espressif/esp-idf!17868
2022-05-05 22:21:18 +08:00
Armando
e09787d851
mmu: fix macro MMU_ENTRY_NUM and add new macro MMU_MAX_PADDR_PAGE_NUM
2022-04-27 11:35:07 +08:00
Armando
2764cd5682
mmu: simplify mmu_hal_init
2022-04-27 11:35:07 +08:00
jiangguangming
63ac5e4a99
mmu: add ll func used to invalidate the mmu entry
2022-04-27 11:35:07 +08:00
Simon
e4d85807ea
Merge branch 'feature/spi_flash_esp8684_support' into 'master'
...
spi_flash: refactor spi_flash clock configuration logic and support esp32c2
Closes IDF-4474, IDF-4025, and IDF-4066
See merge request espressif/esp-idf!16602
2022-04-27 11:05:45 +08:00
Konstantin Kondrashov
df30b362a8
efuse: Validates data after burning and re-burnes it if necessary
2022-04-27 01:10:41 +08:00
Cao Sen Miao
4418a855ba
spi_flash: refactor the spi_flash clock configuration, and add support for esp32c2
2022-04-26 15:22:37 +08:00
laokaiyao
b99ced08a2
i2s: fix only right case
...
Closes: https://github.com/espressif/esp-idf/issues/8538
2022-04-23 07:38:45 +00:00
Darian
7c5cf3988f
Merge branch 'bugfix/twai_ll_parse_frame_buffer_typo' into 'master'
...
TWAI: Fix twai_ll_parse_frame_buffer() typo
Closes IDFGH-7140
See merge request espressif/esp-idf!17875
2022-04-22 21:29:59 +08:00
Darian Leung
09dc46552b
twai: Fix twai_ll_parse_frame_buffer() typo
...
Closes https://github.com/espressif/esp-idf/issues/8743
2022-04-22 15:25:39 +08:00
Anton Maklakov
f4c190cadd
Merge branch 'bugfix/abs_arguments' into 'master'
...
fix warnings: abs() use again
Closes GCC-240
See merge request espressif/esp-idf!17846
2022-04-22 09:30:23 +08:00
morris
4280164be4
rmt: add more clock source caps
2022-04-21 13:59:47 +00:00
Anton Maklakov
7a066b7b56
components: correct abs() use for unsigned argument
2022-04-21 12:22:01 +07:00
morris
373d9b3dbc
Merge branch 'feature/default_clk_for_gptimer' into 'master'
...
clk_tree: added default clock source for peripherals (GPTimer, RMT, LCD, TempSensor)
Closes IDF-4894
See merge request espressif/esp-idf!17759
2022-04-19 18:02:40 +08:00
songruojing
534346f4bb
ledc: Provide support for esp32c2 and esp32h2
...
LEDC examples, unit test, and programming guide are all updated.
2022-04-14 08:15:14 +00:00
morris
f32a89826c
clk_tree: added default clock source for peripheral
2022-04-14 15:44:56 +08:00
songruo
60bb5c913d
clk_tree: prework of introducing clk subsystem control
...
1. Clean up clk usage in IDF, replace rtc_clk_xtal/apb_freq_get with
upper level API esp_clk_xtal/apb_freq
2. Fix small errors and wrong comments related to clock
3. Add clk_tree_defs.h to provide an unified clock id for each chip
Modify the NGed drivers to adopt new clock ids
2022-04-11 12:09:06 +08:00
laokaiyao
f17edba20b
i2s: extract std/pdm/tdm modes
...
Type structures of these modes are defined. Driver and HAL layer are modified to fit these concepts.
2022-03-22 10:14:45 +08:00
Armando (Dou Yiwen)
36457b1346
Merge branch 'refactor/adc_unify_adc_unit' into 'master'
...
adc: adc single driver NG pre-step - unify adc_ll_num_t and adc_unit_t
See merge request espressif/esp-idf!17408
2022-03-18 20:29:36 +08:00
Armando
386363cafd
adc: unify adc_ll_num_t and adc_unit_t
2022-03-18 11:36:50 +08:00
morris
98e19b3355
Merge branch 'contrib/github_pr_8496' into 'master'
...
SPI LCD support large color transfers (GitHub PR)
Closes IDFGH-6874
See merge request espressif/esp-idf!17391
2022-03-14 22:22:00 +08:00
Michael (XIAO Xufeng)
aab535fe4a
Merge branch 'bugfix/regi2c_ctrl_spinlock_s2' into 'master'
...
hw_support: fixed regi2c not protected by lock on ESP32S2
See merge request espressif/esp-idf!16653
2022-03-13 02:47:53 +08:00
Michael (XIAO Xufeng)
d5bdf95580
hw_support: fixed regi2c not protected by lock on ESP32S2
2022-03-13 00:24:08 +08:00
Armando (Dou Yiwen)
6ed3ffbbf1
Merge branch 'refactor/remove_redundant_rom_cache_dependency' into 'master'
...
cache: remove redundant rom cache dependency in bootloader
Closes IDF-4523
See merge request espressif/esp-idf!17077
2022-03-12 10:11:39 +08:00
Armando
c1cbd7bbf6
cache/mmu: implememnt cache and mmu hal APIs in bootloader
2022-03-11 22:43:11 +08:00
morris
2c7cfdd784
spi: define tranfer max bit length in LL
2022-03-10 13:40:43 +08:00
morris
9f55712c03
rmt: document and improve LL driver
2022-03-09 10:58:12 +08:00
Zim Kalinowski
0440aca4e3
Merge branch 'feature/reevaluate_headers_include_dirs' into 'master'
...
esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
See merge request espressif/esp-idf!16763
2022-03-08 01:32:24 +08:00
Simon
4bf4a020a6
Merge branch 'refactor/abstract_temperature_sensor' into 'master'
...
temperature_sensor: Refactor temperature sensor to new APIs (follow rule of driverNG) and support esp32s3
Closes IDF-3665, IDF-3367, and IDF-1793
See merge request espressif/esp-idf!16787
2022-03-07 20:17:39 +08:00
Sudeep Mohanty
a9fda54d39
esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
...
This commit updates the visibility of various header files and cleans up
some unnecessary inclusions. Also, this commit removes certain header
include paths which were maintained for backward compatibility.
2022-03-07 11:18:08 +05:30
Cao Sen Miao
b248046bcb
Temperature_sensor: Create new temperature sensor API
2022-03-04 18:13:35 +08:00
songruojing
c8c137f2b7
esp32h2: support GPIO peripheral, IO_MUX, GPIO matrix.
...
Generic GPIO example is supported as well.
2022-03-04 11:25:05 +08:00
songruojing
24a60c12c6
uart: Provide support for esp32c2 and esp32h2
...
UART examples, unit test, and programming guide are all updated.
2022-03-02 11:29:13 +08:00
wuzhenghui
95418fd22e
remove esp32c3 unsupported efuse field
2022-02-28 19:37:38 +08:00
Konstantin Kondrashov
44e5ac2c59
Merge branch 'feature/efuse_hal' into 'master'
...
hal: Adds efuse hal layer
See merge request espressif/esp-idf!16354
2022-02-28 13:38:43 +08:00
KonstantinKondrashov
9605f3eb1a
soc: Adds efuse hal
...
Replaced eFuse ROM funcs with hal layer
2022-02-24 22:20:09 +08:00
Alexey Gerenkov
dea45a9d72
riscv: Use semihosting to set breakpoint and watchpoint when running under debugger
2022-02-24 08:55:40 +00:00
Marius Vikhammer
06d8a5bf33
Merge branch 'bugfix/inline_intrmask_from_isr' into 'master'
...
freertos: always inline xPortSetInterruptMaskFromISR and vPortClearInterruptMaskFromISR
Closes IDFGH-6669
See merge request espressif/esp-idf!16970
2022-02-23 01:05:40 +00:00
Marius Vikhammer
ca6f76d831
spi flash: fix cache accessed while disabled issues at -O0
...
mask_get_id and gpio_hal_iomux_func_sel were called while cache
is disabled, but were not inlined as expected at -0O.
Force these functions to always be inlined.
2022-02-07 11:33:33 +08:00
Chen Wu
35941de800
debug: esp32c3 uart1 wakeup
2022-01-25 17:43:02 +08:00
Chen Yi Qun
56e9920958
uart: add wakeup event for esp32c3
2022-01-25 17:43:02 +08:00
Ivan Grokhotkov
876f4d6a1c
vfs: add support for semihosting on ESP32-C3
2022-01-14 17:29:03 +01:00
Anton Maklakov
d500c8205e
Merge branch 'bugfix/fix_spi_cs_hold_time_issue' into 'master'
...
spi_master: fix spi cs_ena_posttrans issue
Closes IDFGH-6077
See merge request espressif/esp-idf!15925
2022-01-07 04:06:12 +00:00
morris
8cdcb4e291
rmt: move RMT item definition from soc to driver
2022-01-06 21:43:12 +08:00
Armando
56a707eef4
spi_master: fix spi cs_ena_posttrans issue
2022-01-06 17:54:58 +08:00
songruojing
e0bc3a923c
esp8684: support GPIO peripheral, IO_MUX, GPIO matrix.
...
Generic GPIO example and GPIO unit test on esp8684 are both supported as well.
2021-12-29 22:01:45 +08:00
Harshit Malpani
2c84db95d2
freertos: fix build warnings with -Wsign-conversion CFLAG
...
Closes https://github.com/espressif/esp-idf/issues/4946
2021-12-27 13:31:34 +05:30
morris
2c810f8451
timer: save alarm value in driver layer
2021-12-23 11:39:32 +08:00
Martin Vychodil
dd938eb952
System/Security: Memprot API unified (ESP32C3)
...
Unified Memory protection API for all PMS-aware chips (ESP32C3)
Closes JIRA IDF-3849
2021-12-21 01:50:36 +01:00
Armando
4dc0d6b2fe
adc: support adc dma driver on all chips
2021-12-16 00:19:15 +00:00
Omar Chebib
1e8a0909f6
LEDC: divisor calculation will now be rounded up when necessary
...
Closes https://github.com/espressif/esp-idf/issues/7722
2021-11-11 12:21:22 +08:00
Omar Chebib
aa2ca7dd94
LEDC: improved support for ESP32-C3 and refactored divisor calculation
...
As ESP32C3 does not have support for REF_TICK source clock, it is now not
possible to select it anymore.
Auto cfg clock has been improved for all boards.
2021-11-11 12:21:15 +08:00
morris
83d16aa00c
gdma: support IRAM interrupt
2021-11-08 16:14:51 +08:00
Cao Sen Miao
09487761cf
ESP8684: add freertos, hal, esp_system support
2021-11-06 17:33:44 +08:00
Alexey Gerenkov
bb9cd84cdc
debug_stubs: Refactor and add support for RISCV
2021-11-04 01:33:24 +03:00
laokaiyao
f37595dee9
i2s: fix ws signal polarity in tdm mode
2021-10-26 11:12:30 +08:00
morris
e2275b1f63
gptimer: clean up hal and ll for driver-ng
2021-10-20 18:40:08 +08:00
Zim Kalinowski
a7c9949dd9
Fixed build problem when icluding gpio_ll.h from cpp file
2021-10-17 14:29:31 +08:00
laokaiyao
7264c0e59a
i2s_rec_example: add support for esp32s3
2021-10-01 16:05:04 +01:00
SalimTerryLi
bd89dcc683
RMT: add loop_autostop driver support for esp32s3
2021-09-24 15:24:45 +08:00
morris
20ef511d0a
Merge branch 'bugfix/fix_reg_name_charactor_err' into 'master'
...
bugfix: fix reg name character error
See merge request espressif/esp-idf!14169
2021-09-18 07:10:57 +00:00
Wu Zheng Hui
1080e4f6a2
rename APB_CTRL ro SYS_CON
...
save
2021-09-16 20:57:57 +08:00
wuzhenghui
b2c028085a
fix reg name character error
2021-09-15 21:51:20 +08:00
morris
502e132e5d
Merge branch 'feature/fast_gpio_c3' into 'master'
...
fast gpio support on esp32-c3
Closes IDF-3783
See merge request espressif/esp-idf!14986
2021-09-14 06:09:34 +00:00
Wang Meng Yang
a885c42cda
Merge branch 'example/controller_hci_uart_for_esp32s3' into 'master'
...
examples: added support of ESP32-S3 chip in controller_hci_uart example
Closes BT-1906
See merge request espressif/esp-idf!14935
2021-09-08 06:02:18 +00:00
morris
6cec256a34
fast_gpio: driver support on esp32c3
2021-09-06 19:39:09 +08:00
Jiang Jiang Jian
316988bd2d
Merge branch 'feature/support_esp32s3_cpu_tagmem_retention' into 'master'
...
support esp32s3 cpu + tagmem retention
See merge request espressif/esp-idf!14579
2021-09-06 03:47:44 +00:00
laokaiyao
c5afd7ce34
i2s: fix write failure on ESP32 in 32bit slave mode
2021-09-03 17:36:44 +08:00
laokaiyao
0ff3dd9778
i2s: fix mono support issue
2021-09-02 14:33:36 +08:00
Marius Vikhammer
bdf3a8ff29
Merge branch 'feature/xtwdt' into 'master'
...
WDT: Add support for XTAL32K Watchdog timer
Closes IDF-2575
See merge request espressif/esp-idf!15000
2021-09-02 02:44:47 +00:00
Marius Vikhammer
4869b3cd4a
WDT: Add support for XTAL32K Watchdog timer
2021-09-02 09:09:00 +08:00
SalimTerryLi
874a720286
soc/ll: workaround compiler bug that generate 8/16 bits inst instead of 32 bits one
...
update all struct headers to be more "standardized":
- bit fields are properly wrapped with struct
- bitwidth sum should be 32 within same struct, so that it's correctly padded with reserved bits
- bit field should be uint32_t
- typedef volatile struct xxx{} yyy;: xxx must exists. refer: https://github.com/espressif/esp-idf/pull/3199
added helper macros to force peripheral registers being accessed in 32 bitwidth
added a check script into ci
2021-08-30 13:50:58 +08:00
Cao Sen Miao
c47ad5d22f
Merge branch 'bugfix/gpio_cant_hold' into 'master'
...
GPIO: fix issue that gpio cannot hold during deep-sleep on c3
Closes IDFGH-5738 and IDF-3526
See merge request espressif/esp-idf!14939
2021-08-27 06:16:45 +00:00
Li Shuai
03746de96f
light sleep: add cpu power down support for esp32s3
2021-08-27 11:11:06 +08:00
wangmengyang
c053ef0541
examples: added support of ESP32-S3 chip in controller_hci_uart example
2021-08-26 14:24:32 +08:00
Cao Sen Miao
c860b3ead6
gpio: fix issue that gpio cannot hold during deep-sleep on c3, Closes https://github.com/espressif/esp-idf/issues/7455
2021-08-25 15:16:08 +08:00
Marius Vikhammer
3907634d20
aes: fix potential unaligned access of buffers
...
https://github.com/espressif/esp-idf/issues/7236
2021-08-25 10:48:26 +08:00
Cao Sen Miao
da12db2904
Merge branch 'bugfix/c3_i2c_timeout' into 'master'
...
I2C: Fix i2c write randomly timeout and WDT triggered
See merge request espressif/esp-idf!14722
2021-08-24 08:59:22 +00:00
morris
0c41837b06
Merge branch 'refactor/timer_group-reg_file-update' into 'master'
...
refactor/timer_group update reg headers for c3 and s2
Closes IDF-3690
See merge request espressif/esp-idf!14761
2021-08-23 04:30:59 +00:00
SalimTerryLi
443845fd54
timer_group: update reg headers for c3&s2&h2 and fix direct 8/16bit reg access
2021-08-19 18:56:32 +08:00
morris
71d475149d
lcd: update doc unit test and example to support 8-line spi
2021-08-19 16:40:22 +08:00
bizhuangyang
8143832041
spi_master:support octal mode for esp32s2 and esp32s3
...
Add support for 8-line spi for lcd on esp32s2 and esp32s3
Closes https://github.com/espressif/esp-idf/issues/6371
2021-08-19 16:40:22 +08:00
Chen Yi Qun
fbd25c3837
I2C: add conf_update for esp32c3 i2c
2021-08-11 13:39:07 +08:00
morris
1656cee69d
i2s: correct soc info
...
1. remove non-exist I2S instance
2. update soc_caps.h, i2s_ll.h
2021-08-10 21:06:59 +08:00
Zim Kalinowski
1fd56e0b87
Merge branch 'feature/systimer_generate_rtos_tick' into 'master'
...
freertos(esp32s3): SysTick uses systimer
Closes IDF-2613
See merge request espressif/esp-idf!12246
2021-08-04 12:33:52 +00:00
Konstantin Kondrashov
29f581fc70
freertos(esp32s3): SysTick uses systimer
2021-08-04 20:33:44 +08:00
laokaiyao
f863998e90
driver/i2s: support mclk
2021-08-04 10:20:03 +08:00
laokaiyao
3c57a6ac36
driver/i2s: refactor ll and hal
2021-08-04 10:20:03 +08:00
laokaiyao
d51b85989b
doc/i2s: update i2s programming guide on s3 & c3
2021-08-04 10:20:03 +08:00
laokaiyao
f7f8c9c11f
driver/i2s: support i2s on c3 and s3
...
1. Support i2s on esp32c3 and esp32s3
2. Refactor i2s_config_t to avoid breaking change
2. Fix a bug that receiving unavailable values from message queue when dma queue has been re-allocted
4. Support i2s unit test on esp32c3 and esp32s3
2021-08-04 10:20:03 +08:00
houwenxiang
2f1247e1c4
driver: support I2S on ESP32-S3 & ESP32-C3
...
1. refactor I2S driver.
2. support TDM mode for esp2s3 & esp32c3.
2021-08-04 10:20:03 +08:00
Cao Sen Miao
247866261f
Merge branch 'feature/flash_support_on_esp32s3' into 'master'
...
esp_flash: bringup ext flash chip on ESP32-S3
Closes IDF-2021 and IDF-3230
See merge request espressif/esp-idf!14523
2021-08-02 03:59:14 +00:00
Cao Sen Miao
24529a6aec
usb_serial_jtag: enable blocking implementation on esp32s3
2021-07-31 16:32:09 +08:00
Cao Sen Miao
992de2750e
spi_flash: add support for ext flash
2021-07-31 14:11:35 +08:00
Michael (XIAO Xufeng)
5569dedd7f
Merge branch 'bugfix/i2c_example_esp32s3' into 'master'
...
i2c: bringup on ESP32-S3
Closes IDF-3232 and IDF-3292
See merge request espressif/esp-idf!13985
2021-07-29 07:01:38 +00:00
Armando
3ce2d85e9e
adc: support adc2 working with WiFi
2021-07-28 17:50:14 +08:00
Michael (XIAO Xufeng)
fbb6b1b11a
Merge branch 'bugfix/fix_uart_reset_issue_on_esp32c3' into 'master'
...
bugfix(uart): reset uart0 core before uart apb reset
Closes IDF-3362
See merge request espressif/esp-idf!12749
2021-07-22 07:20:58 +00:00
Chen Yi Qun
6317f5b481
add uart core reset in uart_module_enable()
2021-07-21 11:41:04 +08:00
Wangjialin
2b986fbd49
For esp_restart API, reset uart0 core first, then reset uart0 apb side, so as to prevent uart output garbage after cpu reset. (UART0 RST bits will be cleared in ROM)
...
Add UART0/1 core reset on esp32c3, in case uart driver would also reset uart hardwares.
2021-07-21 11:41:04 +08:00
Omar Chebib
b8c6c5334f
i2c: modify examples to work out of the box on ESP32S3
...
On ESP32S3, the default I2C pins of the examples are already used by USB.
This commit changes the default pins.
2021-07-21 11:04:16 +08:00
Omar Chebib
a6e14c37b2
SPI: chip select can now be kept active if the bus has been acquired
...
The user can now request the chip select to remain active after the current
transfer. In order to do so, he MUST acquire the bus first with `spi_device_acquire_bus()`
function, else, an error is returned.
2021-07-21 10:39:45 +08:00
Michael (XIAO Xufeng)
ded74889da
Merge branch 'bugfix/spi_slave_wrong_miso_mosi' into 'master'
...
spi_slave: Fix MOSI/MISO inconsistent references on the SPI Slave drivers.
See merge request espressif/esp-idf!13645
2021-07-15 08:51:41 +00:00
Sachin Parekh
1e17b1d843
esp32c3/memprot: Correct the split line address calculation
2021-07-09 09:33:52 +05:30
Sachin Parekh
29a308e614
esp32c3/memprot: Fix incorrect access to DRAM0 split line registers
...
memprot_ll_set_dram0_split_line_* and memprot_ll_get_dram0_split_line_* APIs were accessing
incorrect configuration register
2021-07-09 09:33:52 +05:30
Michael (XIAO Xufeng)
c6716dcb39
Merge branch 'feature/esp32c3_usbjtag_console_blocking' into 'master'
...
USB_serial_jtag controller: Add driver for supporting VFS on esp32c3(blocking implementation)
Closes IDF-3066 and IDF-3019
See merge request espressif/esp-idf!13414
2021-07-05 07:57:19 +00:00
Cao Sen Miao
3aa9ac2469
usb_serial_jtag: Add blocking driver to support vfs.
2021-07-05 11:22:38 +08:00
Michael (XIAO Xufeng)
5986b204c6
Merge branch 'feature/i2c_add_static_buffer_transfers' into 'master'
...
i2c: add `i2c_cmd_link_create_static()` to create commands from a given buffer
Closes IDFGH-3087
See merge request espressif/esp-idf!13013
2021-07-02 14:00:03 +00:00
Michael (XIAO Xufeng)
e8ff60544d
Merge branch 'bugfix/channel_clk_independent' into 'master'
...
rmt: clean up and support esp32-s3 (no DMA support)
Closes IDF-3296 and IDFGH-5350
See merge request espressif/esp-idf!13244
2021-07-01 04:37:07 +00:00
Gustavo Henrique Nihei
4bc9e18124
spi: Ensure DMA In-Link EOF is generated by trans_done on SPI Slave
2021-06-28 18:58:59 -03:00
Gustavo Henrique Nihei
fb8d9f76b3
spi: Remove Slave TX/RX set bitlen not effective for ESP32-S2/C3/S3
...
Furthermore, RX_EOF_EN should only be set when SPI Slave is configured
for segment transfer mode and the "ms_data_bitlen" field is configured
to control the "IN_SUC_EOF" interrupt. Since "ms_data_bitlen" is not
set anymore for S2, C3 and S3, "RX_EOF_EN" should be cleared.
2021-06-28 18:58:59 -03:00
Alexey Gerenkov
fcad8c7f42
hal/esp32c3: Avoid entering WFI mode under debugger
2021-06-24 13:10:11 +03:00
morris
a1494809b2
rmt: clean up LL driver
2021-06-22 15:29:11 +08:00
morris
9afdf54748
hal: added HAL_ASSERT
2021-06-22 11:28:01 +08:00
Omar Chebib
cfcbca1271
i2c: optimize space allocated for read or write buffers
...
Only a single command will be allocated now when a read or write is
prepared in the command list. The size of a command's buffer is not
limited to 255 bytes anymore.
2021-06-09 15:21:20 +08:00
Michael (XIAO Xufeng)
afe9b42cbf
Merge branch 'typo_fix/fix_typo_in_comment_in_uart_ll' into 'master'
...
Fix typo in `include/hal/uart_ll.h`
Closes IDFGH-5320
See merge request espressif/esp-idf!13826
2021-06-09 02:13:36 +00:00
Michael (XIAO Xufeng)
1596e336a1
Merge branch 'bugfix/spi_flash_cs_setup' into 'master'
...
spi_flash: fix cs line setup to make the flash driver more stable
Closes IDF-3240
See merge request espressif/esp-idf!13623
2021-06-04 07:05:05 +00:00
Andrey Starodubtsev
8488055711
Fix typo in include/hal/uart_ll.h
...
s/final state machine/finite-state machine/g
Signed-off-by: bizhuangyang <bizhuangyang@espressif.com>
Merges https://github.com/espressif/esp-idf/pull/7076
2021-06-02 15:37:30 +08:00
Cao Sen Miao
08f1bbe0c7
spi_flash: fix cs line setup to make the flash driver more stable
2021-06-01 16:41:41 +08:00
Gustavo Henrique Nihei
c1b3d77dcf
spi: Fix wrong target register for interrupt disable
2021-05-31 11:25:32 -03:00
morris
6e981af406
gdma: separate tx/rx channel interrupt
2021-05-06 15:06:37 +08:00
Michael (XIAO Xufeng)
58490418ad
Merge branch 'feature/merge_c3_caps' into 'master'
...
soc: merge C3 caps into a single soc_caps.h
See merge request espressif/esp-idf!13337
2021-05-06 05:56:42 +00:00
wangmengyang
59c0825ed8
Added example(ESP32-C3), to use Bluetooth Controller through HCI UART transport
2021-04-30 15:25:10 +00:00
Jeroen Domburg
644f430a31
Merge branch 'feature/esp32c3_usbjtagserial_console' into 'master'
...
USB serial/jtag controller: Add vfs (logging/printf), panic handler, gdb support.
See merge request espressif/esp-idf!12925
2021-04-28 08:38:31 +00: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
Michael (XIAO Xufeng)
41937a9f97
Merge branch 'feature/support_spi_on_727' into 'master'
...
spi: support spi on 727
Closes IDF-3178
See merge request espressif/esp-idf!13346
2021-04-28 08:16:15 +00:00
Marius Vikhammer
504a1e6102
soc: merge C3 caps into a single soc_caps.h
2021-04-28 14:42:35 +08:00
Ivan Grokhotkov
9d34a1cd42
Merge branch 'bugfix/optimise_esp_timer_get_time' into 'master'
...
systimer: optimise esp_timer_get_time
See merge request espressif/esp-idf!13335
2021-04-27 08:52:09 +00:00
Armando
831b6127d7
spi: update interrupt set in spi_ll.h
2021-04-27 11:11:00 +08:00
morris
988c88a6b1
systimer: optimise esp_timer_get_time
2021-04-26 11:54:02 +08:00
Cao Sen Miao
0d81edb174
spi_flash: refactoring flash encryption into new api
2021-04-25 17:09:25 +08:00
Ivan Grokhotkov
ea7d020f20
Merge branch 'feature/ubsan' into 'master'
...
system: add option to enable undefined behavior sanitizer (UBSAN)
Closes IDF-166 and IDF-1824
See merge request espressif/esp-idf!11318
2021-04-23 09:27:42 +00:00
Angus Gratton
0be81903cc
Merge branch 'bugfix/hal_duplicated_interrupt_functions' into 'master'
...
[hal]: merged duplicated HAL layer functions
Closes IDF-2308
See merge request espressif/esp-idf!12444
2021-04-23 07:47:51 +00:00
Ivan Grokhotkov
da90775d98
hal: mpu: fix signed overflow error
2021-04-22 23:33:47 +02:00
morris
ec898b771e
systimer: strip hal driver
2021-04-22 21:08:39 +08:00
Angus Gratton
ec01a66557
Merge branch 'feature/esp32c3_memprot_test3' into 'master'
...
ESP32C3/ESP32S2: memprot API upgrade and test application
Closes IDF-2641
See merge request espressif/esp-idf!12941
2021-04-13 18:42:46 +00:00
Michael (XIAO Xufeng)
8cfcf6da7a
Merge branch 'bugfix/enable_gpio18_gpio19_esp32c3' into 'master'
...
gpio: Disable USB JTAG when setting pins 18 and 19 as GPIOs on ESP32C3
Closes IDF-2964
See merge request espressif/esp-idf!12753
2021-04-12 09:39:55 +00:00
Martin Vychodil
f27c9c5139
esp32c3: memprot API upgrade and test application
...
Closes IDF-2641
2021-04-12 13:44:11 +10:00
Omar Chebib
cd79f3907d
gpio: Disable USB JTAG when setting pins 18 and 19 as GPIOs on ESP32C3
...
When `DIS_USB_JTAG` eFuse is NOT burned (`False`), it is not possible
to set pins 18 and 19 as GPIOs. This commit solves this by manually
disabling USB JTAG when using pins 18 or 19.
The functions shall use `gpio_hal_iomux_func_sel` instead of
`PIN_FUNC_SELELECT`.
2021-04-08 14:01:18 +08:00
Cao Sen Miao
c3da21a93f
I2C: enable all unit test for i2c on esp32c3
2021-04-06 17:37:55 +08:00
Jakob Hasse
b23c9142d5
[hal]: cleaned up interrupt mask functions
...
* Functions for setting and clearing interrupts
as well as function to read interrupt mask
should be clearer now.
* Using hal layer interrupt set and clear
functions in esp_wifi component
2021-04-06 11:54:13 +08:00
Darian Leung
2f58060921
TWAI: FIFO overrun handling and errata workarounds
...
This commit adds handling for FIFO overruns and
adds workarounds for HW errats on the ESP32.
Closes https://github.com/espressif/esp-idf/issues/2519
Closes https://github.com/espressif/esp-idf/issues/4276
2021-03-30 14:17:31 +08:00
Armando
cc6bfcd9ac
adc: apply adc power API to adc driver
...
Closes https://github.com/espressif/esp-idf/issues/6269
Closes https://github.com/espressif/esp-idf/issues/6682
2021-03-26 17:58:00 +08:00
Armando
0e0baee25a
adc: add implementation of missed public API
...
Added ``adc1_pad_get_io_num``, ``adc2_pad_get_io_num`` and
``adc_vref_to_gpio``.
2021-03-26 12:04:46 +08:00
Armando
00a3f48bd8
adc: refactor adc single read api on esp32c3
2021-03-26 12:04:46 +08:00
Armando
bee90f57f1
adc: remove unused functions on esp32c3
2021-03-26 12:04:45 +08:00
Angus Gratton
fa2946d651
Merge branch 'feature/support_esp32s3_beta_3' into 'master'
...
Support ESP32S3 beta 3 target
Closes IDF-2908
See merge request espressif/esp-idf!12661
2021-03-23 10:17:58 +00: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
morris
5a520cacf1
timer_group: correct timer_ll_set_divider
2021-03-16 17:56:37 +08:00
Michael (XIAO Xufeng)
fc61e60948
uart: fixed incorrect baudrate on C3 and S3 when target is too slow
...
The integer part of the divider is only 12-bit now. We used prescaler to get low frequency instead.
2021-03-09 20:09:42 +08:00
Cao Sen Miao
a8343bc470
esp_system: support gpio wakeup from deep sleep on esp32c3
2021-02-26 12:26:49 +08:00
morris
7b37158ede
rmt: distinguish group and channel in HAL layer
2021-02-25 12:42:23 +08:00
Cao Sen Miao
e38326d715
spi_flash: fix the issue that ext flash hold is not controlled properly
2021-02-04 14:44:51 +08:00
Ivan Grokhotkov
bb1f75179b
Merge branch 'bugfix/freertos_systimer_stall_when_cpu_halted' into 'master'
...
freertos: stall systimer while CPU is in debug mode
See merge request espressif/esp-idf!12063
2021-01-29 07:02:30 +08:00
Martin Vychodil
69096ddce5
Security: ESP32C3 memory protection feature (IRAM0/DRAM0)
...
Software support for PMS module.
Allows controlled memory access to IRAM (R/W/X) and DRAM0 (R/W)
On/locked by default, configurable in Kconfig (esp_system)
Closes https://jira.espressif.com:8443/browse/IDF-2092
2021-01-27 08:44:03 +01:00
Michael (XIAO Xufeng)
c99e891201
Merge branch 'feature/sync_adc_changes_from_c3_to_master_last' into 'master'
...
adc: sync adc changes from c3 to master (last time)
Closes IDF-2694
See merge request espressif/esp-idf!12134
2021-01-26 12:52:20 +08:00
Michael (XIAO Xufeng)
2b83418141
adc: add fallback calibration method
...
Also:
1. Separate static configuration into init phase to improve
performance
2. Add a init code config layer to avoid duplicated configuration
3. Add a HW_CALIBRATION_V1 caps
2021-01-25 20:30:42 +08:00
Michael (XIAO Xufeng)
7a20ea5f0e
Merge branch 'feature/support_flash_sus_res_c3' into 'master'
...
spi_flash: Add flash auto-suspend auto-resume mode on esp32c3
Closes IDF-2591
See merge request espressif/esp-idf!11888
2021-01-25 17:41:32 +08:00
Michael (XIAO Xufeng)
3d7da2c8ff
adc: simplify LL on C3
2021-01-25 15:08:55 +08:00
Armando
d8a4b247b9
adc_digi: update_adc_api_for_5M_freq_limit
...
The ``adc_digi_config_t`` struct is modified on esp32c3: configuration
of clock divider factors are not provided anymore. The SARADC sampling
frequency is provided instead. In this way, we can handle the frequency
limit better.
2021-01-25 04:51:40 +00:00
Michael (XIAO Xufeng)
56919682be
adc: remove useless adc_ll_set_sar_clk_div in LL
2021-01-25 04:51:40 +00:00
Michael (XIAO Xufeng)
90fc3e7030
adc: update the monitor and filter in the HAL on C3
...
On C3 ADC has no enable bit for monitor and filter. However we can use context variables to implement one
2021-01-25 04:51:40 +00:00
fuzhibo
19fb11549b
driver(adc): update adc ll and hal driver for esp32c3
2021-01-25 04:51:40 +00:00
Armando
02600309c8
adc: fix some regression issues
2021-01-25 04:51:40 +00:00
Michael (XIAO Xufeng)
d7d1dee208
system: reset dma when soft reset
2021-01-25 04:51:40 +00:00
Armando
d35173c147
small fix for cherrypick
2021-01-25 04:51:40 +00:00
Armando
b38f4646de
adc_digi: add dma drivers
2021-01-25 04:51:40 +00:00
Cao Sen Miao
9905da46e0
spi_flash: Add auto suspend mode on esp32c3
2021-01-25 11:14:02 +08:00
Ivan Grokhotkov
d7bac619ec
freertos: stall systimer while CPU is in debug mode
2021-01-24 11:32:17 +00:00