/Zephyr-latest/lib/mem_blocks/ |
D | mem_blocks.c | 16 static void *alloc_blocks(sys_mem_blocks_t *mem_block, size_t num_blocks) in alloc_blocks() argument 23 k_spinlock_key_t key = k_spin_lock(&mem_block->lock); in alloc_blocks() 27 r = sys_bitarray_alloc(mem_block->bitmap, num_blocks, &offset); in alloc_blocks() 30 k_spin_unlock(&mem_block->lock, key); in alloc_blocks() 37 mem_block->info.used_blocks += (uint32_t)num_blocks; in alloc_blocks() 39 if (mem_block->info.max_used_blocks < mem_block->info.used_blocks) { in alloc_blocks() 40 mem_block->info.max_used_blocks = mem_block->info.used_blocks; in alloc_blocks() 43 k_spin_unlock(&mem_block->lock, key); in alloc_blocks() 48 blk = mem_block->buffer + (offset << mem_block->info.blk_sz_shift); in alloc_blocks() 53 static int free_blocks(sys_mem_blocks_t *mem_block, void *ptr, in free_blocks() argument [all …]
|
/Zephyr-latest/drivers/i2s/ |
D | i2s_common.c | 13 void *mem_block; in z_impl_i2s_buf_read() local 16 ret = i2s_read((const struct device *)dev, &mem_block, size); in z_impl_i2s_buf_read() 23 memcpy(buf, mem_block, *size); in z_impl_i2s_buf_read() 24 k_mem_slab_free(rx_cfg->mem_slab, mem_block); in z_impl_i2s_buf_read() 34 void *mem_block; in z_impl_i2s_buf_write() local 45 ret = k_mem_slab_alloc(tx_cfg->mem_slab, &mem_block, K_FOREVER); in z_impl_i2s_buf_write() 50 memcpy(mem_block, (void *)buf, size); in z_impl_i2s_buf_write() 52 ret = i2s_write((const struct device *)dev, mem_block, size); in z_impl_i2s_buf_write() 54 k_mem_slab_free(tx_cfg->mem_slab, mem_block); in z_impl_i2s_buf_write()
|
D | i2s_handlers.c | 49 void *mem_block; in z_vrfy_i2s_buf_read() local 55 ret = i2s_read((const struct device *)dev, &mem_block, &data_size); in z_vrfy_i2s_buf_read() 66 copy_success = k_usermode_to_copy((void *)buf, mem_block, in z_vrfy_i2s_buf_read() 69 k_mem_slab_free(rx_cfg->mem_slab, mem_block); in z_vrfy_i2s_buf_read() 84 void *mem_block; in z_vrfy_i2s_buf_write() local 96 ret = k_mem_slab_alloc(tx_cfg->mem_slab, &mem_block, K_FOREVER); in z_vrfy_i2s_buf_write() 101 ret = k_usermode_from_copy(mem_block, (void *)buf, size); in z_vrfy_i2s_buf_write() 103 k_mem_slab_free(tx_cfg->mem_slab, mem_block); in z_vrfy_i2s_buf_write() 107 ret = i2s_write((const struct device *)dev, mem_block, size); in z_vrfy_i2s_buf_write() 109 k_mem_slab_free(tx_cfg->mem_slab, mem_block); in z_vrfy_i2s_buf_write()
|
D | i2s_sam_ssc.c | 56 void *mem_block; member 87 void *mem_block; member 116 static int queue_get(struct ring_buf *rb, void **mem_block, size_t *size) in queue_get() argument 128 *mem_block = rb->buf[rb->tail].mem_block; in queue_get() 140 static int queue_put(struct ring_buf *rb, void *mem_block, size_t size) in queue_put() argument 156 rb->buf[rb->head].mem_block = mem_block; in queue_put() 216 __ASSERT_NO_MSG(stream->mem_block != NULL); in dma_rx_callback() 224 ret = queue_put(&stream->mem_block_queue, stream->mem_block, in dma_rx_callback() 230 stream->mem_block = NULL; in dma_rx_callback() 240 ret = k_mem_slab_alloc(stream->cfg.mem_slab, &stream->mem_block, in dma_rx_callback() [all …]
|
D | i2s_ll_stm32.c | 53 static int queue_get(struct ring_buf *rb, void **mem_block, size_t *size) in queue_get() argument 64 *mem_block = rb->buf[rb->tail].mem_block; in queue_get() 76 static int queue_put(struct ring_buf *rb, void *mem_block, size_t size) in queue_put() argument 92 rb->buf[rb->head].mem_block = mem_block; in queue_put() 344 __ASSERT_NO_MSG(stream->mem_block == NULL); in i2s_stm32_trigger() 436 static int i2s_stm32_read(const struct device *dev, void **mem_block, in i2s_stm32_read() argument 456 ret = queue_get(&dev_data->rx.mem_block_queue, mem_block, size); in i2s_stm32_read() 464 static int i2s_stm32_write(const struct device *dev, void *mem_block, in i2s_stm32_write() argument 483 return queue_put(&dev_data->tx.mem_block_queue, mem_block, size); in i2s_stm32_write() 572 __ASSERT_NO_MSG(stream->mem_block != NULL); in dma_rx_callback() [all …]
|
D | i2s_litex.c | 263 static int queue_get(struct ring_buf *rb, void **mem_block, size_t *size) in queue_get() argument 274 *mem_block = rb->buf[rb->tail].mem_block; in queue_get() 285 static int queue_put(struct ring_buf *rb, void *mem_block, size_t size) in queue_put() argument 301 rb->buf[rb->head].mem_block = mem_block; in queue_put() 429 static int i2s_litex_read(const struct device *dev, void **mem_block, in i2s_litex_read() argument 446 return queue_get(&dev_data->rx.mem_block_queue, mem_block, size); in i2s_litex_read() 449 static int i2s_litex_write(const struct device *dev, void *mem_block, in i2s_litex_write() argument 468 ret = queue_put(&dev_data->tx.mem_block_queue, mem_block, size); in i2s_litex_write() 505 __ASSERT_NO_MSG(stream->mem_block == NULL); in i2s_litex_trigger() 547 ret = k_mem_slab_alloc(stream->cfg.mem_slab, &stream->mem_block, in i2s_litex_isr_rx() [all …]
|
D | i2s_esp32.c | 45 void *mem_block; member 144 dst = stream->mem_block; in i2s_esp32_restart_dma() 147 src = stream->mem_block; in i2s_esp32_restart_dma() 196 dma_blk.dest_address = (uint32_t)stream->mem_block; in i2s_esp32_start_dma() 200 dma_blk.source_address = (uint32_t)stream->mem_block; in i2s_esp32_start_dma() 241 err = k_mem_slab_alloc(stream->i2s_cfg.mem_slab, &stream->mem_block, K_NO_WAIT); in i2s_esp32_rx_start_transfer() 276 stream->mem_block = item.buffer; in i2s_esp32_tx_start_transfer() 301 if (stream->mem_block != NULL) { in i2s_esp32_rx_stop_transfer() 302 k_mem_slab_free(stream->i2s_cfg.mem_slab, stream->mem_block); in i2s_esp32_rx_stop_transfer() 303 stream->mem_block = NULL; in i2s_esp32_rx_stop_transfer() [all …]
|
D | i2s_test.c | 28 static int vnd_i2s_read(const struct device *dev, void **mem_block, size_t *size) in vnd_i2s_read() argument 33 static int vnd_i2s_write(const struct device *dev, void *mem_block, size_t size) in vnd_i2s_write() argument
|
D | i2s_ll_stm32.h | 11 void *mem_block; member 48 void *mem_block; member
|
D | i2s_litex.h | 68 void *mem_block; member 85 void *mem_block; member
|
D | i2s_nrfx.c | 24 void *mem_block; member 198 buffers->p_tx_buffer = buf.mem_block; in get_next_tx_buffer() 311 .mem_block = released->p_rx_buffer, in data_handler() 405 free_tx_buffer(drv_data, buf.mem_block); in purge_queue() 413 free_rx_buffer(drv_data, buf.mem_block); in purge_queue() 574 void **mem_block, size_t *size) in i2s_nrfx_read() argument 594 LOG_DBG("Released RX %p", buf.mem_block); in i2s_nrfx_read() 597 *mem_block = buf.mem_block; in i2s_nrfx_read() 605 void *mem_block, size_t size) in i2s_nrfx_write() argument 608 struct i2s_buf buf = { .mem_block = mem_block, .size = size }; in i2s_nrfx_write() [all …]
|
D | i2s_mcux_flexcomm.c | 45 void *mem_block; member 324 k_mem_slab_free(mem_slab, queue_entry.mem_block); in i2s_purge_stream_buffers() 478 ret = k_msgq_get(&stream->out_queue, &queue_entry.mem_block, K_NO_WAIT); in i2s_mcux_dma_tx_callback() 481 k_mem_slab_free(stream->cfg.mem_slab, queue_entry.mem_block); in i2s_mcux_dma_tx_callback() 502 (uint32_t *)queue_entry.mem_block, in i2s_mcux_dma_tx_callback() 504 k_msgq_put(&stream->out_queue, &queue_entry.mem_block, K_NO_WAIT); in i2s_mcux_dma_tx_callback() 614 (uint32_t *)queue_entry.mem_block, in i2s_mcux_tx_stream_start() 618 ret = k_msgq_put(&stream->out_queue, &queue_entry.mem_block, K_NO_WAIT); in i2s_mcux_tx_stream_start() 797 static int i2s_mcux_read(const struct device *dev, void **mem_block, in i2s_mcux_read() argument 821 *mem_block = buffer; in i2s_mcux_read() [all …]
|
/Zephyr-latest/tests/subsys/portability/cmsis_rtos_v1/src/ |
D | mempool.c | 11 struct mem_block { struct 18 osPoolDef(MemPool, MAX_BLOCKS, struct mem_block); argument 30 struct mem_block *addr_list[MAX_BLOCKS + 1]; in ZTEST() 32 static struct mem_block zeroblock; in ZTEST() 38 addr_list[i] = (struct mem_block *)osPoolAlloc(mempool_id); in ZTEST() 45 addr_list[i] = (struct mem_block *)osPoolAlloc(mempool_id); in ZTEST() 55 addr_list[i] = (struct mem_block *)osPoolCAlloc(mempool_id); in ZTEST() 58 sizeof(struct mem_block)) == 0, in ZTEST()
|
/Zephyr-latest/tests/subsys/portability/cmsis_rtos_v2/src/ |
D | mempool.c | 14 struct mem_block { struct 19 static char __aligned(sizeof(void *)) sample_mem[sizeof(struct mem_block) * MAX_BLOCKS]; argument 26 .mp_size = sizeof(struct mem_block) * MAX_BLOCKS, 35 struct mem_block *addr_list[MAX_BLOCKS + 1]; in mempool_common_tests() 54 sizeof(struct mem_block), in mempool_common_tests() 64 addr_list[i] = (struct mem_block *)osMemoryPoolAlloc(mp_id, in mempool_common_tests() 78 addr_list[i] = (struct mem_block *)osMemoryPoolAlloc(mp_id, in mempool_common_tests() 107 mp_id = osMemoryPoolNew(MAX_BLOCKS, sizeof(struct mem_block), in ZTEST() 124 mp_id = osMemoryPoolNew(MAX_BLOCKS + 1, sizeof(struct mem_block), in ZTEST() 128 mp_id = osMemoryPoolNew(MAX_BLOCKS, sizeof(struct mem_block), in ZTEST()
|
/Zephyr-latest/include/zephyr/sys/ |
D | mem_blocks.h | 223 int sys_mem_blocks_alloc(sys_mem_blocks_t *mem_block, size_t count, 240 int sys_mem_blocks_alloc_contiguous(sys_mem_blocks_t *mem_block, size_t count, 259 int sys_mem_blocks_get(sys_mem_blocks_t *mem_block, void *in_block, size_t count); 271 int sys_mem_blocks_is_region_free(sys_mem_blocks_t *mem_block, void *in_block, size_t count); 287 int sys_mem_blocks_free(sys_mem_blocks_t *mem_block, size_t count, 303 int sys_mem_blocks_free_contiguous(sys_mem_blocks_t *mem_block, void *block, size_t count); 317 int sys_mem_blocks_runtime_stats_get(sys_mem_blocks_t *mem_block, 330 int sys_mem_blocks_runtime_stats_reset_max(sys_mem_blocks_t *mem_block);
|
/Zephyr-latest/tests/lib/mem_blocks/src/ |
D | main.c | 59 static bool check_buffer_bound(sys_mem_blocks_t *mem_block, void *ptr) in check_buffer_bound() argument 63 start = mem_block->buffer; in check_buffer_bound() 64 end = start + (BIT(mem_block->info.blk_sz_shift) * in check_buffer_bound() 65 mem_block->info.num_blocks); in check_buffer_bound() 115 static void alloc_free(sys_mem_blocks_t *mem_block, in alloc_free() argument 123 if (mem_block == &mem_block_01) { in alloc_free() 126 } else if (mem_block == &mem_block_02) { in alloc_free() 138 ret = sys_mem_blocks_alloc(mem_block, 1, blocks[i]); in alloc_free() 142 zassert_true(check_buffer_bound(mem_block, blocks[i][0]), in alloc_free() 145 ret = sys_bitarray_test_bit(mem_block->bitmap, in alloc_free() [all …]
|
/Zephyr-latest/samples/drivers/i2s/echo/src/ |
D | main.c | 133 static void process_block_data(void *mem_block, uint32_t number_of_samples) in process_block_data() argument 139 int16_t *sample = &((int16_t *)mem_block)[i]; in process_block_data() 192 void *mem_block; in prepare_transfer() local 194 ret = k_mem_slab_alloc(&mem_slab, &mem_block, K_NO_WAIT); in prepare_transfer() 200 memset(mem_block, 0, BLOCK_SIZE); in prepare_transfer() 202 ret = i2s_write(i2s_dev_tx, mem_block, BLOCK_SIZE); in prepare_transfer() 302 void *mem_block; in main() local 306 ret = i2s_read(i2s_dev_rx, &mem_block, &block_size); in main() 312 process_block_data(mem_block, SAMPLES_PER_BLOCK); in main() 314 ret = i2s_write(i2s_dev_tx, mem_block, block_size); in main()
|
/Zephyr-latest/include/zephyr/drivers/ |
D | i2s.h | 326 int (*read)(const struct device *dev, void **mem_block, size_t *size); 327 int (*write)(const struct device *dev, void *mem_block, size_t size); 418 static inline int i2s_read(const struct device *dev, void **mem_block, in i2s_read() argument 424 return api->read(dev, mem_block, size); in i2s_read() 479 static inline int i2s_write(const struct device *dev, void *mem_block, in i2s_write() argument 485 return api->write(dev, mem_block, size); in i2s_write()
|
/Zephyr-latest/samples/drivers/i2s/i2s_codec/src/ |
D | main.c | 167 void *mem_block; in main() local 175 &mem_block, &block_size, TIMEOUT); in main() 182 &mem_block, Z_TIMEOUT_TICKS(TIMEOUT)); in main() 188 ret = i2s_write(i2s_dev_codec, mem_block, block_size); in main()
|
/Zephyr-latest/drivers/led_strip/ |
D | ws2812_i2s.c | 74 void *mem_block; in ws2812_strip_update_rgb() local 78 ret = k_mem_slab_alloc(cfg->mem_slab, &mem_block, K_SECONDS(10)); in ws2812_strip_update_rgb() 83 tx_buf = (uint32_t *)mem_block; in ws2812_strip_update_rgb() 127 ret = i2s_write(cfg->dev, mem_block, cfg->tx_buf_bytes); in ws2812_strip_update_rgb() 129 k_mem_slab_free(cfg->mem_slab, mem_block); in ws2812_strip_update_rgb()
|
/Zephyr-latest/drivers/video/ |
D | video_common.c | 28 struct mem_block { struct 32 static struct mem_block video_block[CONFIG_VIDEO_BUFFER_POOL_NUM_MAX]; argument 37 struct mem_block *block; in video_buffer_aligned_alloc() 73 struct mem_block *block = NULL; in video_buffer_release()
|
/Zephyr-latest/tests/kernel/obj_core/obj_core_stats/src/ |
D | main.c | 10 SYS_MEM_BLOCKS_DEFINE(mem_block, 32, 4, 16); /* Four 32 byte blocks */ 388 status = k_obj_core_stats_enable(K_OBJ_CORE(&mem_block)); in ZTEST() 398 status = k_obj_core_stats_disable(K_OBJ_CORE(&mem_block)); in ZTEST() 410 status = k_obj_core_stats_raw(K_OBJ_CORE(&mem_block), &raw, in test_mem_block_raw() 437 status = k_obj_core_stats_query(K_OBJ_CORE(&mem_block), &query, in test_mem_block_query() 487 status = sys_mem_blocks_alloc(&mem_block, 1, &mem1); in ZTEST() 502 status = sys_mem_blocks_alloc(&mem_block, 1, &mem2); in ZTEST() 517 sys_mem_blocks_free(&mem_block, 1, &mem1); in ZTEST() 529 status = k_obj_core_stats_reset(K_OBJ_CORE(&mem_block)); in ZTEST() 539 sys_mem_blocks_free(&mem_block, 1, &mem2); in ZTEST()
|
/Zephyr-latest/tests/lib/mem_blocks/ |
D | CMakeLists.txt | 5 project(mem_block) project
|
/Zephyr-latest/tests/lib/mem_blocks_stats/ |
D | CMakeLists.txt | 5 project(mem_block) project
|
/Zephyr-latest/tests/kernel/mem_slab/mslab_stats/ |
D | CMakeLists.txt | 5 project(mem_block) project
|