Commit Graph

228 Commits

Author SHA1 Message Date
Ondrej Kosta
ce388a4111 feat(esp_eth): Added support of internal EMAC for ESP32P4
Refactored internal EMAC DMA access.

Added MPLL acquire to manage access to the MPLL by multiple periphs.
2024-01-16 14:29:25 +01:00
morris
d3ebd6bc1c feat(mipi_dsi): added DPHY PLL clock configuration 2024-01-16 17:41:46 +08:00
Armando (Dou Yiwen)
d7a0aa92f3 Merge branch 'feat/csi_brg_shared_ctrl' into 'master'
csi: added csi bridge share control code

See merge request espressif/esp-idf!28353
2024-01-16 16:30:21 +08:00
Armando
8f097a4629 feat(csi): added csi bridge share control code 2024-01-16 09:57:52 +08:00
morris
213a599d8b fix(mcpwm): enable mcpwm group clock before hal init 2024-01-15 18:13:56 +08:00
Armando
80e18811db feat(psram): support 200mhz psram, experimental feature for now 2024-01-10 11:52:28 +08:00
Aditya Patwardhan
f468742d25 Merge branch 'fix/typo_in_key_mgr_hal_layer' into 'master'
fix(hal): Fix typo in hal layer for Key Manger

See merge request espressif/esp-idf!27832
2024-01-09 12:59:22 +08:00
Armando (Dou Yiwen)
7f8d0256c2 Merge branch 'change/ldo_id_start_from_1' into 'master'
ldo: make ldo driver unit_id start from 1 (same as datasheet)

See merge request espressif/esp-idf!28318
2024-01-08 16:06:31 +08:00
Aditya Patwardhan
c0ea892aa5
fix(hal): Fix typo in hal layer for Key Manger
This also fixes type in attribute added in esp_attr
2024-01-08 10:32:41 +05:30
Armando
1adea4ab66 change(ldo): make ldo driver unit_id same as datasheet
Prior to this commit, we expect passing ldo_unit_t to esp_ldo driver
`ldo_unit` field. And ldo_unit_t will alias the LDO unit to values
starting from 0, e.g. LDO_UNIT_1 is actually value 0.

With this commit, esp_ldo driver `ldo_unit` field will start with 1,
which is aligned with the datasheet. So LDO_UNIT_1 is in value 1,
meanwhile setting 1 to `ldo_unit` will work as well.
2024-01-08 10:52:11 +08:00
Cao Sen Miao
2e83fa1c69 refactor(spi_flash): Use new spi_flash register sturct and deperecate the old one 2024-01-08 09:59:22 +08:00
Armando
847d525d78 feat(sdmmc): use ldo as power supply on esp32p4 2024-01-04 15:34:59 +08:00
Kevin (Lao Kaiyao)
83d5797967 Merge branch 'feature/parlio_rx_driver' into 'master'
driver: add parallel IO RX driver

Closes IDF-7002 and IDF-6984

See merge request espressif/esp-idf!23488
2023-12-29 16:36:24 +08:00
Song Ruo Jing
7f2b85b82b feat(clk): add basic clock support for esp32p4
- Support CPU frequency 360MHz
- Support SOC ROOT clock source switch
- Support LP SLOW clock source switch
- Support clock calibration
2023-12-29 00:37:26 +08:00
laokaiyao
db7e90fef9 feat(parlio_rx): add parlio rx examples 2023-12-28 11:05:26 +08:00
laokaiyao
04d267b023 feat(parlio_rx): implement parallel io rx driver 2023-12-27 19:32:12 +08:00
C.S.M
eef9c4053c Merge branch 'feat/temperature_p4' into 'master'
feat(temperature_sensor): Add temperature sensor support on esp32p4

Closes IDF-7482 and IDF-7485

See merge request espressif/esp-idf!28075
2023-12-27 09:48:44 +08:00
Armando (Dou Yiwen)
22b9bc2708 Merge branch 'change/do_mpll_ldo_earlier' into 'master'
mpll: do mpll ldo init earlier

See merge request espressif/esp-idf!28104
2023-12-26 20:59:35 +08:00
Cao Sen Miao
439bc719fe feat(temperature_sensor): Add temperature sensor support on esp32p4 2023-12-26 16:45:20 +08:00
Armando
58d222e66c change(mpll): use fast write as reg is 8bit 2023-12-26 11:43:33 +08:00
laokaiyao
3c9505ac64 fix(i2s): add rcc trick for some ll functions 2023-12-22 19:40:38 +08:00
laokaiyao
6b3a35eea4 fix(i2s): fix no mclk output in i2s simplex mode on P4 2023-12-22 16:14:13 +08:00
Armando (Dou Yiwen)
4ca2cd16d0 Merge branch 'feat/mpll_support_on_esp32p4' into 'master'
feat(mpll): supported mpll configure api

Closes IDF-8885

See merge request espressif/esp-idf!28009
2023-12-22 09:41:38 +08:00
Armando
27b1e4dc87 feat(mpll): supported mpll configure ll api 2023-12-21 16:26:03 +08:00
morris
eeae70ddf3 fix(dw_gdma): wrong master port setting for destination 2023-12-21 10:41:27 +08:00
Song Ruo Jing
d7b3bf0b69 Merge branch 'fix/esp32p4_gpio_pins' into 'master'
change(gpio): esp32p4 available pins are GPIO0 ~ GPIO54

Closes IDF-7735

See merge request espressif/esp-idf!28016
2023-12-20 16:39:21 +08:00
Song Ruo Jing
20f6505aa6 change(gpio): esp32p4 available pins are GPIO0 ~ GPIO54 2023-12-20 11:23:32 +08:00
morris
44e856703c feat(dsi): add mipi dsi hal+ll layer driver 2023-12-19 11:39:59 +08:00
Armando (Dou Yiwen)
8c9e29898f Merge branch 'bringup/psram_p4_real_chip' into 'master'
psram: p4 psram 20M on real chip

See merge request espressif/esp-idf!27710
2023-12-18 21:12:08 +08:00
Wu Zheng Hui
8d165aa767 Merge branch 'bugfix/clear_lp_sw_trigger_int_before_sleep' into 'master'
fix(ulp): add api to get lp_cpu wakeup cause and clear wakeup source at startup

Closes IDFGH-11526

See merge request espressif/esp-idf!27747
2023-12-18 20:20:02 +08:00
Armando
8e9d90f603 feature(esp_psram): p4 real chip 20M 2023-12-18 15:18:07 +08:00
Cao Sen Miao
40e882afae feature(jpeg): Introduce JPEG hal layer 2023-12-18 12:03:17 +08:00
wuzhenghui
a967a207c9
feat(ulp): add api to get lp_cpu wakeup cause and clear wakeup source at startup
Closes https://github.com/espressif/esp-idf/issues/12651
2023-12-18 11:29:53 +08:00
Armando (Dou Yiwen)
30a0d847f3 Merge branch 'feature/esp32p4_base_ldo_support' into 'master'
ldo: new ldo driver on P4

Closes IDF-8808

See merge request espressif/esp-idf!27728
2023-12-15 12:31:17 +08:00
morris
d875d021e1 Merge branch 'feature/gdma_etm_esp32p4' into 'master'
feat(gdma): support ETM sub-driver on esp32p4

See merge request espressif/esp-idf!27719
2023-12-15 12:24:06 +08:00
Armando
9143a9dc90 feature(ldo): ldo driver 2023-12-14 12:46:51 +08:00
morris
bf00021b37 feat(dw_gdma): channel allocator driver 2023-12-12 03:35:05 +00:00
morris
e96491fb1f feat(systimer): support ETM on esp32p4 2023-12-07 18:46:24 +08:00
morris
a7577f88bd feat(gdma): support ETM subsystem on esp32p4 2023-12-06 18:02:43 +08:00
Mahavir Jain
25c2cc5f03 Merge branch 'feature/esp32p4_enable_flash_encryption' into 'master'
Enable Flash Encryption for ESP32P4

Closes IDF-7545

See merge request espressif/esp-idf!26959
2023-12-05 21:42:18 +08:00
Aditya Patwardhan
e09d50d244
feat(soc): Updated soc cap for flash encryption
1) In the ESP32-P4 SoC, we have an eFuse to disable the MSPI access
    when in download mode. This commit adds relevant soc cap for esp32p4
    chip.
    2) Added FE related soc caps
    3) Removed unwanted cap from soc_caps
    4) esp_hw_support: Enable flash encryption related ll APIs for esp32p4
2023-12-05 11:03:48 +05:30
morris
846751216b feat(sdm): add driver support for esp32p4 2023-12-01 10:03:09 +08:00
Marius Vikhammer
ae4be8eb03 Merge branch 'feature/p4_lp_core' into 'master'
feat(ulp/lp_core): Added basic support for building and running a LP-Core app on ESP32P4

Closes IDF-7534

See merge request espressif/esp-idf!26869
2023-11-30 09:35:49 +08:00
Marius Vikhammer
0c067fcb05 feat(ulp/lp_core): Added basic support for building and running a LP-Core app on ESP32P4 2023-11-29 10:50:40 +08:00
morris
397f9f2274 Merge branch 'feature/rgb_lcd_support_esp32p4' into 'master'
feat(lcd): add LL driver of rgb/i80 LCD for esp32p4

See merge request espressif/esp-idf!27200
2023-11-22 13:08:59 +08:00
morris
e86acbe556 feat(lcd): pre-support rgb and i80 lcd driver on esp32p4
added LL functions for LCD_CAM module, only the LCD part
2023-11-21 10:46:52 +08:00
morris
05e6ccbba7 feat(gdma): can read interrupt raw status 2023-11-20 17:25:57 +08:00
Mahavir Jain
7505667e7d Merge branch 'bugfix/esp32h2_ecdsa_hardware_k' into 'master'
fix(esp32h2): program use_hardware_k efuse bit for ECDSA key purpose

Closes IDF-8508 and IDF-8506

See merge request espressif/esp-idf!26918
2023-11-17 15:10:12 +08:00
laokaiyao
f35ec64a0b feat(touch): support touch driver on p4 (soc) 2023-11-16 11:13:02 +00:00
Cao Sen Miao
66bba5694e feat(spi_flash): Enable auto suspend on when flash works under 120M 2023-11-15 17:27:42 +08:00
Mahavir Jain
f9501f6ea9
fix(ecdsa): remove unused k_mode from the ECDSA HAL/LL API
For ESP32-H2 case, the hardware k mode is always enforced through
efuse settings (done in startup code).

For ESP32-P4 case, the software k mode is not supported in the peripheral
itself and code was redundant.
2023-11-15 09:42:26 +05:30
Song Ruo Jing
365123dfaa Merge branch 'bugfix/uart_custom_console' into 'master'
fix(console): enable to select UART1 port for console output

Closes IDF-6190

See merge request espressif/esp-idf!26642
2023-11-10 12:31:22 +08:00
Song Ruo Jing
46d33e46ef fix(console): enable to select UART1 port for console output
This feature was only enabled for esp32, esp32s2, esp32s3 previously.
Now, enabling this feature for all targets.
2023-11-09 22:32:49 +08:00
morris
5cc965e6cb Merge branch 'feature/rmt_receive_in_isr' into 'master'
feat(rmt): support calling rmt_receive in ISR callback

Closes IDF-8488

See merge request espressif/esp-idf!26874
2023-11-08 14:25:52 +08:00
morris
14b7db5dd0 feat(rmt): support calling rmt_receive in ISR callback 2023-11-03 15:42:56 +08:00
Song Ruo Jing
9461993ec5 refactor(gpio): make gpio driver as component, and fix astyle 2023-11-03 15:42:23 +08:00
Armando
7efcf06c5d change(ll): update color space types, ll changes 2023-10-30 17:32:46 +08:00
Armando
97526e9288 feat(isp): isp af submodule low level driver 2023-10-30 17:32:46 +08:00
Wan Lei
7c21207bd3 Merge branch 'feature/esp32p4_twai_support' into 'master'
feat(twai): support legacy twai(can) driver for esp32p4

Closes IDF-7470

See merge request espressif/esp-idf!26073
2023-10-30 10:57:03 +08:00
C.S.M
59d029bf66 Merge branch 'feat/i2c_rcc_support' into 'master'
refactor(i2c): Add reset and clock control to i2c ll layer

See merge request espressif/esp-idf!26684
2023-10-28 10:01:06 +08:00
C.S.M
4111b07076 Merge branch 'bugfix/flash_enc_plaintext' into 'master'
fix(flash_encryption): Fix the issue that XTS_AES Plain text memory size wrong

See merge request espressif/esp-idf!26640
2023-10-27 18:23:00 +08:00
Cao Sen Miao
0bf1dce413 refactor(i2c): Add reset and clock control to i2c ll layer 2023-10-27 10:50:35 +08:00
Cao Sen Miao
420ac840ff fix(flash_encryption): Fix the issue that XTS_AES Plain text memory size wrong 2023-10-26 19:38:42 +08:00
wanlei
d9d6f5a17a feat(twai): support legacy twai(can) driver for esp32p4 2023-10-26 16:20:45 +08:00
morris
418494800c fix(i2c): read write FIFO memory by volatile 2023-10-26 14:40:07 +08:00
Armando
263e39c32b fix(sdmmc): fix ll layer wrong assertion 2023-10-25 06:03:25 +00:00
Cao Sen Miao
8d639492f2 feat(i2c_slave): Add new implementation and API for I2C slave 2023-10-24 18:44:49 +08:00
morris
767595a22f Merge branch 'feature/mcpwm_timer_change_freq' into 'master'
feat(mcpwm): support update timer period dynamically

Closes IDFGH-11145

See merge request espressif/esp-idf!26419
2023-10-23 15:51:14 +08:00
Jiang Jiang Jian
0049cc663a Merge branch 'feature/support_output_internal_clock' into 'master'
feature(gpio): Add api to support output internal clock

Closes IDF-8016 and IDF-4935

See merge request espressif/esp-idf!25753
2023-10-22 22:06:13 +08:00
morris
0cbcb9f5ea feat(mcpwm): support update timer period dynamically
Implement the requirement asked in
https://www.esp32.com/viewtopic.php?f=13&t=35919
2023-10-20 16:57:25 +08:00
morris
565b9fd117 Merge branch 'refactor/hal_util_bitwise_reverse8' into 'master'
hal: add util function to reverse a 8bit byte

See merge request espressif/esp-idf!26532
2023-10-20 09:43:15 +08:00
wuzhenghui
1f10c84a4f change(hal): rewrite gpio_ll_set_iomux_pin_ctrl api 2023-10-19 22:24:08 +08:00
Armando (Dou Yiwen)
471f1f61ae Merge branch 'feature/support_sdmmc_ver2_on_p4' into 'master'
sdmmc: esp32p4 support

Closes IDF-6502

See merge request espressif/esp-idf!25405
2023-10-19 22:00:40 +08:00
Wan Lei
a9b6c98489 Merge branch 'refactor/spi_using_rcc_automic_lock' into 'master'
refac(spi): update periph_module_xxx with rcc_atomic_lock for periph bus

Closes IDF-8159

See merge request espressif/esp-idf!26394
2023-10-18 20:36:51 +08:00
Armando
70314b56d5 feat(sdmmc): supported sd2.0 on esp32p4 2023-10-18 11:57:55 +00:00
Wan Lei
9f413d5d8d Merge branch 'feature/esp32p4_hp_ledc_support' into 'master'
feat(ledc): support ledc on esp32p4

Closes IDF-6510

See merge request espressif/esp-idf!25356
2023-10-18 15:27:54 +08:00
morris
e92a1515be feat(hal): add util function to reverse a 8bit byte 2023-10-18 09:48:14 +08:00
wanlei
57614bbad2 feat(ledc): support ledc on esp32p4 2023-10-17 16:40:04 +08:00
wanlei
b81cafe42e refac(spi): update periph_module_xxx with rcc_automic_lock for periph bus 2023-10-17 11:32:23 +08:00
Aditya Patwardhan
ade65add54 feat(hal): Added HAL and LL layer for Key Manager 2023-10-16 09:26:37 +05:30
Aditya Patwardhan
6b4d2140ee feat(hal): Added HAL and LL layer for HUK 2023-10-16 09:26:14 +05:30
Mahavir Jain
6b62065b92 Merge branch 'fix/crypto_periphs_use_rcc_atomic_blocks' into 'master'
Use rcc atomic blocks to enable/reset crypto peripherals

See merge request espressif/esp-idf!25811
2023-10-13 22:37:58 +08:00
Song Ruo Jing
321f628ff5 feat(gpio): add a dump API to dump IO configurations
Closes https://github.com/espressif/esp-idf/issues/12176
2023-10-12 17:34:20 +08:00
harshal.patil
57d10477da
feat(ecdsa): use RCC atomic block to enable/reset the ECDSA peripheral 2023-10-11 14:59:04 +05:30
harshal.patil
43864f7fb4
feat(ds): use RCC atomic block to enable/reset the DS peripheral 2023-10-11 14:59:04 +05:30
harshal.patil
18b93e9564
feat(hmac): use RCC atomic block to enable/reset the HMAC peripheral 2023-10-11 14:59:04 +05:30
harshal.patil
1c6ff8ce9f
feat(ecc): use RCC atomic block to enable/reset the ECC peripheral 2023-10-11 14:59:04 +05:30
harshal.patil
c5cc4f488a
feat(mpi): use RCC atomic block to enable/reset the MPI peripheral 2023-10-11 14:59:03 +05:30
Wan Lei
f92b18053a Merge branch 'feature/esp32p4_hp_spi_support' into 'master'
Feature/esp32p4 hp spi master driver support

Closes IDF-7502

See merge request espressif/esp-idf!24963
2023-10-09 18:37:35 +08:00
wanlei
00fcdce725 feat(spi_master): p4 add master driver supported 2023-10-08 14:45:12 +08:00
gaoxu
bc2a6bd730 feat(uart): spilt LP and HP uart set_baudrate function 2023-10-08 10:10:02 +08:00
gaoxu
4f24f805cc feat(uart): add LP-UART GPIO support 2023-10-08 10:10:02 +08:00
gaoxu
3e3e928209 feat(uart): move periph_ll_uart_enabled to uart_ll.h 2023-10-08 10:10:02 +08:00
gaoxu
4541ad134d feat(uart): add RCC atomic block to uart/lp-uart peripheral 2023-10-08 10:10:02 +08:00
gaoxu
c7afa0dcef feat(uart): uart(hp,lp) support on esp32p4 2023-10-08 10:10:00 +08:00
Kevin (Lao Kaiyao)
4c6f4b39f1 Merge branch 'feature/support_i2s_on_p4' into 'master'
feat(i2s): support i2s on esp32p4

Closes IDF-6508

See merge request espressif/esp-idf!24280
2023-09-29 00:50:04 +08:00
laokaiyao
e1039f9ce2 fix(i2s_platform): merge the i2s platform acquire API 2023-09-28 15:03:27 +08:00
laokaiyao
72a0746e62 refactor(apll): move the apll soc caps to clk_tree_ll 2023-09-28 15:03:27 +08:00
laokaiyao
0b0f25c30d feat(i2s): supported getting the tx sync count and specify interrupt flags 2023-09-28 15:03:27 +08:00
laokaiyao
cf889f3c6d feat(i2s): support i2s on esp32p4 2023-09-28 15:03:27 +08:00