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
Armando
38e5043ae8
esp_psram: new psram component
2022-06-14 15:44:27 +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
songruojing
c8752cee6a
clk_tree: Refactor rtc_clk.c by adding HAL layer for clock subsystem
2022-06-13 17:47:50 +08:00
morris
5daa73d236
Merge branch 'refactor/mcpwm_hal_driver_doc' into 'master'
...
mcpwm: don't support disable carrier one-shot pulse
Closes IDFGH-7406
See merge request espressif/esp-idf!18295
2022-06-10 10:28:59 +08:00
Cao Sen Miao
6589daabb9
MMU: Add configurable mmu page size support on ESP32C2
2022-06-08 19:34:31 +08:00
morris
f7ff7ac4d0
mcpwm: clean up hal driver and add doc
2022-06-02 15:01:18 +08:00
KonstantinKondrashov
ac4c7d99fe
dport: Move DPORT workaround to G0
2022-05-31 13:44:18 +08:00
Jiang Jiang Jian
f3922f1b7f
Merge branch 'feature/flash_mmap_refactor' into 'master'
...
flash mmap: abstract R/W of MMU table instead of reg access
See merge request espressif/esp-idf!16882
2022-05-29 13:56:37 +08:00
Marius Vikhammer
9177e9fb37
Merge branch 'bugfix/cpu_cycle_count_not_iram' into 'master'
...
HAL: place cpu_ll_get_cycle_count in IRAM
Closes IDFGH-7431
See merge request espressif/esp-idf!18260
2022-05-27 10:40:50 +08:00
Marius Vikhammer
415ab25a49
HAL: place cpu_ll_get_cycle_count in IRAM
...
Closes https://github.com/espressif/esp-idf/issues/9008
2022-05-26 14:42:41 +08:00
Song Ruo Jing
cf32e49aeb
Merge branch 'refactor/cleanup_rtc_h' into 'master'
...
clk_tree: Prework2 of introducing clock subsystem control
Closes IDF-4934
See merge request espressif/esp-idf!17861
2022-05-26 09:16:47 +08:00
songruojing
a5b09cf015
rtc_clk: Clean up some clock related enum and macro in soc/rtc.h, replace with new ones in
...
soc/clk_tree_defs.h
2022-05-24 22:59:41 +08:00
Anton Maklakov
41bbea5124
i2c: fix 'comparision is always true' warning
2022-05-23 11:39:46 +07: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
Jing Li
ac0d16cdc8
Merge branch 'bugfix/fix_cannot_lslp_again_after_ulp_wakeup' into 'master'
...
sleep: fix cannot lightsleep again after a wakeup from ULP
Closes IDFGH-4396
See merge request espressif/esp-idf!17970
2022-05-13 22:25:23 +08:00
jingli
dd414b9305
esp_hw_support/sleep: fix cannot lightsleep again after a wakeup from ULP
...
Since ulp wakeup signal are connected to ulp int raw(except esp32), we
need to clear ulp int raw before sleep when ulp wakeup enabled. Otherwise,
if the ulp int raw is already set, chip will not sleep properly.
Closes https://github.com/espressif/esp-idf/issues/6229
2022-05-12 17:57:08 +08: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
b748a4fe5e
mmu: improve vaddr range check
2022-04-27 11:35:07 +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
Kevin (Lao Kaiyao)
ba9d3fe819
Merge branch 'refactor/i2s_major_refactoring_for_ng' into 'master'
...
🔨 i2s: Major refactoring for driver-NG
Closes IDF-4781 and IDF-4779
See merge request espressif/esp-idf!17484
2022-03-23 15:32:46 +08:00
Ivan Grokhotkov
8506b2f6c9
Merge branch 'bugfix/driver_hal_essl_static_analysis_fixes' into 'master'
...
driver, essl, hal: fix issues reported by PVS-Studio
Closes IDF-2749, IDF-2753, and IDF-2785
See merge request espressif/esp-idf!17490
2022-03-22 21:47:15 +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
Ivan Grokhotkov
12717cbc00
hal: fix issues reported by PVS-Studio
...
https://www.viva64.com/en/b/0790/#ID369075A8F4
https://www.viva64.com/en/b/0790/#IDF03E449184
Reported in https://github.com/espressif/esp-idf/issues/6440
2022-03-14 18:46:48 +01: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
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
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
morris
a0283234cd
Merge branch 'feature/support_esp32h2_gpio' into 'master'
...
esp32h2: support GPIO peripheral, IO_MUX, GPIO matrix
Closes IDF-4232 and IDF-3439
See merge request espressif/esp-idf!16609
2022-03-04 18:22:28 +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
morris
ec8defaa96
pulse_cnt: new driver for PCNT peripheral
2022-03-03 22:38:32 +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
morris
8c91ef7599
Merge branch 'contrib/github_pr_8430' into 'master'
...
ADC Fix compiling when included from C++ (GitHub PR)
Closes IDFGH-6804
See merge request espressif/esp-idf!17216
2022-02-24 08:42:06 +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
morris
116197040f
i2s: update copyright
2022-02-21 21:28:48 +08:00
0xFEEDC0DE64
c86fba7919
Fix compiling when included from C++
2022-02-18 15:37:07 +01:00
Ondrej Kosta
7512bdecfe
Merge branch 'feature/emac_start_stop_test' into 'master'
...
test_emac: extended Ethernet start/stop stress test
Closes IDF-4540
See merge request espressif/esp-idf!16755
2022-02-15 13:23:01 +00:00
David Cermak
8da2e4088c
esp_eth: Update esp32's EMAC API to decouple driver and vendor config
2022-02-14 16:17:29 +00:00
Ondrej Kosta
e97fd4b076
esp_eth: EMAC start/stop optimization
2022-02-14 08:21:43 +01: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
morris
8cdcb4e291
rmt: move RMT item definition from soc to driver
2022-01-06 21:43:12 +08:00
Ondrej Kosta
fa9cc49b9e
Merge branch 'bugfix/esp_eth_start_tx_buff' into 'master'
...
Fixed ESP32 EMAC driver `insufficient TX buffer size`
Closes WIFI-4194
See merge request espressif/esp-idf!16457
2022-01-05 09:40:12 +00:00
Ondrej Kosta
1150a11c56
Fixed ESP32 EMAC driver insufficient TX buffer size
which could followed esp_eth_stop and esp_eth_start sequence
2021-12-23 10:48:38 +01:00
morris
2c810f8451
timer: save alarm value in driver layer
2021-12-23 11:39:32 +08:00
Armando
4dc0d6b2fe
adc: support adc dma driver on all chips
2021-12-16 00:19:15 +00:00
morris
ac5c2eaa28
mcpwm: fix implicit conversion in LL function
...
Closes https://github.com/espressif/esp-idf/issues/8066
2021-12-14 17:26:55 +08:00
Omar Chebib
76fbd73b20
Merge branch 'bugfix/ledc_auto_clk_refactor' into 'master'
...
ledc: improved support for ESP32-C3 and refactored divisor calculation
Closes IDF-2441
See merge request espressif/esp-idf!13837
2021-11-12 03:21:46 +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
songruojing
7ec38fcc42
gpio: Fix the bug that esp32 gpio interrupt cannot be triggered on core 1
...
Introduced in 874a720286
Closes https://github.com/espressif/esp-idf/issues/7594
2021-11-11 12:14:32 +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
SalimTerryLi
d9f4ae02f1
mcpwm: rename keyword 'operator' which is not valid in cpp
...
Closes https://github.com/espressif/esp-idf/issues/7542
2021-09-10 12:41:42 +08:00
laokaiyao
c5afd7ce34
i2s: fix write failure on ESP32 in 32bit slave mode
2021-09-03 17:36:44 +08:00
laokaiyao
8d18a9c614
emac: optimise iperf performane
2021-09-01 19:11:28 +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
Marius Vikhammer
2206c5315e
Merge branch 'bugfix/aes_unaligned_access' into 'master'
...
aes: fix unaligned access
Closes IDFGH-5506
See merge request espressif/esp-idf!14659
2021-08-27 01:33:44 +00:00
morris
2deeba9d1a
Merge branch 'feature/mcpwm-IRAM_ISR-kconfig' into 'master'
...
mcpwm: ISR can be placed to IRAM by menuconfig
Closes IDFGH-5732
See merge request espressif/esp-idf!14947
2021-08-26 10:08:16 +00:00
SalimTerryLi
e67bcda6d1
mcpwm: ISR can be placed to IRAM by menuconfig
...
resolves https://github.com/espressif/esp-idf/issues/7449
2021-08-26 15:58:46 +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
morris
3bfd8f5d5f
mcpwm: update register file according to TRM
2021-08-24 15:38:46 +08:00
morris
bb87fd8f08
Merge branch 'refactor/pcnt_driver_esp32s3' into 'master'
...
pcnt: soc update and hal refactor
See merge request espressif/esp-idf!14698
2021-08-20 04:23:15 +00: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
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
morris
56760c9669
pcnt: refactor hal driver
2021-08-10 17:19:21 +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
SalimTerryLi
f4314af913
MCPWM: expose API to set timer resolution
...
Closes https://github.com/espressif/esp-idf/issues/1101
2021-07-30 18:52:17 +08:00
morris
f907009056
Merge branch 'refactor/cleanup_mcpwm_examples' into 'master'
...
mcpwm: more clean up (example + LL + doc)
Closes IDF-3295
See merge request espressif/esp-idf!12798
2021-07-29 10:41:07 +00: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
morris
88c87bfe56
mcpwm: update hal and soc naming
2021-07-26 22:32:45 +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
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
8f822db28c
spi: Fix SPI Slave TX/RX bitlen configuring wrong registers
...
The maximum input length for the SPI Slave should be applied to the read
buffer configuration, not for the write buffer. Similarly, the output
configuration should also target the write buffer.
2021-06-28 18:58:59 -03:00
Michael (XIAO Xufeng)
99988fa454
Merge branch 'refactor/emac_hal' into 'master'
...
hal/emac_hal: refactor of emac_hal
Closes IDF-3155
See merge request espressif/esp-idf!13500
2021-06-22 15:34:51 +00: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
laokaiyao
fe354f1c50
hal/emac_hal: refactord emac_hal
2021-06-16 09:48:21 +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
morris
d4fe219c49
mcpwm: refactor driver
2021-06-09 12:27:01 +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
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
Sergey Gorban
850de61e34
Fixed error in "touch_ll_get_sleep_time" function for ESP32
...
Merges https://github.com/espressif/esp-idf/pull/6895
2021-05-26 16:23:18 +08:00
laokaiyao
e66f25caf2
driver/mcpwm: fix the misleading of mcpwm_capture_enable parameters
...
closes https://github.com/espressif/esp-idf/issues/5032
2021-05-13 12:23:19 +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
e449728b7d
hal: fix planted break instruction for Xtensa targets
...
On Xtensa, "break 0, 0" encodes a software breakpoint which is placed
into the program by the debug monitor. Planted breakpoints (added in
the code to trap into debugger) should be encoded as "break 1, 15".
See table "Breakpoint Instruction Operand Conventions" in the ISA
Reference manual.
2021-04-22 23:33:47 +02:00
Ivan Grokhotkov
da90775d98
hal: mpu: fix signed overflow error
2021-04-22 23:33:47 +02:00
Ivan Grokhotkov
9069f70db3
system: add option to enable undefined behavior sanitizer (UBSAN)
...
Closes https://github.com/espressif/esp-idf/issues/1574
2021-04-22 23:33:45 +02:00
Darian Leung
44bc5411b7
TWAI: Fix incorrect CAP name
...
Fixes a bug where SOC_TWAI_BRP_DIV_SUPPORTED was mistyped preventing
slower bit rates from being enabled on ESP32 revision 2 and 3 chips
2021-04-16 18:18:37 +08: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
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
aleks
193f1f9b4e
driver: fix uart handler in iram calls inline uart_ll_is_tx_idle
2021-03-31 14:39:59 +00: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
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
Renz Bagaporo
1efdcd69d9
xtensa: move out trax
2021-02-26 19:45:48 +08:00
morris
7b37158ede
rmt: distinguish group and channel in HAL layer
2021-02-25 12:42:23 +08:00
morris
6dc7f95342
mcpwm: fix wrong meta information
2021-02-22 20:23:35 +08:00
Armando
db3bf8b544
spi: refactor spi_common dma allocator
2021-02-22 07:06:05 +00:00
Armando
c438ad5d72
spi: apply gdma allocator to SPI
2021-02-22 07:06:05 +00:00
Michael (XIAO Xufeng)
da4b4fc565
Merge branch 'bugfix/mcpwm_can_set_two_falut_signal' into 'master'
...
mcpwm: fix second fault line broken issue
Closes IDFGH-4194
See merge request espressif/esp-idf!12119
2021-01-27 11:36:30 +08:00
Michael (XIAO Xufeng)
3d7da2c8ff
adc: simplify LL on C3
2021-01-25 15:08:55 +08:00
morris
ceab7daea8
mcpwm: fix wrong capture edge
2021-01-22 16:17:59 +08:00
Li Shuai
a43de3a44b
fix set UART_FORCE_XOFF
can't stop new Tx request issue
2021-01-19 14:51:22 +08:00
Li Shuai
355dd10257
light sleep: dfs support for esp32c3
2021-01-19 14:50:58 +08:00
ninh
659d805411
esp_wifi: light sleep optimization
2021-01-18 15:31:03 +08:00
ninh
27aa6c289f
components/pm: Add slp gpio configure workaround
2021-01-15 15:34:45 +08:00
Renz Bagaporo
ff2d9fd96c
[freertos] Silence sign-conversion warning
2021-01-14 10:54:15 +11:00
Angus Gratton
f683db7aea
Merge branch 'feature/c3_IDF-2554' into 'master'
...
global: Uses CCOUNT API instead of XTHAL macro
Closes IDF-2554
See merge request espressif/esp-idf!11954
2021-01-13 12:55:21 +08:00
KonstantinKondrashov
dada7cd035
global: Uses CCOUNT API instead of XTHAL macro
2021-01-12 16:24:23 +08:00
morris
753a929525
global: fix sign-compare warnings
2021-01-12 14:05:08 +08:00
morris
9e7d2c0065
esp32c3: format and clean up interrupt and os port code
2021-01-05 15:39:46 +08:00
Felipe Neves
5d316ac142
interrupt: added INTC FLEXIBLE capabillity to esp32c3 CPU caps
2021-01-05 15:39:46 +08:00
Felipe Neves
09bc1580be
intr_allocator: add abstractions for priority, type and edge-ack interrupt controller functions
2021-01-05 15:39:46 +08:00
Angus Gratton
27a9cf861e
driver: Add esp32c3 drivers (except ADC/DAC) and update tests
...
Some ESP32-C3 drivers are still pending.
Based on internal commit 3ef01301fffa552d4be6d81bc9d199c223224305
2020-12-23 09:53:24 +11:00
Marius Vikhammer
457ce080ae
AES: refactor and add HAL layer
...
Refactor the AES driver and add HAL, LL and caps.
Add better support for running AES-GCM fully in hardware.
2020-12-10 09:04:47 +00:00
Angus Gratton
7c08be5771
hal: Add initial ESP32-C3 support
...
From internal commit 7761d6e8
2020-11-30 15:23:15 +11:00
Armando
05a4a8d864
uart: seperate sclk and baudrate setting
2020-11-24 19:12:52 +08:00
Armando
fb8b905539
uart: add uart support on esp32s3
2020-11-24 19:12:51 +08:00
Michael (XIAO Xufeng)
af992c26bc
Merge branch 'bugfix/fix_x32k_startup_slow_bug' into 'master'
...
bugfix: Fix xtal 32k not oscillate or oscillate too slowly issue for esp32
See merge request espressif/esp-idf!10519
2020-11-24 17:37:29 +08:00
chaijie
a48b5246cc
ESP32: Fix xtal 32k not oscillate or oscillate too slowly issue
...
ESP32 in revision0 and revision1 uses touchpad to provide
current to oscillate xtal 32k. But revision2 and revision3
do not need to do that.
Note: touchpad can not work and toupad/ULP wakeup sources
are not available when toupad provides current to xtal 32k
2020-11-23 19:38:11 +08:00
Armando
9c507982aa
spi: fix spi_ll.h func name
...
On esp32 and esp32s2:
``spi_ll_dma_set_out_eof_generation`` is modified to
``spi_ll_dma_set_rx_eof_generation``.
``spi_dma_ll_set_rx_eof_generation`` is modified to
``spi_dma_ll_set_out_eof_generation``.
Because on ESP32S3, this bit ``out_eof_mode`` is moved to DMA related
registers.
2020-11-19 19:33:02 +08:00
Michael (XIAO Xufeng)
caf83b88ba
Merge branch 'feature/bringup_i2c_for_s3' into 'master'
...
I2C: Add support for esp32s3 and add source clock allocator
Closes IDF-2011
See merge request espressif/esp-idf!10923
2020-11-12 22:12:58 +08:00
Cao Sen Miao
6eee601cf6
i2c: Add supports on esp32s3
2020-11-12 11:32:45 +08:00
morris
deea402cf4
timer: pooling update bit before reading count value
2020-11-12 10:31:38 +08: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
ff976867b3
rmt: split TX and RX in LL driver
...
Split TX and RX function in LL driver.
Channel number is encoded in driver layer.
Added channel signal list in periph.c
2020-11-05 19:00:55 +08:00
chenjianqiang
9465af0066
rmt: support esp32s3
2020-11-05 19:00:55 +08:00
morris
e4c8ec6174
timergroup: move interrupt index into peripheral description file
...
1. Added timer_group_periph.c file, describing module global signals
(e.g. interrupt index)
2. Added more caps in soc_caps.h
2020-11-03 18:16:50 +08:00
Michael (XIAO Xufeng)
3bacf35310
esp_flash: support high capacity flash chips (32-bit address)
2020-10-29 18:20:11 +08:00
Armando
f7e91ef6c1
spi: esp32s3 bringup for spi
2020-10-26 11:28:34 +08:00
Renz Bagaporo
e7460c1f00
soc: remove unecessary headers in dport_access.h
2020-10-22 19:42:34 +08:00
morris
74d78148bc
pcnt: add pcnt peripheral signal connections
...
pcnt: fix bug in clear interrupt status
2020-10-19 11:56:18 +08:00
Michael (XIAO Xufeng)
647dea9395
soc: combine xxx_caps.h into one soc_caps.h
...
During HAL layer refactoring and new chip bringup, we have several
caps.h for each part, to reduce the conflicts to minimum. But this is
The capabilities headers will be relataive stable once completely
written (maybe after the featues are supported by drivers).
Now ESP32 and ESP32-S2 drivers are relative stable, making it a good
time to combine all these caps.h into one soc_caps.h
This cleanup also move HAL config and pin config into separated files,
to make the responsibilities of these headers more clear. This is
helpful for the stabilities of soc_caps.h because we want to make it
public some day.
2020-10-17 16:10:15 +08:00
Marius Vikhammer
949fb8e63a
SHA: add HAL layer and refactor driver
...
Add a LL and HAL layer for SHA.
2020-10-09 08:24:08 +00:00
Michael (XIAO Xufeng)
fe37db3271
esp_flash: fix the incorrect check_idle logic in LL and chip_driver
2020-10-02 05:34:36 +00:00
Angus Gratton
83a7891f84
Merge branch 'feature/intr_alloc' into 'master'
...
feature/intr_alloc: moved interrupt allocator to the esp-system and refactored it moving all platform specific code to its place
Closes IDF-1913
See merge request espressif/esp-idf!10267
2020-09-30 07:44:12 +08:00
Felipe Neves
2e826b7a8f
intr_alloc: split interrupt allocator into common-code and platform-code
...
esp_system: removed repeated interrupt allocator code and moved common code to esp_system
xtens: moved xtensa specific code from freertos to the xtensa component
hal/interrupt_controller: added interrupt controller hal and ll files
docs: update the doxyfile with new location of esp_itr_alloc.h file
xtensa: fixed dangerous relocation problem after moving xtensa interrupt files out of freertos
docs: removed Xtensa reference from intr_allocator api-reference
xtensa: pushed the interrupt function that manages non iram interrupts to the xtensa layer
esp_system/test: fixed platform dependent setting for intr_allocator tests
hal: rename the functions used to manage non iram interrupt mask.
2020-09-30 07:44:12 +08:00
Michael (XIAO Xufeng)
c7264f04c6
Merge branch 'bugfix/fix_incorrect_i2s_pdm_clk_issue' into 'master'
...
Bugfix(I2S): Fix I2S PDM clock incorrect issue when using APLL.
Closes IDFGH-3423 and IDFGH-3106
See merge request espressif/esp-idf!9101
2020-09-28 11:35:31 +08:00
Michael (XIAO Xufeng)
4b95f7efa8
Merge branch 'feature/spi_dma_hal_ll_refactor' into 'master'
...
spi: refactor DMA ll layer functions
Closes IDFGH-3538 and IDFGH-2555
See merge request espressif/esp-idf!9929
2020-09-23 15:32:41 +08:00
Armando
59e350b195
spi: seperate the pointer for the TX and RX DMA
2020-09-21 20:33:56 +08:00
Armando
27a6f2666a
spi_master: refactor hal context structures
...
This commit seperates the hal context into different configuration
structures based on their members' definitions. Through refactoring
spi_master.c, the device related configuration should be passed in and
set each time before a new transaction. The transaction related
configuration now is a local variable in case of the fact that error
occurs without any notice when user forgets to pass new transaction
configuration in (which means the old driver will use the trans_config
that is saved from last transaction).
Besides, via above refactor, this commit fixs a bug which leads to
wrong cs polarity setting.
Closes https://github.com/espressif/esp-idf/pull/5490
Moreover, via above refactor, this commit also fixs a bug about duplex
mode switching when multiple devices are added to the bus.
Closes https://github.com/espressif/esp-idf/issues/4641
2020-09-21 20:32:41 +08:00
Wielebny666
db6fbba73e
spi_master: correctly set cs polarity
...
All devices must be added to the same spi line before use.
Partly solve this problem: https://github.com/espressif/esp-idf/pull/5490
2020-09-17 12:05:57 +00:00
Marius Vikhammer
b2f390df01
hal: update link to HAL readme.md
...
The HAL readme was moved during refactoring, but links were not updated.
2020-09-11 15:48:08 +08:00
Ivan Grokhotkov
3a51584fbb
Merge branch 'bugfix/uart_read_o2' into 'master'
...
hal: workaround for UART FIFO read on ESP32 with -O2 optimization
Closes IDFCI-97
See merge request espressif/esp-idf!10263
2020-09-08 00:01:48 +08:00
Zhang Hu
6a5faa0fd7
Driver(I2S): Fix I2S PDM clock incorrect issue when using APLL.
...
closes https://github.com/espressif/esp-idf/issues/5127
closes https://github.com/espressif/esp-idf/issues/5386
2020-09-07 08:08:22 +00:00
Michael (XIAO Xufeng)
91af5eaf4f
Merge branch 'refactor/twai_hal_state' into 'master'
...
Refactor TWAI HAL to store state information
Closes IDF-1633
See merge request espressif/esp-idf!9789
2020-09-03 23:22:30 +08:00
Ivan Grokhotkov
c3008e8ae1
hal: workaround for UART FIFO read on ESP32 with -O2 optimization
2020-09-03 12:13:11 +02:00
Wu Bo Wen
658b56a690
doc/adc: modifications in the adc documentation and adc headers
2020-09-02 11:30:48 +00:00
Darian Leung
7398390049
TWAI: Track HW state in HAL
...
This commit refactors the TWAI HAL such that it
now tracks harwdare state instead of the driver
layer. Some HAL and LL cleanup was also done.
2020-09-02 13:03:41 +08:00
Michael (XIAO Xufeng)
5425ef4ee4
hal: extract hal component from soc component
2020-09-01 13:25:32 +08:00