Commit Graph

520 Commits

Author SHA1 Message Date
morris
88c87bfe56 mcpwm: update hal and soc naming 2021-07-26 22:32:45 +08:00
Li Shuai
ead49c7acf Merge branch 'feature/support_esp32s3_gpio_sleep_iso' into 'master'
light sleep: add gpio isolate function at slept status for esp32s3

See merge request espressif/esp-idf!14370
2021-07-22 07:52:55 +00: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
Marius Vikhammer
a29a6ceef0 uart: update register headers and examples for S3 2021-07-22 12:05:49 +08:00
morris
42f3bca5a1 usb: update LL to support PHY selection
ESP32-S3 has two USB peripheral, one is USB_OTG, another is
USB_JTAG_SERIAL

A new mux has been introduced to select internal/external PHY interface.
2021-07-22 10:40:08 +08: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
Li Shuai
512800891e light sleep: add uart new final state machine support for esp32s3 2021-07-20 11:27:14 +08:00
Darian Leung
d604bf05af TWAI: Fix incorrect configuration initializers for low speed bit rates
This commit fixes the timing configuration initializers for the
1K, 5K, and 10K bit rates.
2021-07-19 14:27:39 +08:00
Omar Chebib
a7b6ec85b8 Merge branch 'feature/move_memory_layout_to_heap' into 'master'
G0: Memory layouts are now part of heap components

Closes IDF-1264

See merge request espressif/esp-idf!14028
2021-07-19 06:23:19 +00:00
Zim Kalinowski
da9e5ca38a Merge branch 'bugfix/usb_device_struct_cleanup' into 'master'
Cleanup USB device struct

Closes IDFGH-5223

See merge request espressif/esp-idf!13473
2021-07-19 04:23:20 +00:00
Michael (XIAO Xufeng)
59195b6fb3 Merge branch 'bugfix/update_gdma_soc' into 'master'
gdma: alignment setting for PSRAM transfer

Closes IDF-1524

See merge request espressif/esp-idf!13976
2021-07-17 14:04:03 +00:00
Renz Bagaporo
7c22cccb9c esp32: cleanup build script 2021-07-16 20:14:27 +08:00
Renz Bagaporo
702e41e1c8 esp32s2: move crypto related functions 2021-07-16 20:14:26 +08:00
morris
3176ba11d8 gdma: update DMA soc data for esp32-s3 2021-07-16 14:47:09 +08:00
morris
217d3eb690 Merge branch 'feature/adc_single_sample_support_on_s3' into 'master'
adc: support adc single read on s3

Closes IDF-3118

See merge request espressif/esp-idf!14036
2021-07-16 06:32:08 +00:00
Omar Chebib
9dd02354d2 Merge branch 'feature/riscv_panic_backtrace' into 'master'
espsystem: add support for RISC-V panic backtrace

Closes IDF-2064

See merge request espressif/esp-idf!12070
2021-07-16 04:13:44 +00:00
laokaiyao
27d9657b6c driver/adc: support adc single sample on s3 2021-07-15 19:13:50 +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)
f4e44b0b8e Merge branch 'bugfix/i2c_slave_esp32s2' into 'master'
i2c: fix I2C slave clock source selection

Closes IDF-3177

See merge request espressif/esp-idf!13670
2021-07-15 08:36:46 +00:00
Sachin Parekh
fed4c4c313 Merge branch 'fix/esp32c3_memprot_split_line' into 'master'
esp32c3/memprot: Fix incorrect calculations and register access

Closes IDF-3510 and IDF-3514

See merge request espressif/esp-idf!14201
2021-07-15 05:08:14 +00:00
Omar Chebib
0771bd1711 espsystem: Rearchitecture and fix eh_frame_parser bugs
eh_frame_parser is architecture independent, thus the files have
been rearchitectured. Some bugs have been fixed in the test.
A README file has also been added to eh_frame_parser host test
directory.

eh_frame_parser is now able to detect empty gaps in .eh_frame_hdr
table (missing DWARF information).
Fix a bug occuring when parsing backtraces originated from abort().
Fix build missing dependencies issue.
2021-07-15 12:47:51 +08:00
Omar Chebib
2575c0d49f i2c: fix I2C slave clock source selection
In I2C slave mode, clock source can now be changed, according to
the flags specified in `i2c_config_t` structure. Thus, ESP32-S2
can now act as an I2C slave, even with a 400KHz master clock.
2021-07-15 12:28:57 +08:00
Armando
6bb6f3ebc4 adc: refactor esp32s3 adc_ll.h 2021-07-15 10:33:03 +08:00
Omar Chebib
c4f57af6c9 G0: Memory layouts are now part of heap components 2021-07-15 11:38:23 +10:00
Li Shuai
d2aeb9e4ce light sleep: add gpio configure workaround at slept status for esp32s3 2021-07-14 21:57:21 +08:00
Ivan Grokhotkov
1d44e40fb1 hal: spi_flash: avoid calling memcpy with NULL buffer
In practice, calling memcpy with NULL buffer and 0 size works on the
ESP32, but the C standard considers this an undefined behavior.
When building with UBSAN checks enabled, compiler will insert a check
that memcpy argument is non-NULL, regardless of the size argument.

This caused a failure in tools/test_apps/system/panic, which is built
with USBAN enabled for several components.
2021-07-09 11:24:25 +02:00
Angus Gratton
c2c0e4de3b Merge branch 'feature/s3_wdt_bringup' into 'master'
TIMG and WDT bringup for S3

Closes IDF-1881, IDF-3229, IDF-3301, and IDF-3274

See merge request espressif/esp-idf!13957
2021-07-09 04:43: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
Ondrej Kosta
a6db3a5e77 esp_eth: Change clock mode setting
RMII clock mode is made to be run-time configurable.

Closes https://github.com/espressif/esp-idf/issues/6564
Closes https://github.com/espressif/esp-idf/issues/7107
2021-07-08 14:27:31 +02:00
Marius Vikhammer
71c1da8952 timer group: add timer group and WDT support for ESP32S3
Regenerate timer group header files and update LL, check examples
and update docs.
2021-07-06 16:21:43 +08:00
morris
d9d4db43a1 Merge branch 'feature/dedic_gpio_esp32s3' into 'master'
Dedicated gpio driver on esp32s3

Closes IDF-3387

See merge request espressif/esp-idf!14196
2021-07-06 03:20:04 +00:00
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
Shu Chen
75bd02bd46 esp32h2: add some more fixes and TODOs 2021-07-01 20:36:39 +08:00
Shu Chen
2df4ddf998 esp32h2: fixes after rebase 2021-07-01 19:53:50 +08:00
Shu Chen
ee23a489b9 esp32h2: code clean up 2021-07-01 19:53:50 +08:00
Shu Chen
205cd469e9 esp32h2: update driver/hal/soc components to support esp32h2 2021-07-01 19:53:11 +08:00
Shu Chen
983cca8b27 esp32h2: copy driver/hal/soc components from esp32c3
Copy the esp32c3 code without any change:
 * components/driver/esp32h2
 * components/esp32h2
 * components/hal/esp32h2
 * components/soc/esp32h2
2021-07-01 19:53:11 +08: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
morris
c8c3015018 dedic_gpio: support on esp32s3 2021-06-30 18:10:54 +08:00
Darian Leung
d37451f2c7 USB HCD: Add pipe persistence feature
This commit adds a pipe persistence feature allowing HCD pipes
to survive a port reset.
2021-06-29 21:09:27 +08: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
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
Gustavo Henrique Nihei
8639e3511b spi_slave: Fix MOSI/MISO enable on transaction preparation
MOSI and MISO enablement were conditioned to the existence of TX
and RX buffers, respectively. This is valid for the SPI Master,
but for the SPI Slave the opposite is expected.
2021-06-28 13:53:40 -03:00
Michael (XIAO Xufeng)
fc2905384c Merge branch 'feature/support_esp32s3_728_gpio_driver' into 'master'
gpio: update gpio driver to support esp32s3

Closes IDF-3224 and IDF-3273

See merge request espressif/esp-idf!13942
2021-06-28 09:49:01 +00:00
bizhuangyang
78c67d2384 gpio:support gpio in/out/interrupt for esp32s3(728)
Add support of gpio for esp32s3(728). Adjust some pins and comments in test_gpio.c. Add support for gpio functions for gpio19 and gpio20. Update S3 programming guide Peripheral API: gpio and sigmadelta. Add unit test for input and output function of S3 USB pins(GPIO19 and GPIO20) and C3 USB pins(GPIO18 and GPIO19). Adjust input only test in test_spi_master.c.
2021-06-28 11:44:14 +08:00
Alexey Gerenkov
fcad8c7f42 hal/esp32c3: Avoid entering WFI mode under debugger 2021-06-24 13:10:11 +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
40f350693f rmt: update soc data with regtool for esp32s3 2021-06-22 15:29:11 +08:00
morris
8e483e34a8 rmt: restructure rmt_signal_conn_t 2021-06-22 15:29:11 +08: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
Cao Sen Miao
f2fe0847d5 usb_serial_jtag: add initial support for S3 (including flashing, monitoring, writing, and reading) but console is not avaliable now 2021-06-18 12:42:41 +08:00
Angus Gratton
7a74f5f38c Merge branch 'bugfix/hcd_multiple_bugs' into 'master'
(2) USB HCD: Fix multiple bugs

Closes IDF-3393

See merge request espressif/esp-idf!13932
2021-06-18 01:33:04 +00:00
Cao Sen Miao
11672dc9e5 soc: update the csv headers for esp32s3 2021-06-16 18:04:18 +08:00
laokaiyao
fe354f1c50 hal/emac_hal: refactord emac_hal 2021-06-16 09:48:21 +08:00
Darian Leung
5f9692ae97 HCD: Fix multiple bugs
This commit fixes the following bugs with the HCD and USB Host HAL

- Make the setting to periodic frame list and scheduling to occur after
  a reset command
- All port errors states should put the port into the HCD_PORT_STATE_RECOVERY
  state.
- Fixed incorrect return type of hcd_port_command() function
2021-06-15 18:52:56 +08:00
Michael (XIAO Xufeng)
1322a44588 Merge branch 'feature/mcpwm_refactor_and_support_esp32s3' into 'master'
MCPWM: refactor driver and support ESP32-S3

Closes IDF-1765

See merge request espressif/esp-idf!11907
2021-06-09 16:45:20 +00: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
Angus Gratton
bc4eb2071c Merge branch 'feature/toolchain_2021r1' into 'master'
Bring 2021r1 toolchains

Closes IDFGH-5009

See merge request espressif/esp-idf!13554
2021-06-09 05:06:23 +00: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
Michael (XIAO Xufeng)
e005ec0899 Merge branch 'feature/s3_base_support' into 'master'
soc: S3 base support

See merge request espressif/esp-idf!13827
2021-06-07 12:07:08 +00:00
Anton Maklakov
5a982ffe7a hal: fix ee.get_gpio_in command for esp32-s3 2021-06-07 12:52:50 +07:00
Marius Vikhammer
19a492bc8d soc: add base support for ESP32-S3
Updates the following with changes from verification branches:

 * esp_rom linker files
 * rtc_cntl and system reg and struct headers

Also updates:
 * GDMA driver with new register layout
 * esptool submodule commit
2021-06-07 10:40:14 +08: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
Michael (XIAO Xufeng)
b5d2e9478b Merge branch 'bugfix/spi_ll_intr_bits' into 'master'
spi: Fix wrong target register for interrupt disable

See merge request espressif/esp-idf!13646
2021-06-03 10:22:25 +00:00
Alex Lisitsyn
46020fe13a usb/hal/soc: initial copy of usbh support from esp32s2
copy required usbh driver files from esp32s2
check usb host functionality using unit tests on esp32s3
2021-06-02 17:57:50 +08: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
Michael (XIAO Xufeng)
fe7993ead4 Merge branch 'feature/usb_hcd_intr_and_isoc_support' into 'master'
USB HCD: Add support for interrupt and isochronous pipes

Closes IDF-3110

See merge request espressif/esp-idf!12807
2021-05-28 10:14:46 +00:00
Darian Leung
7f42104893 HCD: Add support for interrupt and isochronous pipes
This commit adds support for interrupt and isochronous pipes to the HCD:
- HCD now internally uses double buffering
- Added test cases for interrupt and isochronous transfers
- Reorganized test cases for each transfer type
- Updated API comments and maintainer's notes

Some minor bugs were also fixed
2021-05-26 22:55:12 +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
daiziyan
611ecc619b docs:translate chip series comparison table and update adc_types.h 2021-05-19 16:25:27 +08:00
Michael (XIAO Xufeng)
8409485b22 Merge branch 'doc/fix_misleading_of_mcpwm_capture_enable_doc' into 'master'
driver/mcpwm: fix the misleading of mcpwm_capture_enable parameters

Closes IDFGH-3000

See merge request espressif/esp-idf!13497
2021-05-16 15:15:26 +00:00
Darian Leung
3bb5f86a53 Fix incorrect D- pulldown and cleanup USB device struct
This commit fixes the incorrect setting of the D- pulldown resistor in the USB LL.
The usb_struct.h used by USB device mode has also been cleaned up.
2021-05-13 17:18:35 +08:00
Michael (XIAO Xufeng)
9bee350a39 Merge branch 'bugfix/sdio_slave_ret_check' into 'master'
SDIO slave: fix ignored callback return value (Github PR)

Closes IDFGH-4976

See merge request espressif/esp-idf!13436
2021-05-13 06:32:40 +00:00
Michael (XIAO Xufeng)
e941bc838c Merge branch 'feature/lcd_driver' into 'master'
esp_lcd component panel driver

Closes IDF-2933 and IDF-2934

See merge request espressif/esp-idf!12813
2021-05-13 04:29:07 +00: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
morris
e10202a608 lcd: add esp_lcd component
* Support intel 8080 LCD panel IO on ESP32-S3
* Support RGB LCD panel on ESP32-S3
* Support SPI && I2C LCD panel IO on all esp chips
2021-05-12 17:53:32 +08:00
laokaiyao
48c848a895 driver/ledc: support invert channel output 2021-05-11 11:54:16 +08:00
Kang Zuoling
8887133d0c touch_sensor: fix esp32s2 touch sensor default power source 2021-05-08 11:09:17 +08:00
Michael (XIAO Xufeng)
758238a8a1 Merge branch 'bugfix/separate_gdma_tx_rx_interrupt' into 'master'
gdma: separate tx/rx channel interrupt

Closes IDF-3181

See merge request espressif/esp-idf!13367
2021-05-06 16:38:44 +00:00
Michael (XIAO Xufeng)
3f2f80effc Merge branch 'feature/support_esp32s3_tinyusb_driver' into 'master'
soc/hal/tinyusb: add tinyusb support esp32s3

Closes IDF-2692

See merge request espressif/esp-idf!12668
2021-05-06 08:21:01 +00:00
Alex Lisitsyn
ea6710ce98 soc/hal: add tinyusb support esp32s3
add usb hal/soc, usb_ll files and esp32s3 target for usb
move usb_hal.h into soc common folder
soc/hal: fix soc and periph for usb
tinyusb: fix tinyusb io header
hal: usb_ll fix pull up/down config for esp32s3
soc/hal: fix peripheral addresses
2021-05-06 16:20:54 +08: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
Dániel Buga
c8b697a114 Fix ignored return value.
sdio_ringbuf_send ignores the return value of the callback.

Merges https://github.com/espressif/esp-idf/pull/6768
2021-05-05 15:34:24 +02: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
Michael (XIAO Xufeng)
bea022ce1c Merge branch 'refactor/usb_common_and_hal_types' into 'master'
Separate USB HAL and common USB types

Closes IDF-2931

See merge request espressif/esp-idf!12642
2021-04-23 12:50:35 +00: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
Angus Gratton
96c2acd9a8 Merge branch 'refactor/strip_systimer_hal_layer' into 'master'
refactor HAL driver of systimer to a common systimer_hal

Closes IDF-2996

See merge request espressif/esp-idf!13027
2021-04-23 07:45:31 +00:00
Michael (XIAO Xufeng)
fdb8736a95 Merge branch 'feature/spi_slave_hd_segment_example' into 'master'
spi_slave_halfduplex: add an example for segment mode

Closes IDF-1699

See merge request espressif/esp-idf!10043
2021-04-23 03:23:25 +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
morris
ec898b771e systimer: strip hal driver 2021-04-22 21:08:39 +08:00
morris
7c1e1c9e2d systimer: update soc data 2021-04-22 21:07:35 +08:00
morris
7eb9ecb4f6 esp_ds: move timeout mechanism to driver layer 2021-04-22 21:07:35 +08:00
Darian Leung
2906a25988 Separate USB HAL and common USB types
This commit separates out the common USB types used throughout most of the stack into its
own header file inside the USB component. The types used in the USB HAL are now exclusive
to the HAL.
2021-04-22 19:24:48 +08:00
Armando
85e29dace7 spi_slave_hd: add callback after data is loaded to the DMA for segment mode 2021-04-20 20:08:29 +08: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
bb9aa806f7 panic: handlers can now be placed in flash
By unchecking "Place panic handler code in IRAM" in the menuconfig,
the panic handlers will be placed in flash. Of course, flash cache must
be activated when entering panic handlers.
2021-04-15 11:58:46 +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)
1f29036ead Merge branch 'feat/c3_driver_api_cleanup' into 'master'
driver: cleanup i2c, i2s on C3

Closes IDF-2759 and IDF-2760

See merge request espressif/esp-idf!12329
2021-04-13 09:00:11 +00:00
Michael (XIAO Xufeng)
7e06a60c0d Merge branch 'refactor/no_dac_on_esp32s3' into 'master'
dac: added DAC support macro

Closes IDF-1777

See merge request espressif/esp-idf!13038
2021-04-12 10:52:33 +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
Michael (XIAO Xufeng)
67941fc495 i2s: removed unsupported features on different targets 2021-04-12 15:51:54 +08:00
Michael (XIAO Xufeng)
82e4a2431a i2c: removed unsupported features on different targets 2021-04-12 15:51:19 +08:00
morris
75dfd970b4 dac: added DAC support macro
Remove DAC support on ESP32-S3
2021-04-12 12:04:46 +08:00
Martin Vychodil
f27c9c5139 esp32c3: memprot API upgrade and test application
Closes IDF-2641
2021-04-12 13:44:11 +10:00
Michael (XIAO Xufeng)
57af5acefe Merge branch 'ci/enable_all_test_for_i2c_on_c3' into 'master'
I2C: enable all unit test for i2c on esp32c3

Closes IDF-2494

See merge request espressif/esp-idf!12474
2021-04-08 12:31:51 +00:00
Michael (XIAO Xufeng)
925dacd7fb Merge branch 'bugfix/remove_HSPI_macro_on_c3' into 'master'
spi: remove HSPI macros on esp32c3 and esp32s3

Closes IDF-2535

See merge request espressif/esp-idf!12637
2021-04-08 09:33:18 +00: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
Armando
9b9ea71ff9 spi: remove HSPI macro on esp32c3 and esp32s3 2021-04-06 13:42:49 +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
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
e9995fe165 adc: add pm_lock to adc driver on esp32c3 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
69a0f8b9bb adc: seperate hal layer and driver layer 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
Michael (XIAO Xufeng)
67ba80f2ec Merge branch 'bugfix/reduce_the_consumption_of_touch_sensor_during_deep_sleep' into 'master'
fix: reduce the consumption of touch sensor during deep sleep

See merge request espressif/esp-idf!12248
2021-03-22 07:10:44 +00:00
Angus Gratton
54edd4fc58 Merge branch 'feature/wdt_c3' into 'master'
wdt: Fix RTC_SLOW_CLK for chips, corrects WDT timeout.

Closes IDF-2118 and IDF-2332

See merge request espressif/esp-idf!12796
2021-03-22 06:48:58 +00:00
Michael (XIAO Xufeng)
3a90d51831 Merge branch 'refactor/using_isr_callback_in_timer_example' into 'master'
TIMG: clean up timer example and add example test

Closes IDF-2722, IDF-2766, and IDF-2347

See merge request espressif/esp-idf!12218
2021-03-22 06:36:32 +00:00
KonstantinKondrashov
aa1338bf23 wdt: Fix timeout and RTC_SLOW_CLK
RTC_SLOW_CLK
ESP32:    150kHz
ESP32-S2:  90kHz
ESP32-S3: 150kHz
ESP32-C3: 150kHz
2021-03-19 00:15:18 +08:00
Michael (XIAO Xufeng)
4028d4e083 Merge branch 'feature/mcpwm_add_peripheral_signal_list' into 'master'
mcpwm: added peripheral signal description list

See merge request espressif/esp-idf!12480
2021-03-18 10:07:59 +00:00
Jiang Jiang Jian
d38eabf0c2 Merge branch 'bugfix/spi_flash_compatible_with_rom_c3_and_s3' into 'master'
spi_flash: make spiflash compatible with ESP32C3 and ESP32S3 ROM

See merge request espressif/esp-idf!12713
2021-03-18 04:08:06 +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
f5ca47c0fc mcpwm: rename macros related to soc capbility 2021-03-16 21:53:59 +08:00
morris
5a520cacf1 timer_group: correct timer_ll_set_divider 2021-03-16 17:56:37 +08:00
fuzhibo
6b361ed70f fix: reduce the consumption of touch sensor during deep sleep 2021-03-15 03:59:54 +00:00
morris
d0be56b8fe lcd: add LL driver for esp32-s3 2021-03-13 22:31:30 +08:00
jiangguangming
ae04518a32 spi_flash: make spiflash compatible with ESP32C3 and ESP32S3 ROM 2021-03-12 17:31:13 +08:00
Angus Gratton
fd164b82b6 Merge branch 'refactor/move_from_xtensa' into 'master'
Movements from xtensa

Closes IDF-2164

See merge request espressif/esp-idf!10556
2021-03-11 00:24:25 +00: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
Michael (XIAO Xufeng)
e9ecc4a0af Merge branch 'bugfix/esp32s3_flash_read_write' into 'master'
spi_flash: modify nvs reading writing issue on esp32s3

Closes WIFI-3438 and IDF-2866

See merge request espressif/esp-idf!12604
2021-03-04 03:53:35 +00:00
Cao Sen Miao
0b7caf96a9 spi_flash:modify nvs reading writing issue on esp32s3 2021-03-03 22:02:32 +08:00
Angus Gratton
d6f4d99d93 core system: Fix warnings in compilation when assertions are disabled
Adds a CI config for hello world that sets this, to catch future regressions
2021-03-03 10:26:57 +11:00
Michael (XIAO Xufeng)
2e0e583ad1 Merge branch 'bugfix/clear_interrupt_in_touch_sensor_initialization' into 'master'
fix: clear interrupt in touch sensor initialization

See merge request espressif/esp-idf!12201
2021-03-02 08:09:23 +00:00
fuzhibo
cfe59031a5 fix: clear interrupt in touch sensor initialization 2021-03-01 03:57:01 +00:00
Darian Leung
424e1e1886 Add USB HCD
This commit adds the USB HCD (Host Controller Driver) and accompanying unit tests.
2021-02-26 23:13:42 +08:00
Renz Bagaporo
1efdcd69d9 xtensa: move out trax 2021-02-26 19:45:48 +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
Armando
346dea206e spi_slv_hd: add hal_trans_finish comments for clarifying risk 2021-02-24 12:01:31 +08:00
Armando
8d90d3072c spi_slave_hd: refactor the hal append api to remove the spinlock 2021-02-24 12:01:31 +08:00
morris
6dc7f95342 mcpwm: fix wrong meta information 2021-02-22 20:23:35 +08:00
Omar Chebib
727481d71c gpio: enable GPIO19 on ESP32C3 boards 2021-02-22 08:44:55 +00: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)
f5f6c59e63 Merge branch 'feature/apply_gdma_new_channel_api_to_adc' into 'master'
adc: apply gdma new channel api to adc

Closes IDF-2500

See merge request espressif/esp-idf!12008
2021-02-19 13:07:32 +00:00
Marius Vikhammer
04df1f3a42 CI: enable example builds for C3
Enables building C3 examples in CI.

Fixes related warnings/errors and disables examples that cannot run.
2021-02-09 12:04:02 +08:00
Armando
5427c18781 adc: apply gdma api to adc on esp32c3 2021-02-08 11:41:21 +08:00
Michael (XIAO Xufeng)
423a5458dc Merge branch 'bugfix/support_new_BYflash_chip_boot' into 'master'
spi_flash: add external flash support on esp32c3

Closes IDF-2650, IDF-2651, and IDF-2399

See merge request espressif/esp-idf!12121
2021-02-05 20:03:24 +08:00
Michael (XIAO Xufeng)
822a40a6cf Merge branch 'fix/adc_xpd_calibration' into 'master'
adc: fixed the issue that ADC power is left on after the calibration is done

See merge request espressif/esp-idf!12207
2021-02-05 16:28:53 +08:00
Michael (XIAO Xufeng)
351ba5ff9e adc: fixed the issue that ADC power is left on after the calibration is done
Also refactor the locks in the adc_common.c file.
2021-02-05 14:17:52 +08:00
Michael (XIAO Xufeng)
52a76867d1 Merge branch 'bugfix/spi_lose_last_3_bytes' into 'master'
spi_master: fix an issue where master cannot correctly receive data when using DMA in halfduplex mode.

Closes IDFGH-612

See merge request espressif/esp-idf!11354
2021-02-04 18:35:48 +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
Angus Gratton
6252446b7d Merge branch 'bugfix/s3_dma_enable_crypto' into 'master'
sha: dont enable/disable GDMA when enable/disable SHA module

See merge request espressif/esp-idf!12247
2021-02-04 11:30:10 +08:00
morris
e361498a2a intr_alloc: re-enable unit test 2021-02-02 20:25:50 +08:00
Marius Vikhammer
245a2469f6 sha: dont enable/disable GDMA when enable/disable SHA module
Enabling and disabling of the GDMA module is done by the GDMA driver.
2021-02-02 19:24:57 +08:00
Marius Vikhammer
548fd02d10 docs: initial update of programming guide for C3
Updates "front page" content, get-started, and api-guides with C3 content

Enable building and publishing of C3 docs in CI
2021-02-01 15:40:02 +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
baohongde
eef66789d4 Mac BB power down in light sleep
components/bt: Do not use feature: timer support isr dispatch method

disable controller after wake up finished.

protect critical section of power down

choose clk in sleep

components/coex: mac bb power down in light sleep

components/coex: Macro changed

components/os: protect reserved interrupt number

update phy to phy_version 300,6e46ba7,Jan 25 2021

some bugfix
2021-01-28 22:28:04 +08:00
Michael (XIAO Xufeng)
673937087e Merge branch 'feature/usb_host_hal' into 'master'
Add USB Host HAL

Closes IDF-2633

See merge request espressif/esp-idf!11784
2021-01-28 00:58:11 +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)
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
Krzysztof Budzynski
9a5bd86d54 Merge branch 'docs/update_docs_based_on_the_second_batch_of_customer_feedbacks' into 'master'
docs: update documents based on doc-855, doc-885, doc-889, doc-897

See merge request espressif/esp-idf!12124
2021-01-26 16:21:26 +08: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
Wang Fang
7df1cad1d6 docs: This MR does the following updates:
1. Provided more information regarding I2S_COMM_FORMAT_STAND_PCM_SHORT and I2S_COMM_FORMAT_STAND_PCM_LONG
2. Added --output flag for partition table read instructions
3. Reordered the header files for esp-ble-mesh
4. Reordered the setup instructions for Ubuntu and CentOS
2021-01-25 11:10:08 +00: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
f9ec7ddda3 adc: add comment for ADC sampling frequency 2021-01-25 04:51:40 +00: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