Zephyr API Documentation
3.7.0
A Scalable Open Source RTOS
|
Memory Banks Driver APIs. More...
Data Structures | |
struct | sys_mm_drv_bank |
Information about memory banks. More... | |
Functions | |
void | sys_mm_drv_bank_init (struct sys_mm_drv_bank *bank, uint32_t bank_pages) |
Initialize a memory bank's data structure. | |
uint32_t | sys_mm_drv_bank_page_mapped (struct sys_mm_drv_bank *bank) |
Track the mapping of a page in the specified memory bank. | |
uint32_t | sys_mm_drv_bank_page_unmapped (struct sys_mm_drv_bank *bank) |
Track the unmapping of a page in the specified memory bank. | |
void | sys_mm_drv_bank_stats_reset_max (struct sys_mm_drv_bank *bank) |
Reset the max number of pages mapped in the bank. | |
void | sys_mm_drv_bank_stats_get (struct sys_mm_drv_bank *bank, struct sys_memory_stats *stats) |
Retrieve the memory usage stats for the specified memory bank. | |
Memory Banks Driver APIs.
This contains APIs for a system-wide memory management driver to track page usage within memory banks.
void sys_mm_drv_bank_init | ( | struct sys_mm_drv_bank * | bank, |
uint32_t | bank_pages | ||
) |
#include <zephyr/drivers/mm/mm_drv_bank.h>
Initialize a memory bank's data structure.
The driver may wish to track various information about the memory banks that it uses. This routine will initialize a generic structure containing that information. Since at the power on all memory banks are switched on it will start with all pages mapped. In next phase of driver initialization unused pages will be unmapped.
[in,out] | bank | Pointer to the memory bank structure used for tracking |
[in] | bank_pages | Number of pages in the memory bank |
uint32_t sys_mm_drv_bank_page_mapped | ( | struct sys_mm_drv_bank * | bank | ) |
#include <zephyr/drivers/mm/mm_drv_bank.h>
Track the mapping of a page in the specified memory bank.
This function is used to update the number of mapped pages within the specified memory bank.
[in,out] | bank | Pointer to the memory bank's data structure |
uint32_t sys_mm_drv_bank_page_unmapped | ( | struct sys_mm_drv_bank * | bank | ) |
#include <zephyr/drivers/mm/mm_drv_bank.h>
Track the unmapping of a page in the specified memory bank.
This function is used to update the number of unmapped pages within the specified memory bank.
[in,out] | bank | Pointer to the memory bank's data structure |
void sys_mm_drv_bank_stats_get | ( | struct sys_mm_drv_bank * | bank, |
struct sys_memory_stats * | stats | ||
) |
#include <zephyr/drivers/mm/mm_drv_bank.h>
Retrieve the memory usage stats for the specified memory bank.
This routine extracts the system memory stats from the memory bank.
[in] | bank | Pointer to the memory bank's data structure |
[in,out] | stats | Pointer to memory into which to copy the system memory stats |
void sys_mm_drv_bank_stats_reset_max | ( | struct sys_mm_drv_bank * | bank | ) |
#include <zephyr/drivers/mm/mm_drv_bank.h>
Reset the max number of pages mapped in the bank.
This routine is used to reset the maximum number of pages mapped in the specified memory bank to the current number of pages mapped in that memory bank.
[in,out] | bank | Pointer to the memory bank's data structure |