Select one of the symbols to view example projects that use it.
 
Outline
#include <stddef.h>
#include <stdbool.h>
#include "esp_err.h"
esp_psram_check_ptr_addr(const void *);
esp_psram_extram_add_to_heap_allocator();
esp_psram_extram_reserve_dma_pool(size_t);
esp_psram_extram_test();
esp_psram_bss_init();
esp_psram_extram_writeback_cache();
Files
ESP-IDF
components
app_trace
app_update
bootloader_support
bt
cmock
console
cxx
driver
efuse
esp_adc
esp_app_format
esp_bootloader_format
esp_coex
esp_common
esp_driver_ana_cmpr
esp_driver_cam
esp_driver_dac
esp_driver_gpio
esp_driver_gptimer
esp_driver_i2c
esp_driver_i2s
esp_driver_jpeg
esp_driver_ledc
esp_driver_mcpwm
esp_driver_parlio
esp_driver_pcnt
esp_driver_rmt
esp_driver_sdio
esp_driver_sdm
esp_driver_sdmmc
esp_driver_sdspi
esp_driver_spi
esp_driver_tsens
esp_driver_uart
esp_driver_usb_serial_jtag
esp_eth
esp_event
esp_gdbstub
esp_hid
esp_http_client
esp_http_server
esp_https_ota
esp_https_server
esp_hw_support
esp_lcd
esp_local_ctrl
esp_mm
esp_netif
esp_partition
esp_phy
esp_pm
esp_psram
esp32
include
esp_private
esp32
esp_ringbuf
esp_rom
esp_security
esp_system
esp_timer
esp_vfs_console
esp_wifi
esp-tls
espcoredump
hal
heap
http_parser
ieee802154
log
mqtt
newlib
nvs_flash
nvs_sec_provider
openthread
perfmon
protobuf-c
protocomm
pthread
rt
sdmmc
soc
spi_flash
spiffs
tcp_transport
ulp
unity
vfs
wear_levelling
wifi_provisioning
wpa_supplicant
xtensa
examples
lwIP
FreeRTOS
cJSON
mbedTLS
SourceVuESP-IDF Framework and ExamplesESP-IDFcomponents/esp_psram/include/esp_private/esp_psram_extram.h
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
/* * SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 *//* ... */ #pragma once #include <stddef.h> #include <stdbool.h> #include "esp_err.h" #ifdef __cplusplus extern "C" { #endif /** * @brief Check if the pointer is on PSRAM * * @param[in] p The pointer to check * * @return * - False: the pointer isn't on PSRAM, or PSRAM isn't initialised successfully * - True: the pointer is on PSRAM *//* ... */ bool esp_psram_check_ptr_addr(const void *p); /** * @brief Add the initialized PSRAM to the heap allocator. * * @return * - ESP_OK: On success * Other error type, see `heap_caps_add_region`. *//* ... */ esp_err_t esp_psram_extram_add_to_heap_allocator(void); /** * @brief Reserve a pool of internal memory for specific DMA/internal allocations * * @param size Size of reserved pool in bytes * * @return * - ESP_OK: On success * - ESP_ERR_NO_MEM: When no memory available for pool *//* ... */ esp_err_t esp_psram_extram_reserve_dma_pool(size_t size); /** * @brief Memory test for PSRAM. Should be called after PSRAM is initialized and * (in case of a dual-core system) the app CPU is online. This test overwrites the * memory with crap, so do not call after e.g. the heap allocator has stored important * stuff in PSRAM. * * @return true on success, false on failed memory test *//* ... */ bool esp_psram_extram_test(void); /** * @brief Init .bss on psram *//* ... */ void esp_psram_bss_init(void); #if CONFIG_IDF_TARGET_ESP32 /** * @brief Force a writeback of the data in the PSRAM cache. This is to be called whenever * cache is disabled, because disabling cache on the ESP32 discards the data in the PSRAM * cache. * * This is meant for use from within the SPI flash code. *//* ... */ void esp_psram_extram_writeback_cache(void);/* ... */ #endif #ifdef __cplusplus }{...} #endif
Details