/src/usr.bin/telnet/ |
ring.c | 1 /* $NetBSD: ring.c,v 1.17 2024/05/13 00:32:39 msaitoh Exp $ */ 35 static char sccsid[] = "@(#)ring.c 8.2 (Berkeley) 5/30/95"; 37 __RCSID("$NetBSD: ring.c,v 1.17 2024/05/13 00:32:39 msaitoh Exp $"); 42 * This defines a structure for a ring buffer. 60 #include "ring.h" 82 * There is some trickiness here. Since the ring buffers are initialized 101 ring_init(Ring *ring, unsigned char *buffer, int count) 103 memset(ring, 0, sizeof *ring); [all...] |
ring.h | 1 /* $NetBSD: ring.h,v 1.11 2018/12/13 09:07:53 maya Exp $ */ 31 * from: @(#)ring.h 8.1 (Berkeley) 6/6/93 37 * This defines a structure for a ring buffer. 59 } Ring; 61 /* Ring buffer structures which are shared */ 63 extern Ring 69 /* Here are some functions and macros to deal with the ring buffer */ 73 ring_init(Ring *ring, unsigned char *buffer, int count); 77 ring_supply_data(Ring *ring, unsigned char *buffer, int count) [all...] |
/src/sys/external/bsd/drm2/dist/drm/i915/gt/ |
intel_ring.h | 24 unsigned int intel_ring_update_space(struct intel_ring *ring); 26 int intel_ring_pin(struct intel_ring *ring); 27 void intel_ring_unpin(struct intel_ring *ring); 28 void intel_ring_reset(struct intel_ring *ring, u32 tail); 32 static inline struct intel_ring *intel_ring_get(struct intel_ring *ring) 34 kref_get(&ring->ref); 35 return ring; 38 static inline void intel_ring_put(struct intel_ring *ring) 40 kref_put(&ring->ref, intel_ring_free); 53 GEM_BUG_ON((rq->ring->vaddr + rq->ring->emit) != cs) [all...] |
intel_ring.c | 19 unsigned int intel_ring_update_space(struct intel_ring *ring) 23 space = __intel_ring_space(ring->head, ring->emit, ring->size); 25 ring->space = space; 29 int intel_ring_pin(struct intel_ring *ring) 31 struct i915_vma *vma = ring->vma; 36 if (atomic_fetch_inc(&ring->pin_count)) 41 /* Ring wraparound at offset 0 sometimes hangs. No idea why. */ 66 intel_ring_reset(ring, ring->emit) 141 struct intel_ring *ring; local in function:intel_engine_create_ring 178 struct intel_ring *ring = container_of(ref, typeof(*ring), ref); local in function:intel_ring_free 224 struct intel_ring *ring = rq->ring; local in function:intel_ring_begin [all...] |
/src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/ |
amdgpu_ring.c | 47 * Most engines on the GPU are fed via ring buffers. Ring 53 * pointers are equal, the ring is idle. When the host 54 * writes commands to the ring buffer, it increments the 59 struct amdgpu_ring *ring); 60 static void amdgpu_debugfs_ring_fini(struct amdgpu_ring *ring); 63 * amdgpu_ring_alloc - allocate space on the ring buffer 66 * @ring: amdgpu_ring structure holding ring information 67 * @ndw: number of dwords to allocate in the ring buffe 448 struct amdgpu_ring *ring = file_inode(f)->i_private; local in function:amdgpu_debugfs_ring_read [all...] |
jpeg_v2_0.h | 29 void jpeg_v2_0_dec_ring_insert_start(struct amdgpu_ring *ring); 30 void jpeg_v2_0_dec_ring_insert_end(struct amdgpu_ring *ring); 31 void jpeg_v2_0_dec_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u64 seq, 33 void jpeg_v2_0_dec_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job, 35 void jpeg_v2_0_dec_ring_emit_reg_wait(struct amdgpu_ring *ring, uint32_t reg, 37 void jpeg_v2_0_dec_ring_emit_vm_flush(struct amdgpu_ring *ring, 39 void jpeg_v2_0_dec_ring_emit_wreg(struct amdgpu_ring *ring, uint32_t reg, uint32_t val); 40 void jpeg_v2_0_dec_ring_nop(struct amdgpu_ring *ring, uint32_t count);
|
amdgpu_jpeg_v1_0.c | 41 static void jpeg_v1_0_decode_ring_patch_wreg(struct amdgpu_ring *ring, uint32_t *ptr, uint32_t reg_offset, uint32_t val) 43 struct amdgpu_device *adev = ring->adev; 44 ring->ring[(*ptr)++] = PACKETJ(SOC15_REG_OFFSET(JPEG, 0, mmUVD_JRBC_EXTERNAL_REG_BASE), 0, 0, PACKETJ_TYPE0); 47 ring->ring[(*ptr)++] = 0; 48 ring->ring[(*ptr)++] = PACKETJ((reg_offset >> 2), 0, 0, PACKETJ_TYPE0); 50 ring->ring[(*ptr)++] = reg_offset 478 struct amdgpu_ring *ring; local in function:jpeg_v1_0_sw_init 521 struct amdgpu_ring *ring = &adev->jpeg.inst->ring_dec; local in function:jpeg_v1_0_start [all...] |
vcn_v1_0.h | 29 void vcn_v1_0_ring_begin_use(struct amdgpu_ring *ring);
|
vcn_v2_0.h | 29 extern void vcn_v2_0_dec_ring_insert_start(struct amdgpu_ring *ring); 30 extern void vcn_v2_0_dec_ring_insert_end(struct amdgpu_ring *ring); 31 extern void vcn_v2_0_dec_ring_insert_nop(struct amdgpu_ring *ring, uint32_t count); 32 extern void vcn_v2_0_dec_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u64 seq, 34 extern void vcn_v2_0_dec_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job, 36 extern void vcn_v2_0_dec_ring_emit_reg_wait(struct amdgpu_ring *ring, uint32_t reg, 38 extern void vcn_v2_0_dec_ring_emit_vm_flush(struct amdgpu_ring *ring, 40 extern void vcn_v2_0_dec_ring_emit_wreg(struct amdgpu_ring *ring, 42 extern int vcn_v2_0_dec_ring_test_ring(struct amdgpu_ring *ring); 44 extern void vcn_v2_0_enc_ring_insert_end(struct amdgpu_ring *ring); [all...] |
amdgpu_ib.c | 51 * command ring and the hw will fetch the commands from the IB 54 * put in IBs for execution by the requested ring. 61 * @ring: ring index the IB is associated with 107 * amdgpu_ib_schedule - schedule an IB (Indirect Buffer) on the ring 114 * Schedule an IB on the associated ring (all asics). 117 * On SI, there are two parallel engines fed from the primary ring, 124 * a CONST_IB), it will be put on the ring prior to the DE IB. Prior 127 int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned num_ibs, 131 struct amdgpu_device *adev = ring->adev 363 struct amdgpu_ring *ring = adev->rings[i]; local in function:amdgpu_ib_ring_tests [all...] |
amdgpu_fence.c | 56 * are no longer in use by the associated ring on the GPU and 64 struct amdgpu_ring *ring; member in struct:amdgpu_fence 101 * @ring: ring the fence is associated with 106 static void amdgpu_fence_write(struct amdgpu_ring *ring, u32 seq) 108 struct amdgpu_fence_driver *drv = &ring->fence_drv; 117 * @ring: ring the fence is associated with 122 static u32 amdgpu_fence_read(struct amdgpu_ring *ring) 124 struct amdgpu_fence_driver *drv = &ring->fence_drv 302 struct amdgpu_ring *ring = from_timer(ring, t, local in function:amdgpu_fence_fallback 533 struct amdgpu_ring *ring = adev->rings[i]; local in function:amdgpu_fence_driver_fini 570 struct amdgpu_ring *ring = adev->rings[i]; local in function:amdgpu_fence_driver_suspend 604 struct amdgpu_ring *ring = adev->rings[i]; local in function:amdgpu_fence_driver_resume 652 struct amdgpu_ring *ring = fence->ring; local in function:amdgpu_fence_enable_signaling 709 struct amdgpu_ring *ring = adev->rings[i]; local in function:amdgpu_debugfs_fence_info [all...] |
amdgpu_ring.h | 78 /* sync_seq is protected by ring emission lock */ 92 void amdgpu_fence_driver_force_completion(struct amdgpu_ring *ring); 94 int amdgpu_fence_driver_init_ring(struct amdgpu_ring *ring, 96 int amdgpu_fence_driver_start_ring(struct amdgpu_ring *ring, 101 int amdgpu_fence_emit(struct amdgpu_ring *ring, struct dma_fence **fence, 103 int amdgpu_fence_emit_polling(struct amdgpu_ring *ring, uint32_t *s); 104 bool amdgpu_fence_process(struct amdgpu_ring *ring); 105 int amdgpu_fence_wait_empty(struct amdgpu_ring *ring); 106 signed long amdgpu_fence_wait_polling(struct amdgpu_ring *ring, 109 unsigned amdgpu_fence_count_emitted(struct amdgpu_ring *ring); 189 volatile uint32_t *ring; member in struct:amdgpu_ring [all...] |
amdgpu_jpeg_v2_0.c | 69 * Set ring and irq function pointers 93 struct amdgpu_ring *ring; local in function:jpeg_v2_0_sw_init 110 ring = &adev->jpeg.inst->ring_dec; 111 ring->use_doorbell = true; 112 ring->doorbell_index = (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + 1; 113 snprintf(ring->name, sizeof(ring->name), "jpeg_dec"); 114 r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, 0); 154 struct amdgpu_ring *ring = &adev->jpeg.inst->ring_dec; local in function:jpeg_v2_0_hw_init 157 adev->nbio.funcs->vcn_doorbell_range(adev, ring->use_doorbell 177 struct amdgpu_ring *ring = &adev->jpeg.inst->ring_dec; local in function:jpeg_v2_0_hw_fini 338 struct amdgpu_ring *ring = &adev->jpeg.inst->ring_dec; local in function:jpeg_v2_0_start [all...] |
amdgpu_vce.h | 50 struct amdgpu_ring ring[AMDGPU_MAX_VCE_RINGS]; member in struct:amdgpu_vce 66 void amdgpu_vce_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job, 68 void amdgpu_vce_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u64 seq, 70 int amdgpu_vce_ring_test_ring(struct amdgpu_ring *ring); 71 int amdgpu_vce_ring_test_ib(struct amdgpu_ring *ring, long timeout); 72 void amdgpu_vce_ring_begin_use(struct amdgpu_ring *ring); 73 void amdgpu_vce_ring_end_use(struct amdgpu_ring *ring); 74 unsigned amdgpu_vce_ring_get_emit_ib_size(struct amdgpu_ring *ring); 75 unsigned amdgpu_vce_ring_get_dma_frame_size(struct amdgpu_ring *ring);
|
/src/sys/external/bsd/drm2/dist/drm/radeon/ |
radeon_uvd_v3_1.c | 38 * @ring: radeon_ring pointer 42 * Emit a semaphore command (either wait or signal) to the UVD ring. 45 struct radeon_ring *ring, 51 radeon_ring_write(ring, PACKET0(UVD_SEMA_ADDR_LOW, 0)); 52 radeon_ring_write(ring, (addr >> 3) & 0x000FFFFF); 54 radeon_ring_write(ring, PACKET0(UVD_SEMA_ADDR_HIGH, 0)); 55 radeon_ring_write(ring, (addr >> 23) & 0x000FFFFF); 57 radeon_ring_write(ring, PACKET0(UVD_SEMA_CMD, 0)); 58 radeon_ring_write(ring, 0x80 | (emit_wait ? 1 : 0));
|
radeon_ring.c | 43 * Most engines on the GPU are fed via ring buffers. Ring 49 * pointers are equal, the ring is idle. When the host 50 * writes commands to the ring buffer, it increments the 54 static int radeon_debugfs_ring_init(struct radeon_device *rdev, struct radeon_ring *ring); 57 * radeon_ring_supports_scratch_reg - check if the ring supports 61 * @ring: radeon_ring structure holding ring information 63 * Check if a specific ring supports writing to scratch registers (all asics). 64 * Returns true if the ring supports writing to scratch regs, false if not 475 struct radeon_ring *ring = &rdev->ring[ridx]; local in function:radeon_debugfs_ring_info [all...] |
radeon_evergreen_dma.c | 37 * evergreen_dma_fence_ring_emit - emit a fence on the DMA ring 42 * Add a DMA fence packet to the ring to write 49 struct radeon_ring *ring = &rdev->ring[fence->ring]; local in function:evergreen_dma_fence_ring_emit 50 u64 addr = rdev->fence_drv[fence->ring].gpu_addr; 52 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_FENCE, 0, 0)); 53 radeon_ring_write(ring, addr & 0xfffffffc); 54 radeon_ring_write(ring, (upper_32_bits(addr) & 0xff)); 55 radeon_ring_write(ring, fence->seq) 75 struct radeon_ring *ring = &rdev->ring[ib->ring]; local in function:evergreen_dma_ring_ib_execute 121 struct radeon_ring *ring = &rdev->ring[ring_index]; local in function:evergreen_copy_dma [all...] |
radeon_uvd_v1_0.c | 40 * @ring: radeon_ring pointer 45 struct radeon_ring *ring) 54 * @ring: radeon_ring pointer 59 struct radeon_ring *ring) 68 * @ring: radeon_ring pointer 73 struct radeon_ring *ring) 75 WREG32(UVD_RBC_RB_WPTR, ring->wptr); 84 * Write a fence and a trap command to the ring. 89 struct radeon_ring *ring = &rdev->ring[fence->ring] local in function:uvd_v1_0_fence_emit 164 struct radeon_ring *ring = &rdev->ring[R600_RING_TYPE_UVD_INDEX]; local in function:uvd_v1_0_init 255 struct radeon_ring *ring = &rdev->ring[R600_RING_TYPE_UVD_INDEX]; local in function:uvd_v1_0_fini 270 struct radeon_ring *ring = &rdev->ring[R600_RING_TYPE_UVD_INDEX]; local in function:uvd_v1_0_start 489 struct radeon_ring *ring = &rdev->ring[ib->ring]; local in function:uvd_v1_0_ib_execute [all...] |
radeon_ni_dma.c | 41 * to the 3D engine (ring buffer, IBs, etc.), but the 54 * @ring: radeon ring pointer 59 struct radeon_ring *ring) 64 rptr = rdev->wb.wb[ring->rptr_offs/4]; 66 if (ring->idx == R600_RING_TYPE_DMA_INDEX) 81 * @ring: radeon ring pointer 86 struct radeon_ring *ring) 90 if (ring->idx == R600_RING_TYPE_DMA_INDEX 130 struct radeon_ring *ring = &rdev->ring[ib->ring]; local in function:cayman_dma_ring_ib_execute 194 struct radeon_ring *ring; local in function:cayman_dma_resume [all...] |
radeon_r600_dma.c | 40 * to the 3D engine (ring buffer, IBs, etc.), but the 52 * @ring: radeon ring pointer 57 struct radeon_ring *ring) 62 rptr = rdev->wb.wb[ring->rptr_offs/4]; 73 * @ring: radeon ring pointer 78 struct radeon_ring *ring) 87 * @ring: radeon ring pointe 127 struct radeon_ring *ring = &rdev->ring[R600_RING_TYPE_DMA_INDEX]; local in function:r600_dma_resume 294 struct radeon_ring *ring = &rdev->ring[fence->ring]; local in function:r600_dma_fence_ring_emit 411 struct radeon_ring *ring = &rdev->ring[ib->ring]; local in function:r600_dma_ring_ib_execute 456 struct radeon_ring *ring = &rdev->ring[ring_index]; local in function:r600_copy_dma [all...] |
radeon_uvd_v2_2.c | 42 * Write a fence and a trap command to the ring. 47 struct radeon_ring *ring = &rdev->ring[fence->ring]; local in function:uvd_v2_2_fence_emit 48 uint64_t addr = rdev->fence_drv[fence->ring].gpu_addr; 50 radeon_ring_write(ring, PACKET0(UVD_CONTEXT_ID, 0)); 51 radeon_ring_write(ring, fence->seq); 52 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_DATA0, 0)); 53 radeon_ring_write(ring, lower_32_bits(addr)); 54 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_DATA1, 0)) [all...] |
radeon_trace.h | 36 __field(u32, ring) 42 __entry->ring = p->ring; 45 p->rdev, p->ring); 47 TP_printk("ring=%u, dw=%u, fences=%u", 48 __entry->ring, __entry->dw, 53 TP_PROTO(unsigned vmid, int ring), 54 TP_ARGS(vmid, ring), 57 __field(u32, ring) 62 __entry->ring = ring [all...] |
radeon_rv770_dma.c | 55 struct radeon_ring *ring = &rdev->ring[ring_index]; local in function:rv770_copy_dma 64 r = radeon_ring_lock(rdev, ring, num_loops * 5 + 8); 72 radeon_sync_rings(rdev, &sync, ring->idx); 79 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_COPY, 0, 0, cur_size_in_dw)); 80 radeon_ring_write(ring, dst_offset & 0xfffffffc); 81 radeon_ring_write(ring, src_offset & 0xfffffffc); 82 radeon_ring_write(ring, upper_32_bits(dst_offset) & 0xff); 83 radeon_ring_write(ring, upper_32_bits(src_offset) & 0xff); 88 r = radeon_fence_emit(rdev, &fence, ring->idx) [all...] |
/src/sys/dev/audio/ |
audiodef.h | 278 * Audio Ring Buffer. 282 #define DIAGNOSTIC_ring(ring) audio_diagnostic_ring(__func__, (ring)) 285 #define DIAGNOSTIC_ring(ring) 311 auring_round(const audio_ring_t *ring, int idx) 313 DIAGNOSTIC_ring(ring); 315 KASSERTMSG(idx < ring->capacity * 2, 316 "idx=%d ring->capacity=%d", idx, ring->capacity); 318 if (idx < ring->capacity) [all...] |
/src/games/rogue/ |
ring.c | 1 /* $NetBSD: ring.c,v 1.9 2008/01/14 03:50:02 dholland Exp $ */ 38 static char sccsid[] = "@(#)ring.c 8.1 (Berkeley) 5/31/93"; 40 __RCSID("$NetBSD: ring.c,v 1.9 2008/01/14 03:50:02 dholland Exp $"); 45 * ring.c 59 static const char no_ring[] = "there's no ring on that hand"; 78 object *ring; local in function:put_on_ring 84 if ((ch = pack_letter("put on what?", RING)) == CANCEL) { 87 if (!(ring = get_letter_object(ch))) { 91 if (!(ring->what_is & RING)) { 152 object *ring; local in function:remove_ring 279 object *ring; local in function:ring_stats [all...] |