Wykres commitów

688 Commity (59b763bb9a8314680d43f193e67269825e9ac9ad)

Autor SHA1 Wiadomość Data
Renz Bagaporo 6462f9bfe1 esp32, esp32s2: create esp_pm component 2020-09-25 05:24:10 +00:00
Armando 1e1beb69aa spi: fix build fail issue when target is esp32s3 2020-09-24 10:51:23 +08:00
Michael (XIAO Xufeng) 3c2f2aaffe Merge branch 'docs/spi_flash_readme_update' into 'master'
hal: Update readme aftering extracting hal document from soc document

See merge request espressif/esp-idf!10453
2020-09-23 13:33:08 +08:00
Cao Sen Miao 5baf124219 docs: update readme aftering extracting hal document from soc document 2020-09-23 11:47:23 +08:00
Renz Bagaporo 6d7606aee5 soc: remove unecessary compile line include dir orderding control 2020-09-23 02:53:03 +00:00
Renz Bagaporo 7f5893d53c soc: move dac_hal to hal 2020-09-23 02:53:03 +00:00
Renz Bagaporo 01d9aa8070 soc: move mpu_hal test to hal component 2020-09-23 02:53:03 +00:00
Renz Bagaporo 2bcf99527c soc: move out rtc_hal to hal component 2020-09-23 02:53:03 +00:00
morris 9fa06719fa global: enable build uinit test for esp32-s3 2020-09-22 15:15:03 +08:00
morris 75a372a9f0 unit_test: support reference clock, test delay function 2020-09-22 15:15:03 +08:00
morris 61f89b97c6 bringup esp32-s3 on FPGA 2020-09-22 15:15:03 +08:00
Cao Sen Miao d7e50c6457 spi_flash:bringup some flash supports for esp32s3 2020-09-22 15:15:03 +08:00
chenjianqiang f19cabb7e4 psram: support psram for esp32s3 2020-09-22 15:15:03 +08:00
Angus Gratton 3f034a5005 spiram: Add soc macro for SPIRAM address space size, use it where applicable
Reference https://github.com/espressif/esp-idf/pull/5373
2020-09-21 11:43:55 +10:00
negativekelvin 5eb5bb5f72 Fix reserved psram region
Closes https://github.com/espressif/esp-idf/pull/5373

Closes https://github.com/espressif/esp-idf/issues/5821
2020-09-21 11:39:54 +10:00
Michael (XIAO Xufeng) fefdee1349 bootloader: fix the WRSR format for ISSI flash chips
1. The 2nd bootloader always call `rom_spiflash_unlock()`, but never help to clear the WEL bit when exit. This may cause system unstability.

   This commit helps to clear WEL when flash configuration is done.

   **RISK:** When the app starts, it didn't have to clear the WEL before it actually write/erase. But now the very first write/erase operation should be done after a WEL clear. Though the risk is little (all the following write/erase also need to clear the WEL), we still have to test this carefully, especially for those functions used by the OTA.

2. The `rom_spiflash_unlock()` function in the patch of ESP32 may (1) trigger the QPI, (2) clear the QE or (3) fail to unlock the ISSI chips.

   Status register bitmap of ISSI chip and GD chip:

| SR | ISSI | GD25LQ32C |
| -- | ---- | --------- |
| 0  | WIP  | WIP       |
| 1  | WEL  | WEL       |
| 2  | BP0  | BP0       |
| 3  | BP1  | BP1       |
| 4  | BP2  | BP2       |
| 5  | BP3  | BP3       |
| 6  | QE   | BP4       |
| 7  | SRWD | SRP0      |
| 8  |      | SRP1      |
| 9  |      | QE        |
| 10 |      | SUS2      |
| 11 |      | LB1       |
| 12 |      | LB2       |
| 13 |      | LB3       |
| 14 |      | CMP       |
| 15 |      | SUS1      |

   QE bit of other chips are at the bit 9 of the status register (i.e. bit 1 of SR2), which should be read by RDSR2 command.

   However, the RDSR2 (35H, Read Status 2) command for chip of other vendors happens to be the QIOEN (Enter QPI mode) command of ISSI chips. When the `rom_spiflash_unlock()` function trys to read SR2, it may trigger the QPI of ISSI chips.

   Moreover, when `rom_spiflash_unlock()` try to clear the BP4 bit in the status register, QE (bit 6) of ISSI chip may be cleared by accident. Or if the ISSI chip doesn't accept WRSR command with argument of two bytes (since it only have status register of one byte), it may fail to clear the other protect bits (BP0~BP3) as expected.

   This commit makes the `rom_spiflash_unlock()` check whether the vendor is issi. if so, `rom_spiflash_unlock()` only send RDSR to read the status register, send WRSR with only 1 byte argument, and also avoid clearing the QE bit (bit 6).

3. `rom_spiflash_unlock()` always send WRSR command to clear protection bits even when there is no protection bit active. And the execution of clearing status registers, which takes about 700us, will also happen even when there's no bits cleared.

   This commit skips the clearing of status register if there is no protection bits active.

Also move the execute_flash_command to be a bootloader API; move
implementation of spi_flash_wrap_set to the bootloader
2020-09-19 10:51:51 +08:00
Angus Gratton 0fe231d2b3 Merge branch 'feature/pkg_ver_uses_4_bits' into 'master'
efuse/esp32: Expands PKG_VER from 3 bit to 4 bits

Closes IDF-1919

See merge request espressif/esp-idf!9949
2020-09-17 18:21:08 +08:00
KonstantinKondrashov 2373f115fc efuse/esp32: Expands PKG_VER from 3 bit to 4 bits
Closes: IDF-1919
2020-09-17 07:44:37 +00:00
morris a3cc43485f async memcpy: support async memcopy on esp32s2/s3
Added async memory copy API:
on esp32-s2, the implementation is based on CP_DMA
on esp32-s3, the implementation is based on GDMA
2020-09-16 21:30:54 +08:00
Michael (XIAO Xufeng) 1a1e1911f9 Merge branch 'bugfix/spi_dma_close_before_cpu_reset' into 'master'
spi: fix issue with closing DMA before CPU reset

Closes FCS-484

See merge request espressif/esp-idf!9844
2020-09-14 23:02:05 +08: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
Jakob Hasse 20c068ef3b cmock: added cmock as component
* changing dependencies from unity->cmock
* added component.mk and Makefile.projbuild
* ignore test dir in gen_esp_err_to_name.py
* added some brief introduction of CMock in IDF
2020-09-02 16:38:37 +08:00
Michael (XIAO Xufeng) 5425ef4ee4 hal: extract hal component from soc component 2020-09-01 13:25:32 +08:00
Krzysztof Budzynski 94cc8fc4b3 Merge branch 'doc/tinyusb' into 'master'
TinyUSB documentation

See merge request espressif/esp-idf!8862
2020-08-31 20:57:29 +08:00
Michael (XIAO Xufeng) 2b323e7180 Merge branch 'bugfix/fix_dac_driver_ut' into 'master'
Driver(dac): fix DAC-DMA driver and unit test

Closes IDF-1407

See merge request espressif/esp-idf!8814
2020-08-31 00:05:34 +08:00
Andrei Gramakov c863b4c777 docs: tinyusb documentation 2020-08-27 13:49:33 +02:00
fuzhibo 0914dfbb6a dfiver(dac): add dac dma driver and unit test 2020-08-26 06:23:24 +00:00
fuzhibo bd92e95160 driver(adc): add adc-dma code for esp32 2020-08-26 03:54:02 +00:00
me-no-dev 0aa1c13027 Fix USB CLK always reset and USB with swapped pins not working 2020-08-25 10:59:59 +03:00
Michael (XIAO Xufeng) 8a9dc46b14 Merge branch 'bugfix/spi_master_add_dummy_check' into 'master'
spi_master: add dummy check when both mosi and miso are set

Closes IDF-1872 and IDF-266

See merge request espressif/esp-idf!9406
2020-08-23 12:47:18 +08:00
David Čermák e2f72f449c Merge branch 'feature/ethernet_flow_control' into 'master'
ethernet: support flow control

Closes IDF-1207, WIFI-2510, WIFI-2290, WIFI-2291, WIFI-2507, WIFI-2508, WIFI-2612, and IDFGH-3465

See merge request espressif/esp-idf!9643
2020-08-21 14:33:30 +08:00
Armando aa93347972 spi: remove spi4 related macros and codes 2020-08-17 21:32:15 +08:00
Renz Bagaporo 4f5135030f esp_system: remove register level operations for timer wakeup 2020-08-17 19:09:24 +08:00
Renz Bagaporo 0b6ead74b5 soc: ll and hal for sleep related code 2020-08-17 19:09:24 +08:00
Armando e58ce2141d spi_master: rename the hal layer function that calculates clock and timing 2020-08-17 17:04:07 +08:00
Michael (XIAO Xufeng) dc22501b47 Merge branch 'bugfix/mcpwm_capture_getedge_null_deref' into 'master'
Bugfix(MCPWM):  Fix dereferencing of a null pointer in function mcpwm_capture_signal_get_edge

See merge request espressif/esp-idf!9255
2020-08-17 15:52:24 +08:00
Angus Gratton 62c4b569ad Merge branch 'refactor/timekeeping_init' into 'master'
Timekeeping refactor

Closes IDF-1864

See merge request espressif/esp-idf!7824
2020-08-17 08:13:44 +08:00
morris a3da67a97a ethernet: set DMA owner after all descriptors have configured 2020-08-10 18:54:25 +08:00
morris f4131b9b42 ethernet: handle early rx interrupt 2020-08-10 18:54:25 +08:00
morris 4e38aab1b0 ethernet: support flow control for esp32 emac 2020-08-10 18:54:25 +08:00
wubowen de72ef2c1a bugfix: Fixed the issue that calling mcpwm_capture_signal_get_edge causes a crash 2020-08-10 09:31:03 +00:00
Darian Leung fdbda1ce78 TWAI: Simplify caps header
This commit simplies the defines made in the _caps.h header. Kconfig
option dependencies were moved into the LL, and the check for a
valid BRP has bee simplified.
2020-08-10 17:01:32 +08:00
Darian Leung d814a40c1d TWAI: Fix ESP32-S2 register field name 2020-08-10 17:01:32 +08:00
Darian Leung 6983d1e0bb TWAI: Fix BRP field initialization onf ESP32 ECO3
This commit zero initializes the brp_div field on ESP32 ECO3
to prevent incorrect timing configuration.
2020-08-10 17:01:32 +08:00
Renz Bagaporo 5785e4dfb6 newlib: move some functions to soc, esp32, esp32s2 2020-08-10 15:11:38 +08:00
Michael (XIAO Xufeng) cda9c595d7 Merge branch 'feature/mcpwm_capture_on_both_edge' into 'master'
MCPWM: add an option to do mcpwm capture on both edges

See merge request espressif/esp-idf!9850
2020-08-10 11:48:50 +08:00
morris edb5ddf63b soc: placeholder for esp32s3 HAL driver
soc rtc
2020-08-07 11:59:00 +08:00
Michael (XIAO Xufeng) bfd71ae7ec Merge branch 'feature/dma_memcpy' into 'master'
esp32s2: async memcpy

Closes IDF-1573

See merge request espressif/esp-idf!8436
2020-08-06 11:32:43 +08:00
dongyou 97ae87df41 wifi, bt: move esp_phy_common_clock_disable into periph_ctrl and put it into IRAM
Replace periph_module_enable/disable by periph_wifi_bt_common_module_enable which are in IRAM.
AddIRAM_ATTR periph_ll_wifi_bt_module_enable_clk_clear_rstandIRAM_ATTR periph_ll_wifi_bt_module_disable_clk_set_rstto fit O0 optimization level.
Delete duplicated spinlock and counter.
2020-08-05 11:04:16 +08:00
morris b30bd7a2ef esp32s2: add CP_DMA driver 2020-08-04 15:28:32 +08:00