• Home
  • History
  • Annotate
  • Raw
  • Download

Lines Matching full:cb

1285  * This function intializes the CB* register values for RATs.  It is meant
1334 /* XXX handle enabling of CB beyond BASE8 which has different offset */ in evergreen_init_color_surface()
1842 struct r600_surface *cb = NULL; in evergreen_emit_framebuffer_state() local
1853 cb = (struct r600_surface*)state->cbufs[i]; in evergreen_emit_framebuffer_state()
1854 if (!cb) { in evergreen_emit_framebuffer_state()
1860 tex = (struct r600_texture *)cb->base.texture; in evergreen_emit_framebuffer_state()
1863 (struct r600_resource*)cb->base.texture, in evergreen_emit_framebuffer_state()
1878 radeon_emit(cs, cb->cb_color_base); /* R_028C60_CB_COLOR0_BASE */ in evergreen_emit_framebuffer_state()
1879 radeon_emit(cs, cb->cb_color_pitch); /* R_028C64_CB_COLOR0_PITCH */ in evergreen_emit_framebuffer_state()
1880 radeon_emit(cs, cb->cb_color_slice); /* R_028C68_CB_COLOR0_SLICE */ in evergreen_emit_framebuffer_state()
1881 radeon_emit(cs, cb->cb_color_view); /* R_028C6C_CB_COLOR0_VIEW */ in evergreen_emit_framebuffer_state()
1882 radeon_emit(cs, cb->cb_color_info | tex->cb_color_info); /* R_028C70_CB_COLOR0_INFO */ in evergreen_emit_framebuffer_state()
1883 radeon_emit(cs, cb->cb_color_attrib); /* R_028C74_CB_COLOR0_ATTRIB */ in evergreen_emit_framebuffer_state()
1884 radeon_emit(cs, cb->cb_color_dim); /* R_028C78_CB_COLOR0_DIM */ in evergreen_emit_framebuffer_state()
1887 radeon_emit(cs, cb->cb_color_fmask); /* R_028C84_CB_COLOR0_FMASK */ in evergreen_emit_framebuffer_state()
1888 radeon_emit(cs, cb->cb_color_fmask_slice); /* R_028C88_CB_COLOR0_FMASK_SLICE */ in evergreen_emit_framebuffer_state()
1907 cb->cb_color_info | tex->cb_color_info); in evergreen_emit_framebuffer_state()
2190 struct pipe_constant_buffer *cb; in evergreen_emit_constant_buffers() local
2196 cb = &state->cb[buffer_index]; in evergreen_emit_constant_buffers()
2197 rbuffer = (struct r600_resource*)cb->buffer; in evergreen_emit_constant_buffers()
2200 va = rbuffer->gpu_address + cb->buffer_offset; in evergreen_emit_constant_buffers()
2204 DIV_ROUND_UP(cb->buffer_size, 256), pkt_flags); in evergreen_emit_constant_buffers()
2215 radeon_emit(cs, cb->buffer_size -1); /* RESOURCEi_WORD1 */ in evergreen_emit_constant_buffers()
2707 void cayman_init_common_regs(struct r600_command_buffer *cb, in cayman_init_common_regs() argument
2712 r600_store_config_reg_seq(cb, R_008C00_SQ_CONFIG, 2); in cayman_init_common_regs()
2713 r600_store_value(cb, S_008C00_EXPORT_SRC_C(1)); /* R_008C00_SQ_CONFIG */ in cayman_init_common_regs()
2715 r600_store_value(cb, S_008C04_NUM_CLAUSE_TEMP_GPRS(4)); /* R_008C04_SQ_GPR_RESOURCE_MGMT_1 */ in cayman_init_common_regs()
2717 r600_store_config_reg_seq(cb, R_008C10_SQ_GLOBAL_GPR_RESOURCE_MGMT_1, 2); in cayman_init_common_regs()
2718 r600_store_value(cb, 0); /* R_008C10_SQ_GLOBAL_GPR_RESOURCE_MGMT_1 */ in cayman_init_common_regs()
2719 r600_store_value(cb, 0); /* R_008C14_SQ_GLOBAL_GPR_RESOURCE_MGMT_2 */ in cayman_init_common_regs()
2721 r600_store_config_reg(cb, R_008D8C_SQ_DYN_GPR_CNTL_PS_FLUSH_REQ, (1 << 8)); in cayman_init_common_regs()
2723 r600_store_context_reg_seq(cb, R_028350_SX_MISC, 2); in cayman_init_common_regs()
2724 r600_store_value(cb, 0); in cayman_init_common_regs()
2725 r600_store_value(cb, S_028354_SURFACE_SYNC_MASK(0xf)); in cayman_init_common_regs()
2727 r600_store_context_reg(cb, R_028800_DB_DEPTH_CONTROL, 0); in cayman_init_common_regs()
2732 struct r600_command_buffer *cb = &rctx->start_cs_cmd; in cayman_init_atom_start_cs() local
2735 r600_init_command_buffer(cb, 338); in cayman_init_atom_start_cs()
2738 r600_store_value(cb, PKT3(PKT3_CONTEXT_CONTROL, 1, 0)); in cayman_init_atom_start_cs()
2739 r600_store_value(cb, 0x80000000); in cayman_init_atom_start_cs()
2740 r600_store_value(cb, 0x80000000); in cayman_init_atom_start_cs()
2743 r600_store_value(cb, PKT3(PKT3_EVENT_WRITE, 0, 0)); in cayman_init_atom_start_cs()
2744 r600_store_value(cb, EVENT_TYPE(EVENT_TYPE_PS_PARTIAL_FLUSH) | EVENT_INDEX(4)); in cayman_init_atom_start_cs()
2749 r600_store_value(cb, PKT3(PKT3_EVENT_WRITE, 0, 0)); in cayman_init_atom_start_cs()
2750 r600_store_value(cb, EVENT_TYPE(EVENT_TYPE_PIPELINESTAT_START) | EVENT_INDEX(0)); in cayman_init_atom_start_cs()
2752 cayman_init_common_regs(cb, rctx->b.chip_class, in cayman_init_atom_start_cs()
2755 r600_store_config_reg(cb, R_009100_SPI_CONFIG_CNTL, 0); in cayman_init_atom_start_cs()
2756 r600_store_config_reg(cb, R_00913C_SPI_CONFIG_CNTL_1, S_00913C_VTX_DONE_DELAY(4)); in cayman_init_atom_start_cs()
2759 r600_store_config_reg_seq(cb, R_008E20_SQ_STATIC_THREAD_MGMT1, 3); in cayman_init_atom_start_cs()
2760 r600_store_value(cb, 0xffffffff); in cayman_init_atom_start_cs()
2761 r600_store_value(cb, 0xffffffff); in cayman_init_atom_start_cs()
2762 r600_store_value(cb, 0xfffffffe); in cayman_init_atom_start_cs()
2764 r600_store_context_reg_seq(cb, R_028900_SQ_ESGS_RING_ITEMSIZE, 6); in cayman_init_atom_start_cs()
2765 r600_store_value(cb, 0); /* R_028900_SQ_ESGS_RING_ITEMSIZE */ in cayman_init_atom_start_cs()
2766 r600_store_value(cb, 0); /* R_028904_SQ_GSVS_RING_ITEMSIZE */ in cayman_init_atom_start_cs()
2767 r600_store_value(cb, 0); /* R_028908_SQ_ESTMP_RING_ITEMSIZE */ in cayman_init_atom_start_cs()
2768 r600_store_value(cb, 0); /* R_02890C_SQ_GSTMP_RING_ITEMSIZE */ in cayman_init_atom_start_cs()
2769 r600_store_value(cb, 0); /* R_028910_SQ_VSTMP_RING_ITEMSIZE */ in cayman_init_atom_start_cs()
2770 r600_store_value(cb, 0); /* R_028914_SQ_PSTMP_RING_ITEMSIZE */ in cayman_init_atom_start_cs()
2772 r600_store_context_reg_seq(cb, R_02891C_SQ_GS_VERT_ITEMSIZE, 4); in cayman_init_atom_start_cs()
2773 r600_store_value(cb, 0); /* R_02891C_SQ_GS_VERT_ITEMSIZE */ in cayman_init_atom_start_cs()
2774 r600_store_value(cb, 0); /* R_028920_SQ_GS_VERT_ITEMSIZE_1 */ in cayman_init_atom_start_cs()
2775 r600_store_value(cb, 0); /* R_028924_SQ_GS_VERT_ITEMSIZE_2 */ in cayman_init_atom_start_cs()
2776 r600_store_value(cb, 0); /* R_028928_SQ_GS_VERT_ITEMSIZE_3 */ in cayman_init_atom_start_cs()
2778 r600_store_context_reg_seq(cb, R_028A10_VGT_OUTPUT_PATH_CNTL, 13); in cayman_init_atom_start_cs()
2779 r600_store_value(cb, 0); /* R_028A10_VGT_OUTPUT_PATH_CNTL */ in cayman_init_atom_start_cs()
2780 r600_store_value(cb, 0); /* R_028A14_VGT_HOS_CNTL */ in cayman_init_atom_start_cs()
2781 r600_store_value(cb, fui(64)); /* R_028A18_VGT_HOS_MAX_TESS_LEVEL */ in cayman_init_atom_start_cs()
2782 r600_store_value(cb, fui(0)); /* R_028A1C_VGT_HOS_MIN_TESS_LEVEL */ in cayman_init_atom_start_cs()
2783 r600_store_value(cb, 16); /* R_028A20_VGT_HOS_REUSE_DEPTH */ in cayman_init_atom_start_cs()
2784 r600_store_value(cb, 0); /* R_028A24_VGT_GROUP_PRIM_TYPE */ in cayman_init_atom_start_cs()
2785 r600_store_value(cb, 0); /* R_028A28_VGT_GROUP_FIRST_DECR */ in cayman_init_atom_start_cs()
2786 r600_store_value(cb, 0); /* R_028A2C_VGT_GROUP_DECR */ in cayman_init_atom_start_cs()
2787 r600_store_value(cb, 0); /* R_028A30_VGT_GROUP_VECT_0_CNTL */ in cayman_init_atom_start_cs()
2788 r600_store_value(cb, 0); /* R_028A34_VGT_GROUP_VECT_1_CNTL */ in cayman_init_atom_start_cs()
2789 r600_store_value(cb, 0); /* R_028A38_VGT_GROUP_VECT_0_FMT_CNTL */ in cayman_init_atom_start_cs()
2790 r600_store_value(cb, 0); /* R_028A3C_VGT_GROUP_VECT_1_FMT_CNTL */ in cayman_init_atom_start_cs()
2791 r600_store_value(cb, 0); /* R_028A40_VGT_GS_MODE */ in cayman_init_atom_start_cs()
2793 r600_store_context_reg(cb, R_028B98_VGT_STRMOUT_BUFFER_CONFIG, 0); in cayman_init_atom_start_cs()
2795 r600_store_config_reg(cb, R_008A14_PA_CL_ENHANCE, (3 << 1) | 1); in cayman_init_atom_start_cs()
2797 r600_store_context_reg_seq(cb, CM_R_028BD4_PA_SC_CENTROID_PRIORITY_0, 2); in cayman_init_atom_start_cs()
2798 r600_store_value(cb, 0x76543210); /* CM_R_028BD4_PA_SC_CENTROID_PRIORITY_0 */ in cayman_init_atom_start_cs()
2799 r600_store_value(cb, 0xfedcba98); /* CM_R_028BD8_PA_SC_CENTROID_PRIORITY_1 */ in cayman_init_atom_start_cs()
2801 r600_store_context_reg(cb, R_028724_GDS_ADDR_SIZE, 0x3fff); in cayman_init_atom_start_cs()
2802 r600_store_context_reg_seq(cb, R_0288E8_SQ_LDS_ALLOC, 2); in cayman_init_atom_start_cs()
2803 r600_store_value(cb, 0); /* R_0288E8_SQ_LDS_ALLOC */ in cayman_init_atom_start_cs()
2804 r600_store_value(cb, 0); /* R_0288EC_SQ_LDS_ALLOC_PS */ in cayman_init_atom_start_cs()
2806 r600_store_context_reg(cb, R_0288F0_SQ_VTX_SEMANTIC_CLEAR, ~0); in cayman_init_atom_start_cs()
2808 r600_store_context_reg_seq(cb, R_028400_VGT_MAX_VTX_INDX, 2); in cayman_init_atom_start_cs()
2809 r600_store_value(cb, ~0); /* R_028400_VGT_MAX_VTX_INDX */ in cayman_init_atom_start_cs()
2810 r600_store_value(cb, 0); /* R_028404_VGT_MIN_VTX_INDX */ in cayman_init_atom_start_cs()
2812 r600_store_ctl_const(cb, R_03CFF0_SQ_VTX_BASE_VTX_LOC, 0); in cayman_init_atom_start_cs()
2814 r600_store_context_reg(cb, R_028028_DB_STENCIL_CLEAR, 0); in cayman_init_atom_start_cs()
2816 r600_store_context_reg(cb, R_0286DC_SPI_FOG_CNTL, 0); in cayman_init_atom_start_cs()
2818 r600_store_context_reg_seq(cb, R_028AC0_DB_SRESULTS_COMPARE_STATE0, 3); in cayman_init_atom_start_cs()
2819 r600_store_value(cb, 0); /* R_028AC0_DB_SRESULTS_COMPARE_STATE0 */ in cayman_init_atom_start_cs()
2820 r600_store_value(cb, 0); /* R_028AC4_DB_SRESULTS_COMPARE_STATE1 */ in cayman_init_atom_start_cs()
2821 r600_store_value(cb, 0); /* R_028AC8_DB_PRELOAD_CONTROL */ in cayman_init_atom_start_cs()
2823 r600_store_context_reg(cb, R_028200_PA_SC_WINDOW_OFFSET, 0); in cayman_init_atom_start_cs()
2824 r600_store_context_reg(cb, R_02820C_PA_SC_CLIPRECT_RULE, 0xFFFF); in cayman_init_atom_start_cs()
2826 r600_store_context_reg(cb, R_028230_PA_SC_EDGERULE, 0xAAAAAAAA); in cayman_init_atom_start_cs()
2827 r600_store_context_reg(cb, R_028820_PA_CL_NANINF_CNTL, 0); in cayman_init_atom_start_cs()
2829 r600_store_context_reg_seq(cb, R_028240_PA_SC_GENERIC_SCISSOR_TL, 2); in cayman_init_atom_start_cs()
2830 r600_store_value(cb, 0); /* R_028240_PA_SC_GENERIC_SCISSOR_TL */ in cayman_init_atom_start_cs()
2831 …r600_store_value(cb, S_028244_BR_X(16384) | S_028244_BR_Y(16384)); /* R_028244_PA_SC_GENERIC_SCISS… in cayman_init_atom_start_cs()
2833 r600_store_context_reg_seq(cb, R_028030_PA_SC_SCREEN_SCISSOR_TL, 2); in cayman_init_atom_start_cs()
2834 r600_store_value(cb, 0); /* R_028030_PA_SC_SCREEN_SCISSOR_TL */ in cayman_init_atom_start_cs()
2835 …r600_store_value(cb, S_028034_BR_X(16384) | S_028034_BR_Y(16384)); /* R_028034_PA_SC_SCREEN_SCISSO… in cayman_init_atom_start_cs()
2837 …r600_store_context_reg(cb, R_028848_SQ_PGM_RESOURCES_2_PS, S_028848_SINGLE_ROUND(V_SQ_ROUND_NEARES… in cayman_init_atom_start_cs()
2838 …r600_store_context_reg(cb, R_028864_SQ_PGM_RESOURCES_2_VS, S_028864_SINGLE_ROUND(V_SQ_ROUND_NEARES… in cayman_init_atom_start_cs()
2839 …r600_store_context_reg(cb, R_02887C_SQ_PGM_RESOURCES_2_GS, S_028848_SINGLE_ROUND(V_SQ_ROUND_NEARES… in cayman_init_atom_start_cs()
2840 …r600_store_context_reg(cb, R_028894_SQ_PGM_RESOURCES_2_ES, S_028848_SINGLE_ROUND(V_SQ_ROUND_NEARES… in cayman_init_atom_start_cs()
2841 …r600_store_context_reg(cb, R_0288C0_SQ_PGM_RESOURCES_2_HS, S_028848_SINGLE_ROUND(V_SQ_ROUND_NEARES… in cayman_init_atom_start_cs()
2842 …r600_store_context_reg(cb, R_0288D8_SQ_PGM_RESOURCES_2_LS, S_028848_SINGLE_ROUND(V_SQ_ROUND_NEARES… in cayman_init_atom_start_cs()
2844 r600_store_context_reg(cb, R_0288A8_SQ_PGM_RESOURCES_FS, 0); in cayman_init_atom_start_cs()
2847 r600_store_context_reg_seq(cb, R_028140_ALU_CONST_BUFFER_SIZE_PS_0, 16); in cayman_init_atom_start_cs()
2849 r600_store_value(cb, 0); in cayman_init_atom_start_cs()
2851 r600_store_context_reg_seq(cb, R_028180_ALU_CONST_BUFFER_SIZE_VS_0, 16); in cayman_init_atom_start_cs()
2853 r600_store_value(cb, 0); in cayman_init_atom_start_cs()
2855 r600_store_context_reg_seq(cb, R_0281C0_ALU_CONST_BUFFER_SIZE_GS_0, 16); in cayman_init_atom_start_cs()
2857 r600_store_value(cb, 0); in cayman_init_atom_start_cs()
2859 r600_store_context_reg_seq(cb, R_028FC0_ALU_CONST_BUFFER_SIZE_LS_0, 16); in cayman_init_atom_start_cs()
2861 r600_store_value(cb, 0); in cayman_init_atom_start_cs()
2863 r600_store_context_reg_seq(cb, R_028F80_ALU_CONST_BUFFER_SIZE_HS_0, 16); in cayman_init_atom_start_cs()
2865 r600_store_value(cb, 0); in cayman_init_atom_start_cs()
2868 r600_store_context_reg(cb, R_028B28_VGT_STRMOUT_DRAW_OPAQUE_OFFSET, 0); in cayman_init_atom_start_cs()
2871 r600_store_context_reg(cb, R_028010_DB_RENDER_OVERRIDE2, 0); in cayman_init_atom_start_cs()
2872 r600_store_context_reg(cb, R_028234_PA_SU_HARDWARE_SCREEN_OFFSET, 0); in cayman_init_atom_start_cs()
2873 r600_store_context_reg(cb, R_0286C8_SPI_THREAD_GROUPING, 0); in cayman_init_atom_start_cs()
2874 r600_store_context_reg_seq(cb, R_0286E4_SPI_PS_IN_CONTROL_2, 2); in cayman_init_atom_start_cs()
2875 r600_store_value(cb, 0); /* R_0286E4_SPI_PS_IN_CONTROL_2 */ in cayman_init_atom_start_cs()
2876 r600_store_value(cb, 0); /* R_0286E8_SPI_COMPUTE_INPUT_CNTL */ in cayman_init_atom_start_cs()
2878 r600_store_context_reg_seq(cb, R_028B54_VGT_SHADER_STAGES_EN, 2); in cayman_init_atom_start_cs()
2879 r600_store_value(cb, 0); /* R028B54_VGT_SHADER_STAGES_EN */ in cayman_init_atom_start_cs()
2880 r600_store_value(cb, 0); /* R028B58_VGT_LS_HS_CONFIG */ in cayman_init_atom_start_cs()
2881 r600_store_context_reg(cb, R_028B6C_VGT_TF_PARAM, 0); in cayman_init_atom_start_cs()
2882 eg_store_loop_const(cb, R_03A200_SQ_LOOP_CONST_0, 0x01000FFF); in cayman_init_atom_start_cs()
2883 eg_store_loop_const(cb, R_03A200_SQ_LOOP_CONST_0 + (32 * 4), 0x01000FFF); in cayman_init_atom_start_cs()
2884 eg_store_loop_const(cb, R_03A200_SQ_LOOP_CONST_0 + (64 * 4), 0x01000FFF); in cayman_init_atom_start_cs()
2885 eg_store_loop_const(cb, R_03A200_SQ_LOOP_CONST_0 + (96 * 4), 0x01000FFF); in cayman_init_atom_start_cs()
2886 eg_store_loop_const(cb, R_03A200_SQ_LOOP_CONST_0 + (128 * 4), 0x01000FFF); in cayman_init_atom_start_cs()
2889 void evergreen_init_common_regs(struct r600_context *rctx, struct r600_command_buffer *cb, in evergreen_init_common_regs() argument
2942 r600_store_config_reg_seq(cb, R_008C00_SQ_CONFIG, 1); in evergreen_init_common_regs()
2943 r600_store_value(cb, tmp); /* R_008C00_SQ_CONFIG */ in evergreen_init_common_regs()
2945 r600_store_config_reg_seq(cb, R_008C10_SQ_GLOBAL_GPR_RESOURCE_MGMT_1, 2); in evergreen_init_common_regs()
2946 r600_store_value(cb, 0); /* R_008C10_SQ_GLOBAL_GPR_RESOURCE_MGMT_1 */ in evergreen_init_common_regs()
2947 r600_store_value(cb, 0); /* R_008C14_SQ_GLOBAL_GPR_RESOURCE_MGMT_2 */ in evergreen_init_common_regs()
2950 r600_store_context_reg(cb, R_028800_DB_DEPTH_CONTROL, 0); in evergreen_init_common_regs()
2952 r600_store_context_reg_seq(cb, R_028350_SX_MISC, 2); in evergreen_init_common_regs()
2953 r600_store_value(cb, 0); in evergreen_init_common_regs()
2954 r600_store_value(cb, S_028354_SURFACE_SYNC_MASK(0xf)); in evergreen_init_common_regs()
2961 struct r600_command_buffer *cb = &rctx->start_cs_cmd; in evergreen_init_atom_start_cs() local
2983 r600_init_command_buffer(cb, 338); in evergreen_init_atom_start_cs()
2986 r600_store_value(cb, PKT3(PKT3_CONTEXT_CONTROL, 1, 0)); in evergreen_init_atom_start_cs()
2987 r600_store_value(cb, 0x80000000); in evergreen_init_atom_start_cs()
2988 r600_store_value(cb, 0x80000000); in evergreen_init_atom_start_cs()
2991 r600_store_value(cb, PKT3(PKT3_EVENT_WRITE, 0, 0)); in evergreen_init_atom_start_cs()
2992 r600_store_value(cb, EVENT_TYPE(EVENT_TYPE_PS_PARTIAL_FLUSH) | EVENT_INDEX(4)); in evergreen_init_atom_start_cs()
2997 r600_store_value(cb, PKT3(PKT3_EVENT_WRITE, 0, 0)); in evergreen_init_atom_start_cs()
2998 r600_store_value(cb, EVENT_TYPE(EVENT_TYPE_PIPELINESTAT_START) | EVENT_INDEX(0)); in evergreen_init_atom_start_cs()
3000 evergreen_init_common_regs(rctx, cb, rctx->b.chip_class, in evergreen_init_atom_start_cs()
3154 r600_store_config_reg_seq(cb, R_008C18_SQ_THREAD_RESOURCE_MGMT_1, 5); in evergreen_init_atom_start_cs()
3155 r600_store_value(cb, tmp); /* R_008C18_SQ_THREAD_RESOURCE_MGMT_1 */ in evergreen_init_atom_start_cs()
3159 r600_store_value(cb, tmp); /* R_008C1C_SQ_THREAD_RESOURCE_MGMT_2 */ in evergreen_init_atom_start_cs()
3163 r600_store_value(cb, tmp); /* R_008C20_SQ_STACK_RESOURCE_MGMT_1 */ in evergreen_init_atom_start_cs()
3167 r600_store_value(cb, tmp); /* R_008C24_SQ_STACK_RESOURCE_MGMT_2 */ in evergreen_init_atom_start_cs()
3171 r600_store_value(cb, tmp); /* R_008C28_SQ_STACK_RESOURCE_MGMT_3 */ in evergreen_init_atom_start_cs()
3173 r600_store_config_reg(cb, R_008E2C_SQ_LDS_RESOURCE_MGMT, in evergreen_init_atom_start_cs()
3177 r600_store_config_reg_seq(cb, R_008E20_SQ_STATIC_THREAD_MGMT1, 3); in evergreen_init_atom_start_cs()
3178 r600_store_value(cb, 0xffffffff); in evergreen_init_atom_start_cs()
3179 r600_store_value(cb, 0xffffffff); in evergreen_init_atom_start_cs()
3180 r600_store_value(cb, 0xfffffffe); in evergreen_init_atom_start_cs()
3182 r600_store_config_reg(cb, R_009100_SPI_CONFIG_CNTL, 0); in evergreen_init_atom_start_cs()
3183 r600_store_config_reg(cb, R_00913C_SPI_CONFIG_CNTL_1, S_00913C_VTX_DONE_DELAY(4)); in evergreen_init_atom_start_cs()
3185 r600_store_context_reg_seq(cb, R_028900_SQ_ESGS_RING_ITEMSIZE, 6); in evergreen_init_atom_start_cs()
3186 r600_store_value(cb, 0); /* R_028900_SQ_ESGS_RING_ITEMSIZE */ in evergreen_init_atom_start_cs()
3187 r600_store_value(cb, 0); /* R_028904_SQ_GSVS_RING_ITEMSIZE */ in evergreen_init_atom_start_cs()
3188 r600_store_value(cb, 0); /* R_028908_SQ_ESTMP_RING_ITEMSIZE */ in evergreen_init_atom_start_cs()
3189 r600_store_value(cb, 0); /* R_02890C_SQ_GSTMP_RING_ITEMSIZE */ in evergreen_init_atom_start_cs()
3190 r600_store_value(cb, 0); /* R_028910_SQ_VSTMP_RING_ITEMSIZE */ in evergreen_init_atom_start_cs()
3191 r600_store_value(cb, 0); /* R_028914_SQ_PSTMP_RING_ITEMSIZE */ in evergreen_init_atom_start_cs()
3193 r600_store_context_reg_seq(cb, R_02891C_SQ_GS_VERT_ITEMSIZE, 4); in evergreen_init_atom_start_cs()
3194 r600_store_value(cb, 0); /* R_02891C_SQ_GS_VERT_ITEMSIZE */ in evergreen_init_atom_start_cs()
3195 r600_store_value(cb, 0); /* R_028920_SQ_GS_VERT_ITEMSIZE_1 */ in evergreen_init_atom_start_cs()
3196 r600_store_value(cb, 0); /* R_028924_SQ_GS_VERT_ITEMSIZE_2 */ in evergreen_init_atom_start_cs()
3197 r600_store_value(cb, 0); /* R_028928_SQ_GS_VERT_ITEMSIZE_3 */ in evergreen_init_atom_start_cs()
3199 r600_store_context_reg_seq(cb, R_028A10_VGT_OUTPUT_PATH_CNTL, 13); in evergreen_init_atom_start_cs()
3200 r600_store_value(cb, 0); /* R_028A10_VGT_OUTPUT_PATH_CNTL */ in evergreen_init_atom_start_cs()
3201 r600_store_value(cb, 0); /* R_028A14_VGT_HOS_CNTL */ in evergreen_init_atom_start_cs()
3202 r600_store_value(cb, fui(64)); /* R_028A18_VGT_HOS_MAX_TESS_LEVEL */ in evergreen_init_atom_start_cs()
3203 r600_store_value(cb, fui(1.0)); /* R_028A1C_VGT_HOS_MIN_TESS_LEVEL */ in evergreen_init_atom_start_cs()
3204 r600_store_value(cb, 16); /* R_028A20_VGT_HOS_REUSE_DEPTH */ in evergreen_init_atom_start_cs()
3205 r600_store_value(cb, 0); /* R_028A24_VGT_GROUP_PRIM_TYPE */ in evergreen_init_atom_start_cs()
3206 r600_store_value(cb, 0); /* R_028A28_VGT_GROUP_FIRST_DECR */ in evergreen_init_atom_start_cs()
3207 r600_store_value(cb, 0); /* R_028A2C_VGT_GROUP_DECR */ in evergreen_init_atom_start_cs()
3208 r600_store_value(cb, 0); /* R_028A30_VGT_GROUP_VECT_0_CNTL */ in evergreen_init_atom_start_cs()
3209 r600_store_value(cb, 0); /* R_028A34_VGT_GROUP_VECT_1_CNTL */ in evergreen_init_atom_start_cs()
3210 r600_store_value(cb, 0); /* R_028A38_VGT_GROUP_VECT_0_FMT_CNTL */ in evergreen_init_atom_start_cs()
3211 r600_store_value(cb, 0); /* R_028A3C_VGT_GROUP_VECT_1_FMT_CNTL */ in evergreen_init_atom_start_cs()
3212 r600_store_value(cb, 0); /* R_028A40_VGT_GS_MODE */ in evergreen_init_atom_start_cs()
3214 r600_store_config_reg(cb, R_008A14_PA_CL_ENHANCE, (3 << 1) | 1); in evergreen_init_atom_start_cs()
3216 r600_store_context_reg(cb, R_0288F0_SQ_VTX_SEMANTIC_CLEAR, ~0); in evergreen_init_atom_start_cs()
3218 r600_store_context_reg_seq(cb, R_028400_VGT_MAX_VTX_INDX, 2); in evergreen_init_atom_start_cs()
3219 r600_store_value(cb, ~0); /* R_028400_VGT_MAX_VTX_INDX */ in evergreen_init_atom_start_cs()
3220 r600_store_value(cb, 0); /* R_028404_VGT_MIN_VTX_INDX */ in evergreen_init_atom_start_cs()
3222 r600_store_ctl_const(cb, R_03CFF0_SQ_VTX_BASE_VTX_LOC, 0); in evergreen_init_atom_start_cs()
3224 r600_store_context_reg(cb, R_028028_DB_STENCIL_CLEAR, 0); in evergreen_init_atom_start_cs()
3226 r600_store_context_reg(cb, R_028200_PA_SC_WINDOW_OFFSET, 0); in evergreen_init_atom_start_cs()
3227 r600_store_context_reg(cb, R_02820C_PA_SC_CLIPRECT_RULE, 0xFFFF); in evergreen_init_atom_start_cs()
3228 r600_store_context_reg(cb, R_028230_PA_SC_EDGERULE, 0xAAAAAAAA); in evergreen_init_atom_start_cs()
3230 r600_store_context_reg(cb, R_0286DC_SPI_FOG_CNTL, 0); in evergreen_init_atom_start_cs()
3231 r600_store_context_reg(cb, R_028820_PA_CL_NANINF_CNTL, 0); in evergreen_init_atom_start_cs()
3233 r600_store_context_reg_seq(cb, R_028AC0_DB_SRESULTS_COMPARE_STATE0, 3); in evergreen_init_atom_start_cs()
3234 r600_store_value(cb, 0); /* R_028AC0_DB_SRESULTS_COMPARE_STATE0 */ in evergreen_init_atom_start_cs()
3235 r600_store_value(cb, 0); /* R_028AC4_DB_SRESULTS_COMPARE_STATE1 */ in evergreen_init_atom_start_cs()
3236 r600_store_value(cb, 0); /* R_028AC8_DB_PRELOAD_CONTROL */ in evergreen_init_atom_start_cs()
3238 r600_store_context_reg_seq(cb, R_028240_PA_SC_GENERIC_SCISSOR_TL, 2); in evergreen_init_atom_start_cs()
3239 r600_store_value(cb, 0); /* R_028240_PA_SC_GENERIC_SCISSOR_TL */ in evergreen_init_atom_start_cs()
3240 …r600_store_value(cb, S_028244_BR_X(16384) | S_028244_BR_Y(16384)); /* R_028244_PA_SC_GENERIC_SCISS… in evergreen_init_atom_start_cs()
3242 r600_store_context_reg_seq(cb, R_028030_PA_SC_SCREEN_SCISSOR_TL, 2); in evergreen_init_atom_start_cs()
3243 r600_store_value(cb, 0); /* R_028030_PA_SC_SCREEN_SCISSOR_TL */ in evergreen_init_atom_start_cs()
3244 …r600_store_value(cb, S_028034_BR_X(16384) | S_028034_BR_Y(16384)); /* R_028034_PA_SC_SCREEN_SCISSO… in evergreen_init_atom_start_cs()
3246 …r600_store_context_reg(cb, R_028848_SQ_PGM_RESOURCES_2_PS, S_028848_SINGLE_ROUND(V_SQ_ROUND_NEARES… in evergreen_init_atom_start_cs()
3247 …r600_store_context_reg(cb, R_028864_SQ_PGM_RESOURCES_2_VS, S_028864_SINGLE_ROUND(V_SQ_ROUND_NEARES… in evergreen_init_atom_start_cs()
3248 …r600_store_context_reg(cb, R_02887C_SQ_PGM_RESOURCES_2_GS, S_028848_SINGLE_ROUND(V_SQ_ROUND_NEARES… in evergreen_init_atom_start_cs()
3249 …r600_store_context_reg(cb, R_028894_SQ_PGM_RESOURCES_2_ES, S_028848_SINGLE_ROUND(V_SQ_ROUND_NEARES… in evergreen_init_atom_start_cs()
3250 r600_store_context_reg(cb, R_0288A8_SQ_PGM_RESOURCES_FS, 0); in evergreen_init_atom_start_cs()
3251 …r600_store_context_reg(cb, R_0288C0_SQ_PGM_RESOURCES_2_HS, S_028848_SINGLE_ROUND(V_SQ_ROUND_NEARES… in evergreen_init_atom_start_cs()
3252 …r600_store_context_reg(cb, R_0288D8_SQ_PGM_RESOURCES_2_LS, S_028848_SINGLE_ROUND(V_SQ_ROUND_NEARES… in evergreen_init_atom_start_cs()
3255 r600_store_context_reg_seq(cb, R_028140_ALU_CONST_BUFFER_SIZE_PS_0, 16); in evergreen_init_atom_start_cs()
3257 r600_store_value(cb, 0); in evergreen_init_atom_start_cs()
3259 r600_store_context_reg_seq(cb, R_028180_ALU_CONST_BUFFER_SIZE_VS_0, 16); in evergreen_init_atom_start_cs()
3261 r600_store_value(cb, 0); in evergreen_init_atom_start_cs()
3263 r600_store_context_reg_seq(cb, R_0281C0_ALU_CONST_BUFFER_SIZE_GS_0, 16); in evergreen_init_atom_start_cs()
3265 r600_store_value(cb, 0); in evergreen_init_atom_start_cs()
3267 r600_store_context_reg_seq(cb, R_028FC0_ALU_CONST_BUFFER_SIZE_LS_0, 16); in evergreen_init_atom_start_cs()
3269 r600_store_value(cb, 0); in evergreen_init_atom_start_cs()
3271 r600_store_context_reg_seq(cb, R_028F80_ALU_CONST_BUFFER_SIZE_HS_0, 16); in evergreen_init_atom_start_cs()
3273 r600_store_value(cb, 0); in evergreen_init_atom_start_cs()
3275 r600_store_context_reg(cb, R_028B98_VGT_STRMOUT_BUFFER_CONFIG, 0); in evergreen_init_atom_start_cs()
3278 r600_store_context_reg(cb, R_028B28_VGT_STRMOUT_DRAW_OPAQUE_OFFSET, 0); in evergreen_init_atom_start_cs()
3281 r600_store_context_reg(cb, R_028010_DB_RENDER_OVERRIDE2, 0); in evergreen_init_atom_start_cs()
3282 r600_store_context_reg(cb, R_028234_PA_SU_HARDWARE_SCREEN_OFFSET, 0); in evergreen_init_atom_start_cs()
3283 r600_store_context_reg(cb, R_0286C8_SPI_THREAD_GROUPING, 0); in evergreen_init_atom_start_cs()
3284 r600_store_context_reg_seq(cb, R_0286E4_SPI_PS_IN_CONTROL_2, 2); in evergreen_init_atom_start_cs()
3285 r600_store_value(cb, 0); /* R_0286E4_SPI_PS_IN_CONTROL_2 */ in evergreen_init_atom_start_cs()
3286 r600_store_value(cb, 0); /* R_0286E8_SPI_COMPUTE_INPUT_CNTL */ in evergreen_init_atom_start_cs()
3288 r600_store_context_reg_seq(cb, R_0288E8_SQ_LDS_ALLOC, 2); in evergreen_init_atom_start_cs()
3289 r600_store_value(cb, 0); /* R_0288E8_SQ_LDS_ALLOC */ in evergreen_init_atom_start_cs()
3290 r600_store_value(cb, 0); /* R_0288EC_SQ_LDS_ALLOC_PS */ in evergreen_init_atom_start_cs()
3293 r600_store_context_reg_seq(cb, R_028B54_VGT_SHADER_STAGES_EN, 2); in evergreen_init_atom_start_cs()
3294 r600_store_value(cb, 0); /* R028B54_VGT_SHADER_STAGES_EN */ in evergreen_init_atom_start_cs()
3295 r600_store_value(cb, 0); /* R028B58_VGT_LS_HS_CONFIG */ in evergreen_init_atom_start_cs()
3296 r600_store_context_reg(cb, R_028B6C_VGT_TF_PARAM, 0); in evergreen_init_atom_start_cs()
3298 r600_store_context_reg_seq(cb, R_028B54_VGT_SHADER_STAGES_EN, 7); in evergreen_init_atom_start_cs()
3299 r600_store_value(cb, 0); /* R028B54_VGT_SHADER_STAGES_EN */ in evergreen_init_atom_start_cs()
3300 r600_store_value(cb, 0); /* R028B58_VGT_LS_HS_CONFIG */ in evergreen_init_atom_start_cs()
3301 r600_store_value(cb, 0); /* R028B5C_VGT_LS_SIZE */ in evergreen_init_atom_start_cs()
3302 r600_store_value(cb, 0); /* R028B60_VGT_HS_SIZE */ in evergreen_init_atom_start_cs()
3303 r600_store_value(cb, 0); /* R028B64_VGT_LS_HS_ALLOC */ in evergreen_init_atom_start_cs()
3304 r600_store_value(cb, 0); /* R028B68_VGT_HS_PATCH_CONST */ in evergreen_init_atom_start_cs()
3305 r600_store_value(cb, 0); /* R028B68_VGT_TF_PARAM */ in evergreen_init_atom_start_cs()
3308 eg_store_loop_const(cb, R_03A200_SQ_LOOP_CONST_0, 0x01000FFF); in evergreen_init_atom_start_cs()
3309 eg_store_loop_const(cb, R_03A200_SQ_LOOP_CONST_0 + (32 * 4), 0x01000FFF); in evergreen_init_atom_start_cs()
3310 eg_store_loop_const(cb, R_03A200_SQ_LOOP_CONST_0 + (64 * 4), 0x01000FFF); in evergreen_init_atom_start_cs()
3311 eg_store_loop_const(cb, R_03A200_SQ_LOOP_CONST_0 + (96 * 4), 0x01000FFF); in evergreen_init_atom_start_cs()
3312 eg_store_loop_const(cb, R_03A200_SQ_LOOP_CONST_0 + (128 * 4), 0x01000FFF); in evergreen_init_atom_start_cs()
3318 struct r600_command_buffer *cb = &shader->command_buffer; in evergreen_update_ps_state() local
3337 if (!cb->buf) { in evergreen_update_ps_state()
3338 r600_init_command_buffer(cb, 64); in evergreen_update_ps_state()
3340 cb->num_dw = 0; in evergreen_update_ps_state()
3403 r600_store_context_reg_seq(cb, R_028644_SPI_PS_INPUT_CNTL_0, num); in evergreen_update_ps_state()
3404 r600_store_array(cb, num, spi_ps_input_cntl); in evergreen_update_ps_state()
3490 r600_store_context_reg_seq(cb, R_0286CC_SPI_PS_IN_CONTROL_0, 2); in evergreen_update_ps_state()
3491 r600_store_value(cb, spi_ps_in_control_0); /* R_0286CC_SPI_PS_IN_CONTROL_0 */ in evergreen_update_ps_state()
3492 r600_store_value(cb, spi_ps_in_control_1); /* R_0286D0_SPI_PS_IN_CONTROL_1 */ in evergreen_update_ps_state()
3494 r600_store_context_reg(cb, R_0286E0_SPI_BARYC_CNTL, spi_baryc_cntl); in evergreen_update_ps_state()
3495 r600_store_context_reg(cb, R_0286D8_SPI_INPUT_Z, spi_input_z); in evergreen_update_ps_state()
3496 r600_store_context_reg(cb, R_02884C_SQ_PGM_EXPORTS_PS, exports_ps); in evergreen_update_ps_state()
3498 r600_store_context_reg_seq(cb, R_028840_SQ_PGM_START_PS, 2); in evergreen_update_ps_state()
3499 r600_store_value(cb, shader->bo->gpu_address >> 8); in evergreen_update_ps_state()
3500 r600_store_value(cb, /* R_028844_SQ_PGM_RESOURCES_PS */ in evergreen_update_ps_state()
3517 struct r600_command_buffer *cb = &shader->command_buffer; in evergreen_update_es_state() local
3520 r600_init_command_buffer(cb, 32); in evergreen_update_es_state()
3522 r600_store_context_reg(cb, R_028890_SQ_PGM_RESOURCES_ES, in evergreen_update_es_state()
3526 r600_store_context_reg(cb, R_02888C_SQ_PGM_START_ES, in evergreen_update_es_state()
3534 struct r600_command_buffer *cb = &shader->command_buffer; in evergreen_update_gs_state() local
3544 r600_init_command_buffer(cb, 64); in evergreen_update_gs_state()
3549 r600_store_context_reg(cb, R_028B38_VGT_GS_MAX_VERT_OUT, in evergreen_update_gs_state()
3551 r600_store_context_reg(cb, R_028A6C_VGT_GS_OUT_PRIM_TYPE, in evergreen_update_gs_state()
3555 r600_store_context_reg(cb, R_028B90_VGT_GS_INSTANCE_CNT, in evergreen_update_gs_state()
3559 r600_store_context_reg_seq(cb, R_02891C_SQ_GS_VERT_ITEMSIZE, 4); in evergreen_update_gs_state()
3560 r600_store_value(cb, cp_shader->ring_item_sizes[0] >> 2); in evergreen_update_gs_state()
3561 r600_store_value(cb, cp_shader->ring_item_sizes[1] >> 2); in evergreen_update_gs_state()
3562 r600_store_value(cb, cp_shader->ring_item_sizes[2] >> 2); in evergreen_update_gs_state()
3563 r600_store_value(cb, cp_shader->ring_item_sizes[3] >> 2); in evergreen_update_gs_state()
3565 r600_store_context_reg(cb, R_028900_SQ_ESGS_RING_ITEMSIZE, in evergreen_update_gs_state()
3568 r600_store_context_reg(cb, R_028904_SQ_GSVS_RING_ITEMSIZE, in evergreen_update_gs_state()
3574 r600_store_context_reg_seq(cb, R_02892C_SQ_GSVS_RING_OFFSET_1, 3); in evergreen_update_gs_state()
3575 r600_store_value(cb, gsvs_itemsizes[0]); in evergreen_update_gs_state()
3576 r600_store_value(cb, gsvs_itemsizes[0] + gsvs_itemsizes[1]); in evergreen_update_gs_state()
3577 r600_store_value(cb, gsvs_itemsizes[0] + gsvs_itemsizes[1] + gsvs_itemsizes[2]); in evergreen_update_gs_state()
3580 r600_store_context_reg_seq(cb, R_028A54_GS_PER_ES, 3); in evergreen_update_gs_state()
3581 r600_store_value(cb, 0x80); /* GS_PER_ES */ in evergreen_update_gs_state()
3582 r600_store_value(cb, 0x100); /* ES_PER_GS */ in evergreen_update_gs_state()
3583 r600_store_value(cb, 0x2); /* GS_PER_VS */ in evergreen_update_gs_state()
3585 r600_store_context_reg(cb, R_028878_SQ_PGM_RESOURCES_GS, in evergreen_update_gs_state()
3589 r600_store_context_reg(cb, R_028874_SQ_PGM_START_GS, in evergreen_update_gs_state()
3597 struct r600_command_buffer *cb = &shader->command_buffer; in evergreen_update_vs_state() local
3610 r600_init_command_buffer(cb, 32); in evergreen_update_vs_state()
3612 r600_store_context_reg_seq(cb, R_02861C_SPI_VS_OUT_ID_0, 10); in evergreen_update_vs_state()
3614 r600_store_value(cb, spi_vs_out_id[i]); in evergreen_update_vs_state()
3624 r600_store_context_reg(cb, R_0286C4_SPI_VS_OUT_CONFIG, in evergreen_update_vs_state()
3626 r600_store_context_reg(cb, R_028860_SQ_PGM_RESOURCES_VS, in evergreen_update_vs_state()
3631 r600_store_context_reg(cb, R_028818_PA_CL_VTE_CNTL, in evergreen_update_vs_state()
3634 r600_store_context_reg(cb, R_028818_PA_CL_VTE_CNTL, in evergreen_update_vs_state()
3641 r600_store_context_reg(cb, R_02885C_SQ_PGM_START_VS, in evergreen_update_vs_state()
3657 struct r600_command_buffer *cb = &shader->command_buffer; in evergreen_update_hs_state() local
3660 r600_init_command_buffer(cb, 32); in evergreen_update_hs_state()
3661 r600_store_context_reg(cb, R_0288BC_SQ_PGM_RESOURCES_HS, in evergreen_update_hs_state()
3665 r600_store_context_reg(cb, R_0288B8_SQ_PGM_START_HS, in evergreen_update_hs_state()
3671 struct r600_command_buffer *cb = &shader->command_buffer; in evergreen_update_ls_state() local
3674 r600_init_command_buffer(cb, 32); in evergreen_update_ls_state()
3675 r600_store_context_reg(cb, R_0288D4_SQ_PGM_RESOURCES_LS, in evergreen_update_ls_state()
3679 r600_store_context_reg(cb, R_0288D0_SQ_PGM_START_LS, in evergreen_update_ls_state()
4333 struct pipe_constant_buffer *cb; in evergreen_get_pipe_constant_buffer() local
4336 cb = &state->cb[slot]; in evergreen_get_pipe_constant_buffer()
4338 cbuf->buffer_size = cb->buffer_size; in evergreen_get_pipe_constant_buffer()
4339 pipe_resource_reference(&cbuf->buffer, cb->buffer); in evergreen_get_pipe_constant_buffer()