From f1df3eb99b8a72838bc1beeaff3651f998665ab7 Mon Sep 17 00:00:00 2001 From: Marius Vikhammer Date: Thu, 30 May 2024 16:39:07 +0800 Subject: [PATCH] docs(core): update misc docs for C5 --- docs/docs_not_updated/esp32c5.txt | 76 ------------------- docs/en/api-guides/startup.rst | 4 +- docs/en/api-reference/system/intr_alloc.rst | 4 + docs/zh_CN/api-guides/startup.rst | 4 +- .../zh_CN/api-reference/system/intr_alloc.rst | 4 + 5 files changed, 12 insertions(+), 80 deletions(-) diff --git a/docs/docs_not_updated/esp32c5.txt b/docs/docs_not_updated/esp32c5.txt index f02c429bad..8517a16518 100644 --- a/docs/docs_not_updated/esp32c5.txt +++ b/docs/docs_not_updated/esp32c5.txt @@ -17,10 +17,7 @@ api-guides/jtag-debugging/configure-other-jtag.rst api-guides/jtag-debugging/building-openocd-windows.rst api-guides/jtag-debugging/index.rst api-guides/jtag-debugging/configure-builtin-jtag.rst -api-guides/partition-tables.rst api-guides/app_trace.rst -api-guides/thread-local-storage.rst -api-guides/error-handling.rst api-guides/tools/idf-tools.rst api-guides/tools/idf-clang-tidy.rst api-guides/tools/idf-component-manager.rst @@ -31,29 +28,20 @@ api-guides/tools/idf-monitor.rst api-guides/tools/idf-docker-image.rst api-guides/tools/index.rst api-guides/low-power-mode.rst -api-guides/startup.rst -api-guides/hlinterrupts.rst api-guides/RF_calibration.rst -api-guides/unit-tests.rst api-guides/deep-sleep-stub.rst api-guides/blufi.rst api-guides/lwip.rst api-guides/coexist.rst api-guides/flash_psram_config.rst api-guides/usb-serial-jtag-console.rst -api-guides/linker-script-generation.rst api-guides/wifi.rst api-guides/usb-otg-console.rst api-guides/bluetooth.rst api-guides/wireshark-user-guide.rst -api-guides/bootloader.rst api-guides/esp-wifi-mesh.rst -api-guides/cplusplus.rst -api-guides/build-system.rst api-guides/core_dump.rst api-guides/inc/external-ram-esp32-notes.rst -api-guides/inc/linux-host-requirements.rst -api-guides/c.rst api-guides/dfu.rst api-guides/current-consumption-measurement-modules.rst api-guides/esp-ble-mesh/ble-mesh-index.rst @@ -62,15 +50,8 @@ api-guides/esp-ble-mesh/ble-mesh-terminology.rst api-guides/esp-ble-mesh/ble-mesh-architecture.rst api-guides/esp-ble-mesh/ble-mesh-faq.rst api-guides/external-ram.rst -api-guides/reproducible-builds.rst -api-guides/hardware-abstraction.rst api-guides/wifi-security.rst -api-guides/host-apps.rst -api-guides/index.rst api-guides/openthread.rst -api-guides/fatal-errors.rst -api-guides/memory-types.rst -api-guides/general-notes.rst third-party-tools/platformio.rst third-party-tools/clion.rst third-party-tools/visualgdb.rst @@ -79,7 +60,6 @@ libraries-and-frameworks/libs-frameworks.rst libraries-and-frameworks/index.rst libraries-and-frameworks/cloud-frameworks.rst versions.rst -api-reference/api-conventions.rst api-reference/template.rst api-reference/provisioning/protocomm.rst api-reference/provisioning/provisioning.rst @@ -142,7 +122,6 @@ api-reference/peripherals/index.rst api-reference/peripherals/sdmmc_host.rst api-reference/peripherals/ecdsa.rst api-reference/peripherals/rmt.rst -api-reference/kconfig.rst api-reference/network/esp_openthread.rst api-reference/network/esp_eth.rst api-reference/network/esp_netif_driver.rst @@ -158,41 +137,22 @@ api-reference/system/sleep_modes.rst api-reference/system/mm_sync.rst api-reference/system/ota.rst api-reference/system/app_trace.rst -api-reference/system/perfmon.rst -api-reference/system/esp_function_with_shared_stack.rst api-reference/system/efuse.rst api-reference/system/chip_revision.rst api-reference/system/async_memcpy.rst api-reference/system/random.rst api-reference/system/esp_timer.rst -api-reference/system/esp_event.rst api-reference/system/freertos.rst api-reference/system/system_time.rst -api-reference/system/log.rst -api-reference/system/soc_caps.rst -api-reference/system/internal-unstable.rst -api-reference/system/app_image_format.rst api-reference/system/freertos_additions.rst -api-reference/system/himem.rst api-reference/system/power_management.rst -api-reference/system/mem_alloc.rst -api-reference/system/wdts.rst -api-reference/system/misc_system_api.rst -api-reference/system/bootloader_image_format.rst api-reference/system/inc/show-efuse-table_ESP32-C5.rst api-reference/system/inc/revisions_ESP32-C5.rst api-reference/system/inc/espefuse_summary_ESP32-C5.rst api-reference/system/inc/power_management_esp32c5.rst -api-reference/system/heap_debug.rst api-reference/system/mm.rst -api-reference/system/ipc.rst api-reference/system/esp_https_ota.rst -api-reference/system/esp_err.rst api-reference/system/freertos_idf.rst -api-reference/system/console.rst -api-reference/system/intr_alloc.rst -api-reference/system/index.rst -api-reference/system/pthread.rst api-reference/bluetooth/esp_spp.rst api-reference/bluetooth/esp_l2cap_bt.rst api-reference/bluetooth/esp_hidd.rst @@ -219,7 +179,6 @@ api-reference/bluetooth/esp-ble-mesh.rst api-reference/bluetooth/index.rst api-reference/bluetooth/esp_gap_ble.rst api-reference/bluetooth/classic_bt.rst -api-reference/error-codes.rst api-reference/index.rst api-reference/protocols/icmp_echo.rst api-reference/protocols/esp_serial_slave_link.rst @@ -244,41 +203,6 @@ security/secure-boot-v1.rst security/index.rst about.rst resources.rst -migration-guides/release-5.x/5.2/ieee802154.rst -migration-guides/release-5.x/5.2/gcc.rst -migration-guides/release-5.x/5.2/protocols.rst -migration-guides/release-5.x/5.2/wifi.rst -migration-guides/release-5.x/5.2/storage.rst -migration-guides/release-5.x/5.2/index.rst -migration-guides/release-5.x/5.2/system.rst -migration-guides/release-5.x/5.2/peripherals.rst -migration-guides/release-5.x/5.3/security.rst -migration-guides/release-5.x/5.3/bluetooth-low-energy.rst -migration-guides/release-5.x/5.3/storage.rst -migration-guides/release-5.x/5.3/index.rst -migration-guides/release-5.x/5.3/system.rst -migration-guides/release-5.x/5.3/peripherals.rst -migration-guides/release-5.x/5.1/ieee802154.rst -migration-guides/release-5.x/5.1/gcc.rst -migration-guides/release-5.x/5.1/networking.rst -migration-guides/release-5.x/5.1/storage.rst -migration-guides/release-5.x/5.1/index.rst -migration-guides/release-5.x/5.1/system.rst -migration-guides/release-5.x/5.1/peripherals.rst -migration-guides/release-5.x/5.0/bluetooth-classic.rst -migration-guides/release-5.x/5.0/gcc.rst -migration-guides/release-5.x/5.0/bluetooth-low-energy.rst -migration-guides/release-5.x/5.0/removed-components.rst -migration-guides/release-5.x/5.0/protocols.rst -migration-guides/release-5.x/5.0/networking.rst -migration-guides/release-5.x/5.0/provisioning.rst -migration-guides/release-5.x/5.0/build-system.rst -migration-guides/release-5.x/5.0/storage.rst -migration-guides/release-5.x/5.0/index.rst -migration-guides/release-5.x/5.0/system.rst -migration-guides/release-5.x/5.0/tools.rst -migration-guides/release-5.x/5.0/peripherals.rst -migration-guides/index.rst get-started/establish-serial-connection.rst get-started/linux-macos-setup.rst get-started/linux-macos-start-project.rst diff --git a/docs/en/api-guides/startup.rst b/docs/en/api-guides/startup.rst index e0276986ea..a9196363ae 100644 --- a/docs/en/api-guides/startup.rst +++ b/docs/en/api-guides/startup.rst @@ -50,11 +50,11 @@ Startup code called from the reset vector determines the boot mode by checking ` Second stage bootloader binary image is loaded from flash starting at address {IDF_TARGET_CONFIG_BOOTLOADER_OFFSET_IN_FLASH}. The 4 kB sector of flash before this address is unused. -.. only:: esp32p4 +.. only:: SOC_KEY_MANAGER_SUPPORTED Second stage bootloader binary image is loaded from flash starting at address {IDF_TARGET_CONFIG_BOOTLOADER_OFFSET_IN_FLASH}. The 8 kB sector of flash before this address is reserved for the key manager for use with flash encryption (AES-XTS). -.. only:: not (esp32 or esp32s2 or esp32p4) +.. only:: not (esp32 or esp32s2 or SOC_KEY_MANAGER_SUPPORTED) Second stage bootloader binary image is loaded from the start of flash at offset {IDF_TARGET_CONFIG_BOOTLOADER_OFFSET_IN_FLASH}. diff --git a/docs/en/api-reference/system/intr_alloc.rst b/docs/en/api-reference/system/intr_alloc.rst index 9d8743bfec..19e56de49c 100644 --- a/docs/en/api-reference/system/intr_alloc.rst +++ b/docs/en/api-reference/system/intr_alloc.rst @@ -26,6 +26,10 @@ Overview The {IDF_TARGET_NAME} has two cores, with 32 external asynchronous interrupts each. Each interrupt's priority is independently programmable. In addition, there are also 3 core local interrupt sources (CLINT) on each core. See **{IDF_TARGET_NAME} Technical Reference Manual** [`PDF <{IDF_TARGET_TRM_EN_URL}#riscvcpu>`__] for more details. +.. only:: esp32c5 + + The {IDF_TARGET_NAME} has one core, with 32 external asynchronous interrupts. Each interrupt's priority is independently programmable. In addition, there are also 3 core local interrupt sources (CLINT). For details, see **{IDF_TARGET_NAME} Technical Reference Manual** > **High-Performance CPU** [`PDF <{IDF_TARGET_TRM_EN_URL}#riscvcpu>`__]. + Because there are more interrupt sources than interrupts, sometimes it makes sense to share an interrupt in multiple drivers. The :cpp:func:`esp_intr_alloc` abstraction exists to hide all these implementation details. A driver can allocate an interrupt for a certain peripheral by calling :cpp:func:`esp_intr_alloc` (or :cpp:func:`esp_intr_alloc_intrstatus`). It can use the flags passed to this function to specify the type, priority, and trigger method of the interrupt to allocate. The interrupt allocation code will then find an applicable interrupt, use the interrupt matrix to hook it up to the peripheral, and install the given interrupt handler and ISR to it. diff --git a/docs/zh_CN/api-guides/startup.rst b/docs/zh_CN/api-guides/startup.rst index db8a012549..db82ddc7d9 100644 --- a/docs/zh_CN/api-guides/startup.rst +++ b/docs/zh_CN/api-guides/startup.rst @@ -50,11 +50,11 @@ 二级引导程序二进制镜像会从 flash 的 {IDF_TARGET_CONFIG_BOOTLOADER_OFFSET_IN_FLASH} 偏移地址处加载。该地址前面的 flash 4 kB 扇区未使用。 -.. only:: esp32p4 +.. only:: SOC_KEY_MANAGER_SUPPORTED 二级引导程序二进制镜像会从 flash 的 {IDF_TARGET_CONFIG_BOOTLOADER_OFFSET_IN_FLASH} 偏移地址处加载。该地址前面的 flash 8 kB 扇区将为密钥管理器保留,用于与 flash 加密 (AES-XTS) 相关的操作。 - .. only:: not (esp32 or esp32s2 or esp32p4) + .. only:: not (esp32 or esp32s2 or SOC_KEY_MANAGER_SUPPORTED) 二级引导程序二进制镜像会从 flash 的 {IDF_TARGET_CONFIG_BOOTLOADER_OFFSET_IN_FLASH} 偏移地址处加载。 diff --git a/docs/zh_CN/api-reference/system/intr_alloc.rst b/docs/zh_CN/api-reference/system/intr_alloc.rst index eb4fa1dd12..ec60d86e41 100644 --- a/docs/zh_CN/api-reference/system/intr_alloc.rst +++ b/docs/zh_CN/api-reference/system/intr_alloc.rst @@ -26,6 +26,10 @@ {IDF_TARGET_NAME} 有两个核,每个核有 32 个外部异步中断。每个中断的优先级别都可独立地通过编程设置。此外,每个核还有 3 个核心本地中断源 (CLINT)。详细信息请参见 **{IDF_TARGET_NAME} 技术参考手册** [`PDF <{IDF_TARGET_TRM_CN_URL}#riscvcpu>`__]。 +.. only:: esp32c5 + + {IDF_TARGET_NAME} 有一个核,32 个外部异步中断。每个中断的优先级别都可独立地通过编程设置。此外,还有 3 个核心本地中断源 (CLINT)。详细信息请参见 **{IDF_TARGET_NAME} 技术参考手册** > **高性能处理器** [`PDF <{IDF_TARGET_TRM_CN_URL}#riscvcpu>`__]。 + 由于中断源数量多于中断,有时多个驱动程序可以共用一个中断。:cpp:func:`esp_intr_alloc` 抽象隐藏了这些实现细节。 驱动程序可以通过调用 :cpp:func:`esp_intr_alloc`,或 :cpp:func:`esp_intr_alloc_intrstatus` 为某个外设分配中断。通过向此函数传递 flag,可以指定中断类型、优先级和触发方式。然后,中断分配代码会找到适用的中断,使用中断矩阵将其连接到外设,并为其安装给定的中断处理程序和 ISR。