DF-4985 / null_matrix_proof.log
== amdgpu kmod compiles the dce110 helper: 217:SRCS+= command_table_helper_dce110.c == who selects the dce110 table: sys/dev/drm/amd/display/dc/bios/command_table_helper.c:46: *h = dal_cmd_tbl_helper_dce110_get_table(); sys/dev/drm/amd/display/dc/bios/command_table_helper.c:50: *h = dal_cmd_tbl_helper_dce110_get_table(); sys/dev/drm/amd/display/dc/bios/command_table_helper2.c:47: *h = dal_cmd_tbl_helper_dce110_get_table(); sys/dev/drm/amd/display/dc/bios/command_table_helper2.c:51: *h = dal_cmd_tbl_helper_dce110_get_table(); == NULL members in dce110 table: 198: if (atom_pll_id != NULL) 242: if (atom_engine_id != NULL) 344: .assign_control_parameter = NULL, 345: .clock_source_id_to_ref_clk_src = NULL, 346: .transmitter_bp_to_atom = NULL, == dce80 implements them (contrast): 341: .assign_control_parameter = 342: dal_cmd_table_helper_assign_control_parameter, 343: .clock_source_id_to_ref_clk_src = 344: dal_cmd_table_helper_clock_source_id_to_ref_clk_src, 345: .transmitter_bp_to_atom = dal_cmd_table_helper_transmitter_bp_to_atom, == dce112 implements dc_clock_type_to_atom (contrast): 333:static bool dc_clock_type_to_atom( 401: .dc_clock_type_to_atom = dc_clock_type_to_atom, == unguarded consumer call sites: sys/dev/drm/amd/display/dc/bios/command_table.c:204: bp->cmd_helper->assign_control_parameter(bp->cmd_helper, cntl, ¶ms); sys/dev/drm/amd/display/dc/bios/command_table.c:219: bp->cmd_helper->assign_control_parameter(bp->cmd_helper, cntl, ¶ms); sys/dev/drm/amd/display/dc/bios/command_table.c:507: (uint8_t)bp->cmd_helper->transmitter_bp_to_atom( sys/dev/drm/amd/display/dc/bios/command_table.c:638: (uint8_t)cmd->transmitter_bp_to_atom(cntl->transmitter); sys/dev/drm/amd/display/dc/bios/command_table.c:678: if (!cmd->clock_source_id_to_ref_clk_src(cntl->pll_id, &ref_clk_src_id)) sys/dev/drm/amd/display/dc/bios/command_table.c:764: (uint8_t)(cmd->transmitter_bp_to_atom(cntl->transmitter)); sys/dev/drm/amd/display/dc/bios/command_table.c:2437: !cmd->dc_clock_type_to_atom(bp_params->clock_type, &atom_clock_type)) sys/dev/drm/amd/display/dc/bios/command_table2.c:722: !cmd->dc_clock_type_to_atom(bp_params->clock_type, == transmitter_control revision binding: 43: case 2: 44: bp->cmd_tbl.transmitter_control = transmitter_control_v2; 46: case 3: 47: bp->cmd_tbl.transmitter_control = transmitter_control_v3; 49: case 4: 50: bp->cmd_tbl.transmitter_control = transmitter_control_v4; 52: case 5: 53: bp->cmd_tbl.transmitter_control = transmitter_control_v1_5; 55: case 6: 56: bp->cmd_tbl.transmitter_control = transmitter_control_v1_6; == dccg wiring: only dce112/120/dcn1 call set_dce_clock: 745: .set_dispclk = dce112_set_clock, 752: .set_dispclk = dce112_set_clock, 758: .set_dispclk = dce112_set_clock, 764: .set_dispclk = dce_psr_set_clock, 771: .set_dispclk = dce_set_clock, 315: bp->funcs->set_dce_clock(bp, &dce_clk_params); 334: bp->funcs->set_dce_clock(bp, &dce_clk_params); == ASIC mapping: 67: case FAMILY_CZ: 68: dc_version = DCE_VERSION_11_0; 74: dc_version = DCE_VERSION_10_0; 125: case DCE_VERSION_10_0: 129: case DCE_VERSION_11_0: == no command_table_helper2_dce110 exists: command_table_helper_dce110.c command_table_helper_dce110.h