53 lines
1.4 KiB
ReStructuredText
53 lines
1.4 KiB
ReStructuredText
.. zephyr:code-sample:: esp32-spiram
|
|
:name: SPIRAM
|
|
|
|
Allocate memory from SPIRAM.
|
|
|
|
Overview
|
|
********
|
|
|
|
This sample shows how to allocate memory from SPIRAM by using
|
|
:c:func:`shared_multi_heap_aligned_alloc` with ``SMH_REG_ATTR_EXTERNAL`` attribute. Checks if the
|
|
memory was correctly allocated then frees it by calling :c:func:`shared_multi_heap_free`.
|
|
It also allocates memory from internal memory and checks if the address range is correct.
|
|
|
|
Supported SoCs
|
|
**************
|
|
|
|
The following SoCs are supported by this sample code so far:
|
|
|
|
* ESP32
|
|
* ESP32-S2
|
|
* ESP32-S3
|
|
|
|
Building and Running
|
|
********************
|
|
|
|
Make sure you have your board connected over USB port.
|
|
|
|
.. code-block:: console
|
|
|
|
west build -b esp32s3_devkitm/esp32s3/procpu samples/boards/espressif/spiram_test
|
|
west flash
|
|
|
|
If using another supported Espressif board, replace the argument in the above
|
|
command with a proper board name (e.g., ``esp32s2_saola``).
|
|
|
|
Sample Output
|
|
=============
|
|
|
|
To check output of this sample, run ``west espressif monitor`` or any other serial
|
|
console program (e.g., minicom, putty, screen, etc).
|
|
This example uses ``west espressif monitor``, which automatically detects the serial
|
|
port at ``/dev/ttyUSB0``:
|
|
|
|
.. code-block:: console
|
|
|
|
$ west espressif monitor
|
|
|
|
.. code-block:: console
|
|
|
|
*** Booting Zephyr OS build v3.7.0-446-g93c9da66944c ***
|
|
SPIRAM mem test pass
|
|
Internal mem test pass
|