Lines Matching full:blocks

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.
86 uint32_t num_blocks; /* Total number of blocks */
89 uint32_t used_blocks; /* Current number of blocks in use */
90 uint32_t max_used_blocks; /* Maximum number of blocks in use */
100 /* Bitmap of allocated blocks */
124 * @param num_blks Total number of memory blocks.
146 * @param num_blks Total number of memory blocks.
167 * @param num_blks Total number of memory blocks.
178 * @param num_blks Total number of memory blocks.
190 * @param num_blks Total number of memory blocks.
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
214 * @param[in] count Number of blocks to allocate.
216 * the memory blocks. It must have at least
221 * @retval -ENOMEM Not enough blocks for allocation.
227 * @brief Allocate a contiguous set of memory blocks
229 * Allocate multiple memory blocks, and place their pointers into
233 * @param[in] count Number of blocks to allocate.
238 * @retval -ENOMEM Not enough contiguous blocks for allocation.
244 * @brief Force allocation of a specified blocks in a memory block object
246 * Allocate a specified blocks in a memory block object.
253 * @param[in] count Number of blocks to allocate.
257 * @retval -ENOMEM Some of blocks are taken and cannot be allocated
266 * @param[in] count Number of blocks to check.
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
280 * @param[in] count Number of blocks to free.
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
297 * @param[in] count Number of blocks to free.
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
362 * Just as for sys_mem_blocks_alloc(), allocates multiple blocks of
366 * @param[in] group Multi memory blocks allocator structure.
369 * @param[in] count Number of blocks to allocate
371 * the memory blocks. It must have at least
378 * @retval -ENOMEM Not enough blocks for allocation.
386 * @brief Free memory allocated from multi memory blocks allocator group
388 * Free previous allocated memory blocks from sys_multi_mem_blocks_alloc().
390 * Note that all blocks in @p in_blocks must be from the same allocator.
392 * @param[in] group Multi memory blocks allocator structure.
393 * @param[in] count Number of blocks to free.
394 * @param[in] in_blocks Input array of pointers to the memory blocks.