Lines Matching full:memory
10 * @brief Memory Blocks Allocator
31 * @defgroup mem_blocks_apis Memory Blocks APIs
37 * @brief Memory Blocks Allocator
42 * @brief Multi Memory Blocks Allocator
49 * @brief Memory Blocks Allocator
56 * @brief Multi Memory Blocks Allocator
61 * @brief Multi memory blocks allocator choice function
64 * a specific memory blocks allocator based on the opaque cfg value,
72 * @param group Multi memory blocks allocator structure.
97 /* Memory block buffer */
104 /* Spinlock guarding access to memory block internals */
120 * @brief Create a memory block object with a providing backing buffer.
122 * @param name Name of the memory block object.
123 * @param blk_sz Size of each memory block (in bytes, power of 2).
124 * @param num_blks Total number of memory blocks.
126 * @param mbmod Modifier to the memory block struct
142 * @brief Create a memory block object with a new backing buffer.
144 * @param name Name of the memory block object.
145 * @param blk_sz Size of each memory block (in bytes, power of 2).
146 * @param num_blks Total number of memory blocks.
147 * @param balign Alignment of the memory block buffer (power of 2).
148 * @param mbmod Modifier to the memory block struct
163 * @brief Create a memory block object with a new backing buffer.
165 * @param name Name of the memory block object.
166 * @param blk_sz Size of each memory block (in bytes).
167 * @param num_blks Total number of memory blocks.
168 * @param buf_align Alignment of the memory block buffer (power of 2).
174 * @brief Create a static memory block object with a new backing buffer.
176 * @param name Name of the memory block object.
177 * @param blk_sz Size of each memory block (in bytes).
178 * @param num_blks Total number of memory blocks.
179 * @param buf_align Alignment of the memory block buffer (power of 2).
186 * @brief Create a memory block object with a providing backing buffer.
188 * @param name Name of the memory block object.
189 * @param blk_sz Size of each memory block (in bytes).
190 * @param num_blks Total number of memory blocks.
197 * @brief Create a static memory block object with a providing backing buffer.
199 * @param name Name of the memory block object.
200 * @param blk_sz Size of each memory block (in bytes).
201 * @param num_blks Total number of memory blocks.
208 * @brief Allocate multiple memory blocks
210 * Allocate multiple memory blocks, and place their pointers into
213 * @param[in] mem_block Pointer to memory block object.
216 * the memory blocks. It must have at least
227 * @brief Allocate a contiguous set of memory blocks
229 * Allocate multiple memory blocks, and place their pointers into
232 * @param[in] mem_block Pointer to memory block object.
244 * @brief Force allocation of a specified blocks in a memory block object
246 * Allocate a specified blocks in a memory block object.
248 * allocation may take any of the free memory space
251 * @param[in] mem_block Pointer to memory block object.
264 * @param[in] mem_block Pointer to memory block object.
268 * @retval 1 All memory blocks are free
269 * @retval 0 At least one of the memory blocks is taken
274 * @brief Free multiple memory blocks
276 * Free multiple memory blocks according to the array of memory
279 * @param[in] mem_block Pointer to memory block object.
281 * @param[in] in_blocks Input array of pointers to the memory blocks.
291 * @brief Free contiguous multiple memory blocks
293 * Free contiguous multiple memory blocks
295 * @param[in] mem_block Pointer to memory block object.
296 * @param[in] block Pointer to the first memory block
307 * @brief Get the runtime statistics of a memory block
309 * This function retrieves the runtime stats for the specified memory block
310 * @a mem_block and copies it into the memory pointed to by @a stats.
312 * @param mem_block Pointer to system memory block
321 * @brief Reset the maximum memory block usage
323 * This routine resets the maximum memory usage in the specified memory
324 * block @a mem_block to match that block's current memory usage.
326 * @param mem_block Pointer to system memory block
334 * @brief Initialize multi memory blocks allocator group
340 * @param group Multi memory blocks allocator structure.
350 * This adds a known allocator to an existing multi memory blocks
353 * @param group Multi memory blocks allocator structure.
360 * @brief Allocate memory from multi memory blocks allocator group
363 * memory. Takes an opaque configuration pointer passed to the choice
366 * @param[in] group Multi memory blocks allocator structure.
371 * the memory blocks. It must have at least
386 * @brief Free memory allocated from multi memory blocks allocator group
388 * Free previous allocated memory blocks from sys_multi_mem_blocks_alloc().
392 * @param[in] group Multi memory blocks allocator structure.
394 * @param[in] in_blocks Input array of pointers to the memory blocks.