/Zephyr-latest/drivers/dma/ |
D | dma_iproc_pax_v1.c | 31 static inline uint32_t reset_pkt_id(struct dma_iproc_pax_ring_data *ring) in reset_pkt_id() argument 33 return ring->pkt_id = 0x0; in reset_pkt_id() 39 static inline uint32_t alloc_pkt_id(struct dma_iproc_pax_ring_data *ring) in alloc_pkt_id() argument 41 ring->pkt_id = (ring->pkt_id + 1) % 32; in alloc_pkt_id() 42 return ring->pkt_id; in alloc_pkt_id() 45 static inline uint32_t curr_pkt_id(struct dma_iproc_pax_ring_data *ring) in curr_pkt_id() argument 47 return ring->pkt_id; in curr_pkt_id() 50 static inline uint32_t curr_toggle_val(struct dma_iproc_pax_ring_data *ring) in curr_toggle_val() argument 52 return ring->curr.toggle; in curr_toggle_val() 145 static void *next_desc_addr(struct dma_iproc_pax_ring_data *ring) in next_desc_addr() argument [all …]
|
D | dma_iproc_pax_v2.c | 34 static inline uint32_t reset_pkt_id(struct dma_iproc_pax_ring_data *ring) in reset_pkt_id() argument 36 return ring->pkt_id = 0x0; in reset_pkt_id() 39 static inline uint32_t alloc_pkt_id(struct dma_iproc_pax_ring_data *ring) in alloc_pkt_id() argument 41 ring->pkt_id = (ring->pkt_id + 1) % 32; in alloc_pkt_id() 42 return ring->pkt_id; in alloc_pkt_id() 45 static inline uint32_t curr_pkt_id(struct dma_iproc_pax_ring_data *ring) in curr_pkt_id() argument 47 return ring->pkt_id; in curr_pkt_id() 50 static inline uint32_t curr_toggle_val(struct dma_iproc_pax_ring_data *ring) in curr_toggle_val() argument 52 return ring->curr.toggle; in curr_toggle_val() 149 static inline void *get_curr_desc_addr(struct dma_iproc_pax_ring_data *ring) in get_curr_desc_addr() argument [all …]
|
D | Kconfig.iproc_pax | 46 signalled from ring interrupt handler. 57 PAX DMA hardware ring operation in toggle mode 62 PAX DMA hardware ring operation in doorbell mode
|
D | dma_iproc_pax.h | 367 ((_pd)->ring[_r].ring_base + (_write_ptr)) 439 uint32_t ring:2; member 506 struct dma_iproc_pax_ring_data ring[PAX_DMA_RINGS_MAX]; member
|
/Zephyr-latest/lib/utils/ |
D | ring_buffer.c | 12 uint32_t ring_buf_area_claim(struct ring_buf *buf, struct ring_buf_index *ring, in ring_buf_area_claim() argument 17 head_offset = ring->head - ring->base; in ring_buf_area_claim() 26 ring->head += size; in ring_buf_area_claim() 31 int ring_buf_area_finish(struct ring_buf *buf, struct ring_buf_index *ring, in ring_buf_area_finish() argument 36 claimed_size = ring->head - ring->tail; in ring_buf_area_finish() 41 ring->tail += size; in ring_buf_area_finish() 42 ring->head = ring->tail; in ring_buf_area_finish() 44 tail_offset = ring->tail - ring->base; in ring_buf_area_finish() 47 ring->base += buf->size; in ring_buf_area_finish()
|
D | Kconfig | 15 Provide highly efficient ring buffer management for arbitrary data. 20 bool "Allow large ring buffer sizes"
|
/Zephyr-latest/doc/kernel/data_structures/ |
D | ring_buffers.rst | 6 A :dfn:`ring buffer` is a circular buffer, whose contents are stored in 19 can be enqueued and dequeued from the ring buffer in 25 legal to mix these two modes on a single ring buffer instance. A ring 38 Any number of ring buffers can be defined (limited only by available RAM). Each 39 ring buffer is referenced by its memory address. 41 A ring buffer has the following key properties: 44 bytes or 32-bit words that have been added to the ring buffer but not yet 48 the maximum amount of data (including possible metadata values) the ring 51 A ring buffer must be initialized before it can be used. This sets its 58 buffer passed change (either bytes or words) depending on how the ring [all …]
|
D | spsc_lockfree.rst | 7 atomic ring buffer based queue.
|
/Zephyr-latest/drivers/ethernet/nxp_imx_netc/ |
D | Kconfig | 45 int "TX ring number" 49 TX ring number used. The actual maximum value may varies from platforms. 52 int "TX ring length" 56 Length of the TX ring. The value must be a multiple of 8. 59 int "TX ring data buffer size" 67 int "RX ring number" 71 RX ring number used. The actual maximum value may varies from platforms. 74 int "RX ring length" 78 Length of the RX ring. The value must be a multiple of 8. 81 int "RX ring data buffer size"
|
D | eth_nxp_imx_netc_psi.c | 160 for (uint8_t ring = 0U; ring < CONFIG_ETH_NXP_IMX_RX_RING_NUM; ring++) { \ 162 eth##n##_rx_buff_addr_array[ring][bd] = \ 163 (uint64_t)(uintptr_t)ð##n##_rx_buff[ring][bd]; \
|
/Zephyr-latest/arch/xtensa/include/ |
D | xtensa_mmu_priv.h | 67 #define XTENSA_MMU_PTE(paddr, ring, sw, attr) \ argument 69 (((ring) << XTENSA_MMU_PTE_RING_SHIFT) & XTENSA_MMU_PTE_RING_MASK) | \ 90 #define XTENSA_MMU_PTE_RING_SET(pte, ring) \ argument 92 ((ring) << XTENSA_MMU_PTE_RING_SHIFT)) 199 #define XTENSA_MMU_RASID_ASID_GET(rasid, ring) \ argument 200 (((rasid) >> ((ring) * 8)) & 0xff) 232 static ALWAYS_INLINE void xtensa_rasid_asid_set(uint8_t asid, uint8_t ring) in xtensa_rasid_asid_set() argument 236 rasid = (rasid & ~(0xff << (ring * 8))) | ((uint32_t)asid << (ring * 8)); in xtensa_rasid_asid_set()
|
/Zephyr-latest/include/zephyr/xen/public/io/ |
D | console.h | 34 #define MASK_XENCONS_IDX(idx, ring) ((idx) & (sizeof(ring)-1)) argument
|
/Zephyr-latest/drivers/ethernet/ |
D | Kconfig.nxp_s32_netc | 40 int "TX ring length" 44 Length of the TX ring. The value must be a multiple of 8. 47 int "TX ring data buffer size" 55 int "RX ring length" 59 Length of the RX ring. The value must be a multiple of 8. 62 int "RX ring data buffer size"
|
D | Kconfig.nxp_s32_gmac | 17 int "TX ring length" 21 Length of the TX ring. ETH_NXP_S32_TX_RING_BUF_SIZE * ETH_NXP_S32_TX_RING_LEN 25 int "TX ring data buffer size" 34 int "RX ring length" 38 Length of the RX ring. ETH_NXP_S32_RX_RING_BUF_SIZE * ETH_NXP_S32_RX_RING_LEN 42 int "RX ring data buffer size"
|
D | eth_ivshmem_queue.c | 142 q->tx.vring.avail->ring[q->tx.avail_idx % q->desc_max_len] = desc_head; in eth_ivshmem_queue_tx_commit_buff() 144 VRING_FLUSH(q->tx.vring.avail->ring[q->tx.avail_idx % q->desc_max_len]); in eth_ivshmem_queue_tx_commit_buff() 200 q->rx.vring.used->ring[used_idx].id = avail_desc_idx; in eth_ivshmem_queue_rx_complete() 201 q->rx.vring.used->ring[used_idx].len = 1; in eth_ivshmem_queue_rx_complete() 202 VRING_FLUSH(q->rx.vring.used->ring[used_idx]); in eth_ivshmem_queue_rx_complete() 275 struct vring_used_elem *used = &q->tx.vring.used->ring[ in tx_clean_used() 318 VRING_INVALIDATE(q->rx.vring.avail->ring[q->rx.avail_idx % q->desc_max_len]); in get_rx_avail_desc_idx() 319 *avail_desc_idx = q->rx.vring.avail->ring[q->rx.avail_idx % q->desc_max_len]; in get_rx_avail_desc_idx()
|
D | Kconfig.cyclonev | 14 int "Number of entries in the transmit descriptor ring" 27 int "Number of entries in the receive descriptor ring"
|
D | eth_nxp_s32_netc_priv.h | 52 static Netc_Eth_Ip_##prefix1##BDRType nxp_s32_eth##n##_##prefix2##ring##idx##_desc[len] \ 54 static uint8_t nxp_s32_eth##n##_##prefix2##ring##idx##_buf[len * buf_size] \
|
D | Kconfig.dwmac | 42 int "Number of entries in the transmit descriptor ring" 55 int "Number of entries in the receive descriptor ring"
|
D | eth_nxp_s32_netc_vsi.c | 90 static void nxp_s32_eth##n##_rx_callback(const uint8_t unused, const uint8_t ring) \ 96 if (ring == cfg->rx_ring_idx) { \
|
/Zephyr-latest/doc/kernel/services/data_passing/ |
D | pipes.rst | 22 * A **size** that indicates the capacity of the pipe's ring buffer. Note that a 23 size of zero defines a pipe with no ring buffer. 32 reader(s) or to the pipe's ring buffer. If the ring buffer is full or simply 37 pipe by a thread. Accepted data is either copied from the pipe's ring buffer 38 or directly from the waiting sender(s). If the ring buffer is empty or simply 54 The following code defines and initializes an empty pipe with a ring buffer 66 ring buffer: 74 When no ring buffer is used, the buffer pointer argument should be NULL and 83 thread to one or more consumer threads. If the pipe's ring buffer fills up,
|
D | message_queues.rst | 22 * A **ring buffer** of data items that have been sent but not yet received. 26 * A **maximum quantity** of data items that can be queued in the ring buffer. 29 This sets its ring buffer to empty. 33 if one exists; otherwise the item is copied to the message queue's ring buffer, 37 If a thread attempts to send a data item when the ring buffer is full, 39 Any number of sending threads may wait simultaneously when the ring buffer 47 If a thread attempts to receive a data item when the ring buffer is empty, 49 Any number of receiving threads may wait simultaneously when the ring buffer 63 Alignment of the message queue's ring buffer is not necessary.
|
/Zephyr-latest/drivers/hdlc_rcp_if/ |
D | Kconfig.uart | 18 int "Set HDLC RCP IF UART RX ring buffer size" 24 int "Set HDLC RCP IF UART TX ring buffer size"
|
/Zephyr-latest/arch/xtensa/core/ |
D | ptables.c | 777 uint8_t ring; in dup_table() local 779 ring = XTENSA_MMU_PTE_RING_GET(l2_table[j]); in dup_table() 782 ring == XTENSA_MMU_SHARED_RING ? in dup_table() 852 size_t size, uint32_t ring, uint32_t flags) in region_map_update() argument 868 pte = XTENSA_MMU_PTE_RING_SET(l2_table[l2_pos], ring); in region_map_update() 882 size_t size, uint32_t ring, uint32_t flags, in update_region() argument 905 ret = region_map_update(ptables, va, size, ring, new_flags); in update_region() 908 ret = region_map_update(ptables, va_uc, size, ring, new_flags_uc); in update_region() 911 ret = region_map_update(ptables, start, size, ring, flags); in update_region() 962 uint32_t ring = K_MEM_PARTITION_IS_USER(partition->attr) ? XTENSA_MMU_USER_RING : in arch_mem_domain_partition_add() local [all …]
|
/Zephyr-latest/drivers/clock_control/ |
D | Kconfig.rpi_pico | 15 bool "Use measured frequency for ring oscillator"
|
/Zephyr-latest/subsys/usb/device/class/ |
D | Kconfig.cdc | 22 int "USB CDC ACM ring buffer size" 25 USB CDC ACM ring buffer size
|