Reserved memory

Stable: 13.10.2023 - 06:38 / Revision: 13.10.2023 - 06:37

I am here to prevent the first-page-empty bug!

1 Article purpose

The Reserved-memory mechanism[1] allows reserving memory regions in the kernel. This mechanism is used by drivers to allocate buffers in specific memory regions (such as MCU SRAM) or to get a dedicated memory pool that will not be managed by Linux® conventionnal memory allocator (in DDR).

2 Use cases

In STM32 MPU Linux OS, the reserved-memory is used by:

  • the dmaengine driver to reserve the region where DMA buffers are allocated, typically MCU SRAM.
  • the remoteproc driver to reserve the regions in RETRAM and MCU SRAM where the coprocessor firmware will be loaded.
  • the RPMsg driver to reserve the region where RPMsg buffers used for interprocess communication with the coprocessor, are allocated, typically MCU SRAM.
  • the Vivante Gcnano driver to reserve the region where the GPU working memory is allocated, typically the DDR.

3 References


IMPORTANT NOTICE – READ CAREFULLY
STMicroelectronics NV and its subsidiaries ("ST") reserve the right to make changes, corrections, enhancements, modifications, and improvements to ST products and/or to this document at any time without notice. Purchasers should obtain the latest relevant information on ST products before placing orders. ST products are sold pursuant to ST’s terms and conditions of sale in place at the time of order acknowledgment.

Purchasers are solely responsible for the choice, selection, and use of ST products and ST assumes no liability for application assistance or the design of purchasers’ products.

No license, express or implied, to any intellectual property right is granted by ST herein.

Resale of ST products with provisions different from the information set forth herein shall void any warranty granted by ST for such product.

ST and the ST logo are trademarks of ST. For additional information about ST trademarks, refer to www.st.com/trademarks. All other product or service names are the property of their respective owners.

Information in this document supersedes and replaces information previously supplied in any prior versions of this document.