Commit Graph

811 Commits

Author SHA1 Message Date
jingli
2b8c43df69 hal/gpio_ll: fix digital gpio can not enable hold during deep sleep when force_unhold set(32/s2/s3) 2022-10-11 12:11:36 +08:00
jingli
128d82eaaa hal/gpio_ll: fix digital gpio can not disable hold during deep sleep 2022-10-11 12:11:36 +08:00
jingli
b903a2253b esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep 2022-10-11 12:11:28 +08:00
Michael (XIAO Xufeng)
9bc18ba480 Merge branch 'feat/sdio_slave_disable_hs' into 'master'
sdio_slave: allow disabling highspeed mode

Closes IDF-5994

See merge request espressif/esp-idf!20312
2022-10-01 01:52:47 +08:00
Michael (XIAO Xufeng)
507864c4f1 sdio_slave: allow disabling highspeed mode 2022-09-27 18:38:35 +08:00
wuzhenghui
fca7d70e05 esp32c6: add minimal ci support
- enable build_template_app
- enable check public headers
- enable g0 components dependency check
2022-09-26 20:32:13 +08:00
wuzhenghui
5115e31175 driver: Minor update for esp32c6
Leave TODO for esp_adc and legacy adc driver
HAL/SOC update for spi and i2s
2022-09-26 20:32:13 +08:00
morris
f6eba4ccfe gpio_sdm: bring up SDM driver on esp32c6 2022-09-17 16:15:56 +08:00
morris
b562754a2f rmt: support esp32c6 2022-09-17 04:56:49 +00:00
Darian Leung
d333833f59 usb_host: Rename struct/ll/hal symbols to use "usb_dwc" prefix
Following the file renaming to use the "usb_dwc" prefix, this commit
updates the symbol names of those files to use the "usb_dwc" as well.

Some LL functions were also renamed so that the register name is
mentioned.
2022-09-16 16:45:26 +08:00
Darian Leung
d8d4e3acb0 usb_host: Rename struct/ll/hal files to use "usb_dwc" prefix
This commit updates the DWC_OTG based struct/ll/hal file names to
use the prefix "usb_dwc". This naming scheme reduces ambiguity if
another USB controller implementation is added.

As a result, "hcd.c" has been renamed to "hcd_dwc.c"
2022-09-16 16:45:26 +08:00
morris
e8a356ec91 Merge branch 'feature/esp32c6_fast_gpio_bringup' into 'master'
fast_gpio: bring up fast gpio driver on esp32c6

Closes IDF-5331

See merge request espressif/esp-idf!20159
2022-09-16 14:17:40 +08:00
laokaiyao
bae4944b90 i2s: bringup i2s on esp32c6 2022-09-15 20:03:39 +08:00
laokaiyao
7197e987cb i2s: add XTAL clock source 2022-09-15 19:32:06 +08:00
morris
fd325c9fa2 fast_gpio: bring up fast gpio driver on esp32c6 2022-09-15 11:02:31 +08:00
morris
5f550b2a13 rmt,gptimer: don't support rc_fast clock source for c6 and h2
The RC_FAST clock source on ESP32C6 and ESP32H2 can't be calibrated.
Which makes it impossible to work stable for peripherals like timer, RMT
2022-09-14 14:40:28 +00:00
Song Ruo Jing
de0401047c rtcio: Disable USB Serial JTAG pad when setting pins 19 and 20 as RTC function on ESP32S3
Similar to the fix in gpio lower layers, USB Serial JTAG pad should be disabled when the DM and DP pins want to be used as rtcio pins.
2022-09-13 12:13:51 +08:00
morris
a1030307f1 gptimer: bringup driver on esp32c6 2022-09-13 10:50:58 +08:00
gaoxu
5934ba731e SPI: Fix SPI wrong dummy bits on ESP32H2 2022-09-09 01:54:53 +00:00
morris
6539aa2275 pcnt: support esp32c6 2022-09-08 18:26:04 +08:00
Song Ruo Jing
0637ea91a3 Merge branch 'bugfix/fix_gpio_intr_lost' into 'master'
gpio: Fix interrupt lost issue

Closes IDFGH-5069

See merge request espressif/esp-idf!19625
2022-09-02 18:54:17 +08:00
Simon
e923c15859 Merge branch 'refactor/i2c_hal' into 'master'
I2C: Refactor i2c hal and ll(pre-MR of I2C driver-NG)

See merge request espressif/esp-idf!19750
2022-09-02 10:47:35 +08:00
morris
7b2c491064 Merge branch 'feature/add_esp32c6_g0_components' into 'master'
ESP32C6: Add G0 components support (hal, soc, riscv, esp_common)

See merge request espressif/esp-idf!19826
2022-09-01 16:11:40 +08:00
Song Ruo Jing
61282cc5dd gpio: Fix interrupt lost issue
In previous gpio default isr, interrupt status bits get cleared at the exit of the isr.
However, for edge-triggered interrupt type, the interrupt status bit should be cleared before entering the per-pin handlers to avoid any potential interrupt lost.

Closes https://github.com/espressif/esp-idf/pull/6853
2022-09-01 16:01:01 +08:00
Cao Sen Miao
31b88a4c88 I2C: Refactor i2c hal and ll 2022-09-01 15:53:59 +08:00
morris
e2634b5223 Merge branch 'feature/rgb_lcd_yuv_converter' into 'master'
RGB-YUV converter

Closes IDF-4598

See merge request espressif/esp-idf!19094
2022-09-01 13:41:14 +08:00
Song Ruo Jing
158b53e777 esp32c6: mmu & cache related g0 components changes 2022-09-01 12:38:00 +08:00
wuzhenghui
1d299a8976 esp32c6: add hal support 2022-09-01 12:37:51 +08:00
Song Ruo Jing
6a60ecf780 soc_caps: Introduce SOC_LEDC_SUPPORTED and SOC_I2C_SUPPORTED caps to IDF
Wrap the ledc, i2c source files with the new caps in CMakeLists and linker.lf.
This could avoid potential source file not found warning during linking time.
2022-08-31 20:43:22 +08:00
wuzhenghui
c31aaeda2a ll: add reset interface to rtc_cntl_ll 2022-08-31 01:59:36 +00:00
Gao Xu
0da21aca0d Merge branch 'bugfix/fix_spi_hd_quad_issue_esp32c3' into 'master'
essl_spi: fix wrong dummy cycle under quad spi mode ant add a test to verify spi quad mod

Closes IDF-5182 and IDF-5181

See merge request espressif/esp-idf!18680
2022-08-30 10:53:11 +08:00
Fu Hanxi
0d7f5b3d84 adc: skip linking static functions when not COMPILER_OPTIMIZATION_DEFAULT 2022-08-29 16:57:31 +08:00
Michael (XIAO Xufeng)
4fb1ccdd4e Merge branch 'feature/c2_efuse_with_26mhz' into 'master'
efuse(es32c2): Supports 26MHz XTAL

Closes IDF-5427

See merge request espressif/esp-idf!18851
2022-08-29 01:43:57 +08:00
Armando (Dou Yiwen)
ac63c0afd7 Merge branch 'feature/basic_mmu_framework' into 'master'
mmu: basic mmu driver framework

Closes IDFGH-6659 and IDF-5825

See merge request espressif/esp-idf!19547
2022-08-26 22:19:10 +08:00
morris
ebd3081d97 Merge branch 'bugfix/fix_rtc_gpio_hold' into 'master'
gpio: Fix missing set hold bit in rtc gpio register

Closes IDFGH-2489

See merge request espressif/esp-idf!19760
2022-08-26 18:13:14 +08:00
Armando
2d44dc1eed mmu: driver framework, for vaddr maintenance
This commit gives basic mmu driver framework. Now it is able to maintain
mmu virtual address usage on esp32, esp32s2 and esp32s3. Usage to
external virtual address should rely on mmu functions to know which
address range is available, instead of hardcoded.

This commit also improves psram memory that is added to the heap
allocator. Now it's added to the heap, according to the memory
alignment.

Closes https://github.com/espressif/esp-idf/issues/8295
2022-08-26 17:59:06 +08:00
morris
060f3a3b13 Merge branch 'refactor/gptimer_software_capture' into 'master'
split gptimer software capture in hal driver

See merge request espressif/esp-idf!19749
2022-08-26 13:25:25 +08:00
Michael (XIAO Xufeng)
8e361d3df0 Merge branch 'bugfix/sdio_slave_gcc11_crash' into 'master'
sdio_slave: workaround the sdio_slave crash issue with release config + GCC11

Closes IDFCI-1296, IDFCI-1297, and IDFCI-1298

See merge request espressif/esp-idf!19680
2022-08-26 00:39:35 +08:00
morris
995b89fbb6 gptimer: add API to get captured count value 2022-08-25 17:55:19 +08:00
Jan Procházka
ebef6bc97e added missing call to set hold register bit
This commit fixes gpio_hold_en(pin) function for ESP32, where after wakeup from deep sleep, the pin gets reset to default state and stop holding the pin level.
2022-08-24 13:49:05 +02:00
KonstantinKondrashov
f2adee8b28 efuse(es32c2): Supports 26MHz XTAL 2022-08-24 09:10:57 +00:00
Omar Chebib
f6ac350337 I2C: i2c_port_t type is now an enumeration
* Closes https://github.com/espressif/esp-idf/issues/9009
2022-08-24 10:51:09 +08:00
gaoxu
3610b14aef SPI : fix wrong dummy cycle on quad mode and put get-command function in spi_ll.h
1.The dummy_bits is set to 4 in ESP32C3/C2, therefore, the data transmission started too early.This commit fix this issue by changing dummy_bits to 8.
2.Put the spi command the spi defintion in spi_types.h
3.Put the function which get spi command or dummy bits in spi_ll.h
2022-08-23 10:46:56 +08:00
Armando (Dou Yiwen)
fec97b6b16 Merge branch 'bugfix/add_adc_oneshot_disable_ulp_enum' into 'master'
esp_adc: add adc ulp mode disable enum, and kconfig to enable dac output

Closes IDF-5843 and IDF-5846

See merge request espressif/esp-idf!19683
2022-08-23 10:46:54 +08:00
Armando
236ba48efc esp_adc: add a kconfig to disable dac on certain adc IOs
Added a kconfig option. By default, when using ADC oneshot
driver, it will disable
DAC channels:
- ESP32:   IO25, IO26
- ESP32S2: IO17, IO18
if ADC2 is in use.

You can disable this option, to measure DAC output, via internal ADC.
This is for test usage.
2022-08-22 18:04:55 +08:00
Song Ruo Jing
72a15e3c7a Merge branch 'bugfix/gpio_usb_pin_pupd' into 'master'
gpio: fix USB D+ pin cannot disable pullup

Closes IDFGH-7984

See merge request espressif/esp-idf!19191
2022-08-22 17:18:05 +08:00
Michael (XIAO Xufeng)
0a2e5a7774 Merge branch 'feat/support_esp32c2_uart' into 'master'
uart: update console docs about frequency for ESP32-C2, move frequency of clock sources out of HAL

Closes IDF-5424 and IDF-4332

See merge request espressif/esp-idf!19274
2022-08-22 14:24:26 +08:00
Armando
5e31d4bb2b esp_adc: add adc ulp mode disable enum
Prior to this commit, adc ulp is disabled by setting
adc_oneshot_unit_init_cfg_t::ulp_mode to false.

After this commit, a new enum `ADC_ULP_MODE_DISABLE` is added. So
setting `ulp_mode` to `ADC_ULP_MODE_DISABLE`, instead of `false`, to
disable the ulp mode.
2022-08-22 11:00:28 +08:00
Michael (XIAO Xufeng)
19add3fb05 sdio_slave: workaround the sdio_slave crash issue with release config + GCC11 2022-08-22 10:53:24 +08:00
songruojing
01143bd732 gpio: fix USB D+ pin cannot disable pullup
Internally, disable usb serial jtag DP pin's pullup when calling gpio_ll_pullup_dis and rtcio_ll_pullup_disable
At usb serial jtag setup/install, re-enable DP pin's pullup

Closes https://github.com/espressif/esp-idf/issues/9495
2022-08-19 15:05:28 +08:00