/linux/drivers/gpu/drm/radeon/ |
H A D | uvd_v2_2.c | 45 radeon_ring_write(ring, PACKET0(UVD_CONTEXT_ID, 0)); in uvd_v2_2_fence_emit() 46 radeon_ring_write(ring, fence->seq); in uvd_v2_2_fence_emit() 47 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_DATA0, 0)); in uvd_v2_2_fence_emit() 48 radeon_ring_write(ring, lower_32_bits(addr)); in uvd_v2_2_fence_emit() 49 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_DATA1, 0)); in uvd_v2_2_fence_emit() 50 radeon_ring_write(ring, upper_32_bits(addr) & 0xff); in uvd_v2_2_fence_emit() 51 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_CMD, 0)); in uvd_v2_2_fence_emit() 52 radeon_ring_write(ring, 0); in uvd_v2_2_fence_emit() 54 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_DATA0, 0)); in uvd_v2_2_fence_emit() 55 radeon_ring_write(ring, 0); in uvd_v2_2_fence_emit() [all …]
|
H A D | cik_sdma.c | 143 radeon_ring_write(ring, SDMA_PACKET(SDMA_OPCODE_WRITE, SDMA_WRITE_SUB_OPCODE_LINEAR, 0)); in cik_sdma_ring_ib_execute() 144 radeon_ring_write(ring, ring->next_rptr_gpu_addr & 0xfffffffc); in cik_sdma_ring_ib_execute() 145 radeon_ring_write(ring, upper_32_bits(ring->next_rptr_gpu_addr)); in cik_sdma_ring_ib_execute() 146 radeon_ring_write(ring, 1); /* number of DWs to follow */ in cik_sdma_ring_ib_execute() 147 radeon_ring_write(ring, next_rptr); in cik_sdma_ring_ib_execute() 152 radeon_ring_write(ring, SDMA_PACKET(SDMA_OPCODE_NOP, 0, 0)); in cik_sdma_ring_ib_execute() 153 radeon_ring_write(ring, SDMA_PACKET(SDMA_OPCODE_INDIRECT_BUFFER, 0, extra_bits)); in cik_sdma_ring_ib_execute() 154 radeon_ring_write(ring, ib->gpu_addr & 0xffffffe0); /* base must be 32 byte aligned */ in cik_sdma_ring_ib_execute() 155 radeon_ring_write(ring, upper_32_bits(ib->gpu_addr)); in cik_sdma_ring_ib_execute() 156 radeon_ring_write(ring, ib->length_dw); in cik_sdma_ring_ib_execute() [all …]
|
H A D | evergreen_dma.c | 46 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_FENCE, 0, 0)); in evergreen_dma_fence_ring_emit() 47 radeon_ring_write(ring, addr & 0xfffffffc); in evergreen_dma_fence_ring_emit() 48 radeon_ring_write(ring, (upper_32_bits(addr) & 0xff)); in evergreen_dma_fence_ring_emit() 49 radeon_ring_write(ring, fence->seq); in evergreen_dma_fence_ring_emit() 51 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_TRAP, 0, 0)); in evergreen_dma_fence_ring_emit() 53 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_SRBM_WRITE, 0, 0)); in evergreen_dma_fence_ring_emit() 54 radeon_ring_write(ring, (0xf << 16) | (HDP_MEM_COHERENCY_FLUSH_CNTL >> 2)); in evergreen_dma_fence_ring_emit() 55 radeon_ring_write(ring, 1); in evergreen_dma_fence_ring_emit() 76 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_WRITE, 0, 1)); in evergreen_dma_ring_ib_execute() 77 radeon_ring_write(ring, ring->next_rptr_gpu_addr & 0xfffffffc); in evergreen_dma_ring_ib_execute() [all …]
|
H A D | uvd_v1_0.c | 87 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_DATA0, 0)); in uvd_v1_0_fence_emit() 88 radeon_ring_write(ring, addr & 0xffffffff); in uvd_v1_0_fence_emit() 89 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_DATA1, 0)); in uvd_v1_0_fence_emit() 90 radeon_ring_write(ring, fence->seq); in uvd_v1_0_fence_emit() 91 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_CMD, 0)); in uvd_v1_0_fence_emit() 92 radeon_ring_write(ring, 0); in uvd_v1_0_fence_emit() 94 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_DATA0, 0)); in uvd_v1_0_fence_emit() 95 radeon_ring_write(ring, 0); in uvd_v1_0_fence_emit() 96 radeon_ring_write(ring, PACKET0(UVD_GPCOM_VCPU_DATA1, 0)); in uvd_v1_0_fence_emit() 97 radeon_ring_write(ring, 0); in uvd_v1_0_fence_emit() [all …]
|
H A D | si_dma.c | 190 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_SRBM_WRITE, 0, 0, 0, 0)); in si_dma_vm_flush() 192 radeon_ring_write(ring, (0xf << 16) | ((VM_CONTEXT0_PAGE_TABLE_BASE_ADDR + (vm_id << 2)) >> 2)); in si_dma_vm_flush() 194 …radeon_ring_write(ring, (0xf << 16) | ((VM_CONTEXT8_PAGE_TABLE_BASE_ADDR + ((vm_id - 8) << 2)) >> … in si_dma_vm_flush() 196 radeon_ring_write(ring, pd_addr >> 12); in si_dma_vm_flush() 199 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_SRBM_WRITE, 0, 0, 0, 0)); in si_dma_vm_flush() 200 radeon_ring_write(ring, (0xf << 16) | (HDP_MEM_COHERENCY_FLUSH_CNTL >> 2)); in si_dma_vm_flush() 201 radeon_ring_write(ring, 1); in si_dma_vm_flush() 204 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_SRBM_WRITE, 0, 0, 0, 0)); in si_dma_vm_flush() 205 radeon_ring_write(ring, (0xf << 16) | (VM_INVALIDATE_REQUEST >> 2)); in si_dma_vm_flush() 206 radeon_ring_write(ring, 1 << vm_id); in si_dma_vm_flush() [all …]
|
H A D | r600_dma.c | 253 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_WRITE, 0, 0, 1)); in r600_dma_ring_test() 254 radeon_ring_write(ring, lower_32_bits(gpu_addr)); in r600_dma_ring_test() 255 radeon_ring_write(ring, upper_32_bits(gpu_addr) & 0xff); in r600_dma_ring_test() 256 radeon_ring_write(ring, 0xDEADBEEF); in r600_dma_ring_test() 293 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_FENCE, 0, 0, 0)); in r600_dma_fence_ring_emit() 294 radeon_ring_write(ring, addr & 0xfffffffc); in r600_dma_fence_ring_emit() 295 radeon_ring_write(ring, (upper_32_bits(addr) & 0xff)); in r600_dma_fence_ring_emit() 296 radeon_ring_write(ring, lower_32_bits(fence->seq)); in r600_dma_fence_ring_emit() 298 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_TRAP, 0, 0, 0)); in r600_dma_fence_ring_emit() 320 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_SEMAPHORE, 0, s, 0)); in r600_dma_semaphore_ring_emit() [all …]
|
H A D | ni_dma.c | 132 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_WRITE, 0, 0, 1)); in cayman_dma_ring_ib_execute() 133 radeon_ring_write(ring, ring->next_rptr_gpu_addr & 0xfffffffc); in cayman_dma_ring_ib_execute() 134 radeon_ring_write(ring, upper_32_bits(ring->next_rptr_gpu_addr) & 0xff); in cayman_dma_ring_ib_execute() 135 radeon_ring_write(ring, next_rptr); in cayman_dma_ring_ib_execute() 142 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_NOP, 0, 0, 0)); in cayman_dma_ring_ib_execute() 143 radeon_ring_write(ring, DMA_IB_PACKET(DMA_PACKET_INDIRECT_BUFFER, vm_id, 0)); in cayman_dma_ring_ib_execute() 144 radeon_ring_write(ring, (ib->gpu_addr & 0xFFFFFFE0)); in cayman_dma_ring_ib_execute() 145 radeon_ring_write(ring, (ib->length_dw << 12) | (upper_32_bits(ib->gpu_addr) & 0xFF)); in cayman_dma_ring_ib_execute() 451 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_SRBM_WRITE, 0, 0, 0)); in cayman_dma_vm_flush() 452 radeon_ring_write(ring, (0xf << 16) | ((VM_CONTEXT0_PAGE_TABLE_BASE_ADDR + (vm_id << 2)) >> 2)); in cayman_dma_vm_flush() [all …]
|
H A D | r300.c | 220 radeon_ring_write(ring, PACKET0(R300_RE_SCISSORS_TL, 0)); in r300_fence_ring_emit() 221 radeon_ring_write(ring, 0); in r300_fence_ring_emit() 222 radeon_ring_write(ring, PACKET0(R300_RE_SCISSORS_BR, 0)); in r300_fence_ring_emit() 223 radeon_ring_write(ring, 0); in r300_fence_ring_emit() 225 radeon_ring_write(ring, PACKET0(R300_RB3D_DSTCACHE_CTLSTAT, 0)); in r300_fence_ring_emit() 226 radeon_ring_write(ring, R300_RB3D_DC_FLUSH); in r300_fence_ring_emit() 227 radeon_ring_write(ring, PACKET0(R300_RB3D_ZCACHE_CTLSTAT, 0)); in r300_fence_ring_emit() 228 radeon_ring_write(ring, R300_ZC_FLUSH); in r300_fence_ring_emit() 230 radeon_ring_write(ring, PACKET0(RADEON_WAIT_UNTIL, 0)); in r300_fence_ring_emit() 231 radeon_ring_write(ring, (RADEON_WAIT_3D_IDLECLEAN | in r300_fence_ring_emit() [all …]
|
H A D | uvd_v3_1.c | 46 radeon_ring_write(ring, PACKET0(UVD_SEMA_ADDR_LOW, 0)); in uvd_v3_1_semaphore_emit() 47 radeon_ring_write(ring, (addr >> 3) & 0x000FFFFF); in uvd_v3_1_semaphore_emit() 49 radeon_ring_write(ring, PACKET0(UVD_SEMA_ADDR_HIGH, 0)); in uvd_v3_1_semaphore_emit() 50 radeon_ring_write(ring, (addr >> 23) & 0x000FFFFF); in uvd_v3_1_semaphore_emit() 52 radeon_ring_write(ring, PACKET0(UVD_SEMA_CMD, 0)); in uvd_v3_1_semaphore_emit() 53 radeon_ring_write(ring, 0x80 | (emit_wait ? 1 : 0)); in uvd_v3_1_semaphore_emit()
|
H A D | ni.c | 1385 radeon_ring_write(ring, PACKET3(PACKET3_SURFACE_SYNC, 3)); in cayman_fence_ring_emit() 1386 radeon_ring_write(ring, PACKET3_ENGINE_ME | cp_coher_cntl); in cayman_fence_ring_emit() 1387 radeon_ring_write(ring, 0xFFFFFFFF); in cayman_fence_ring_emit() 1388 radeon_ring_write(ring, 0); in cayman_fence_ring_emit() 1389 radeon_ring_write(ring, 10); /* poll interval */ in cayman_fence_ring_emit() 1391 radeon_ring_write(ring, PACKET3(PACKET3_EVENT_WRITE_EOP, 4)); in cayman_fence_ring_emit() 1392 radeon_ring_write(ring, EVENT_TYPE(CACHE_FLUSH_AND_INV_EVENT_TS) | EVENT_INDEX(5)); in cayman_fence_ring_emit() 1393 radeon_ring_write(ring, lower_32_bits(addr)); in cayman_fence_ring_emit() 1394 radeon_ring_write(ring, (upper_32_bits(addr) & 0xff) | DATA_SEL(1) | INT_SEL(2)); in cayman_fence_ring_emit() 1395 radeon_ring_write(ring, fence->seq); in cayman_fence_ring_emit() [all …]
|
H A D | rv515.c | 59 radeon_ring_write(ring, PACKET0(ISYNC_CNTL, 0)); in rv515_ring_start() 60 radeon_ring_write(ring, in rv515_ring_start() 65 radeon_ring_write(ring, PACKET0(WAIT_UNTIL, 0)); in rv515_ring_start() 66 radeon_ring_write(ring, WAIT_2D_IDLECLEAN | WAIT_3D_IDLECLEAN); in rv515_ring_start() 67 radeon_ring_write(ring, PACKET0(R300_DST_PIPE_CONFIG, 0)); in rv515_ring_start() 68 radeon_ring_write(ring, R300_PIPE_AUTO_CONFIG); in rv515_ring_start() 69 radeon_ring_write(ring, PACKET0(GB_SELECT, 0)); in rv515_ring_start() 70 radeon_ring_write(ring, 0); in rv515_ring_start() 71 radeon_ring_write(ring, PACKET0(GB_ENABLE, 0)); in rv515_ring_start() 72 radeon_ring_write(ring, 0); in rv515_ring_start() [all …]
|
H A D | rv770_dma.c | 74 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_COPY, 0, 0, cur_size_in_dw)); in rv770_copy_dma() 75 radeon_ring_write(ring, dst_offset & 0xfffffffc); in rv770_copy_dma() 76 radeon_ring_write(ring, src_offset & 0xfffffffc); in rv770_copy_dma() 77 radeon_ring_write(ring, upper_32_bits(dst_offset) & 0xff); in rv770_copy_dma() 78 radeon_ring_write(ring, upper_32_bits(src_offset) & 0xff); in rv770_copy_dma()
|
H A D | radeon_vce.c | 701 radeon_ring_write(ring, cpu_to_le32(VCE_CMD_SEMAPHORE)); in radeon_vce_semaphore_emit() 702 radeon_ring_write(ring, cpu_to_le32((addr >> 3) & 0x000FFFFF)); in radeon_vce_semaphore_emit() 703 radeon_ring_write(ring, cpu_to_le32((addr >> 23) & 0x000FFFFF)); in radeon_vce_semaphore_emit() 704 radeon_ring_write(ring, cpu_to_le32(0x01003000 | (emit_wait ? 1 : 0))); in radeon_vce_semaphore_emit() 706 radeon_ring_write(ring, cpu_to_le32(VCE_CMD_END)); in radeon_vce_semaphore_emit() 721 radeon_ring_write(ring, cpu_to_le32(VCE_CMD_IB)); in radeon_vce_ib_execute() 722 radeon_ring_write(ring, cpu_to_le32(ib->gpu_addr)); in radeon_vce_ib_execute() 723 radeon_ring_write(ring, cpu_to_le32(upper_32_bits(ib->gpu_addr))); in radeon_vce_ib_execute() 724 radeon_ring_write(ring, cpu_to_le32(ib->length_dw)); in radeon_vce_ib_execute() 740 radeon_ring_write(ring, cpu_to_le32(VCE_CMD_FENCE)); in radeon_vce_fence_emit() [all …]
|
H A D | si.c | 3357 radeon_ring_write(ring, PACKET3(PACKET3_SET_CONFIG_REG, 1)); in si_fence_ring_emit() 3358 radeon_ring_write(ring, (CP_COHER_CNTL2 - PACKET3_SET_CONFIG_REG_START) >> 2); in si_fence_ring_emit() 3359 radeon_ring_write(ring, 0); in si_fence_ring_emit() 3360 radeon_ring_write(ring, PACKET3(PACKET3_SURFACE_SYNC, 3)); in si_fence_ring_emit() 3361 radeon_ring_write(ring, PACKET3_TCL1_ACTION_ENA | in si_fence_ring_emit() 3365 radeon_ring_write(ring, 0xFFFFFFFF); in si_fence_ring_emit() 3366 radeon_ring_write(ring, 0); in si_fence_ring_emit() 3367 radeon_ring_write(ring, 10); /* poll interval */ in si_fence_ring_emit() 3369 radeon_ring_write(ring, PACKET3(PACKET3_EVENT_WRITE_EOP, 4)); in si_fence_ring_emit() 3370 radeon_ring_write(ring, EVENT_TYPE(CACHE_FLUSH_AND_INV_TS_EVENT) | EVENT_INDEX(5)); in si_fence_ring_emit() [all …]
|
H A D | r600.c | 2697 radeon_ring_write(ring, PACKET3(PACKET3_ME_INITIALIZE, 5)); in r600_cp_start() 2698 radeon_ring_write(ring, 0x1); in r600_cp_start() 2700 radeon_ring_write(ring, 0x0); in r600_cp_start() 2701 radeon_ring_write(ring, rdev->config.rv770.max_hw_contexts - 1); in r600_cp_start() 2703 radeon_ring_write(ring, 0x3); in r600_cp_start() 2704 radeon_ring_write(ring, rdev->config.r600.max_hw_contexts - 1); in r600_cp_start() 2706 radeon_ring_write(ring, PACKET3_ME_INITIALIZE_DEVICE_ID(1)); in r600_cp_start() 2707 radeon_ring_write(ring, 0); in r600_cp_start() 2708 radeon_ring_write(ring, 0); in r600_cp_start() 2842 radeon_ring_write(ring, PACKET3(PACKET3_SET_CONFIG_REG, 1)); in r600_ring_test() [all …]
|
H A D | cik.c | 3464 radeon_ring_write(ring, PACKET3(PACKET3_SET_UCONFIG_REG, 1)); in cik_ring_test() 3465 radeon_ring_write(ring, ((scratch - PACKET3_SET_UCONFIG_REG_START) >> 2)); in cik_ring_test() 3466 radeon_ring_write(ring, 0xDEADBEEF); in cik_ring_test() 3520 radeon_ring_write(ring, PACKET3(PACKET3_WAIT_REG_MEM, 5)); in cik_hdp_flush_cp_ring_emit() 3521 radeon_ring_write(ring, (WAIT_REG_MEM_OPERATION(1) | /* write, wait, write */ in cik_hdp_flush_cp_ring_emit() 3524 radeon_ring_write(ring, GPU_HDP_FLUSH_REQ >> 2); in cik_hdp_flush_cp_ring_emit() 3525 radeon_ring_write(ring, GPU_HDP_FLUSH_DONE >> 2); in cik_hdp_flush_cp_ring_emit() 3526 radeon_ring_write(ring, ref_and_mask); in cik_hdp_flush_cp_ring_emit() 3527 radeon_ring_write(ring, ref_and_mask); in cik_hdp_flush_cp_ring_emit() 3528 radeon_ring_write(ring, 0x20); /* poll interval */ in cik_hdp_flush_cp_ring_emit() [all …]
|
H A D | r200.c | 105 radeon_ring_write(ring, PACKET0(RADEON_WAIT_UNTIL, 0)); in r200_copy_dma() 106 radeon_ring_write(ring, (1 << 16)); in r200_copy_dma() 113 radeon_ring_write(ring, PACKET0(0x720, 2)); in r200_copy_dma() 114 radeon_ring_write(ring, src_offset); in r200_copy_dma() 115 radeon_ring_write(ring, dst_offset); in r200_copy_dma() 116 radeon_ring_write(ring, cur_size | (1 << 31) | (1 << 30)); in r200_copy_dma() 120 radeon_ring_write(ring, PACKET0(RADEON_WAIT_UNTIL, 0)); in r200_copy_dma() 121 radeon_ring_write(ring, RADEON_WAIT_DMA_GUI_IDLE); in r200_copy_dma()
|
H A D | r100.c | 860 radeon_ring_write(ring, PACKET0(RADEON_HOST_PATH_CNTL, 0)); in r100_ring_hdp_flush() 861 radeon_ring_write(ring, rdev->config.r100.hdp_cntl | in r100_ring_hdp_flush() 863 radeon_ring_write(ring, PACKET0(RADEON_HOST_PATH_CNTL, 0)); in r100_ring_hdp_flush() 864 radeon_ring_write(ring, rdev->config.r100.hdp_cntl); in r100_ring_hdp_flush() 876 radeon_ring_write(ring, PACKET0(RADEON_RB3D_DSTCACHE_CTLSTAT, 0)); in r100_fence_ring_emit() 877 radeon_ring_write(ring, RADEON_RB3D_DC_FLUSH_ALL); in r100_fence_ring_emit() 878 radeon_ring_write(ring, PACKET0(RADEON_RB3D_ZCACHE_CTLSTAT, 0)); in r100_fence_ring_emit() 879 radeon_ring_write(ring, RADEON_RB3D_ZC_FLUSH_ALL); in r100_fence_ring_emit() 881 radeon_ring_write(ring, PACKET0(RADEON_WAIT_UNTIL, 0)); in r100_fence_ring_emit() 882 radeon_ring_write(ring, RADEON_WAIT_2D_IDLECLEAN | RADEON_WAIT_3D_IDLECLEAN); in r100_fence_ring_emit() [all …]
|
H A D | r420.c | 221 radeon_ring_write(ring, PACKET0(R300_CP_RESYNC_ADDR, 1)); in r420_cp_errata_init() 222 radeon_ring_write(ring, rdev->config.r300.resync_scratch); in r420_cp_errata_init() 223 radeon_ring_write(ring, 0xDEADBEEF); in r420_cp_errata_init() 237 radeon_ring_write(ring, PACKET0(R300_RB3D_DSTCACHE_CTLSTAT, 0)); in r420_cp_errata_fini() 238 radeon_ring_write(ring, R300_RB3D_DC_FINISH); in r420_cp_errata_fini()
|
H A D | evergreen.c | 2935 radeon_ring_write(ring, PACKET3(PACKET3_MODE_CONTROL, 0)); in evergreen_ring_ib_execute() 2936 radeon_ring_write(ring, 1); in evergreen_ring_ib_execute() 2940 radeon_ring_write(ring, PACKET3(PACKET3_SET_CONFIG_REG, 1)); in evergreen_ring_ib_execute() 2941 radeon_ring_write(ring, ((ring->rptr_save_reg - in evergreen_ring_ib_execute() 2943 radeon_ring_write(ring, next_rptr); in evergreen_ring_ib_execute() 2946 radeon_ring_write(ring, PACKET3(PACKET3_MEM_WRITE, 3)); in evergreen_ring_ib_execute() 2947 radeon_ring_write(ring, ring->next_rptr_gpu_addr & 0xfffffffc); in evergreen_ring_ib_execute() 2948 radeon_ring_write(ring, (upper_32_bits(ring->next_rptr_gpu_addr) & 0xff) | (1 << 18)); in evergreen_ring_ib_execute() 2949 radeon_ring_write(ring, next_rptr); in evergreen_ring_ib_execute() 2950 radeon_ring_write(ring, 0); in evergreen_ring_ib_execute() [all …]
|
H A D | radeon_ring.c | 179 radeon_ring_write(ring, ring->nop); in radeon_ring_commit() 363 radeon_ring_write(ring, data[i]); in radeon_ring_restore()
|
H A D | radeon.h | 2680 static inline void radeon_ring_write(struct radeon_ring *ring, uint32_t v) in radeon_ring_write() function
|