drm/amd/display: Add timing generator count to resource pool.
Use tg count in resource pool for further reference. Signed-off-by: Yongqiang Sun <yongqiang.sun@amd.com> Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> Acked-by: Harry Wentland <harry.wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
05133ac856
commit
3be1406a72
|
@ -849,6 +849,7 @@ static bool construct(
|
|||
*************************************************/
|
||||
pool->base.underlay_pipe_index = NO_UNDERLAY_PIPE;
|
||||
pool->base.pipe_count = res_cap.num_timing_generator;
|
||||
pool->base.timing_generator_count = pool->base.res_cap->num_timing_generator;
|
||||
dc->caps.max_downscale_ratio = 200;
|
||||
dc->caps.i2c_speed_in_khz = 40;
|
||||
dc->caps.max_cursor_size = 128;
|
||||
|
|
|
@ -1152,7 +1152,7 @@ static bool construct(
|
|||
|
||||
pool->base.pipe_count = pool->base.res_cap->num_timing_generator;
|
||||
pool->base.underlay_pipe_index = pool->base.pipe_count;
|
||||
|
||||
pool->base.timing_generator_count = pool->base.res_cap->num_timing_generator;
|
||||
dc->caps.max_downscale_ratio = 150;
|
||||
dc->caps.i2c_speed_in_khz = 100;
|
||||
dc->caps.max_cursor_size = 128;
|
||||
|
|
|
@ -1100,6 +1100,7 @@ static bool construct(
|
|||
*************************************************/
|
||||
pool->base.underlay_pipe_index = NO_UNDERLAY_PIPE;
|
||||
pool->base.pipe_count = pool->base.res_cap->num_timing_generator;
|
||||
pool->base.timing_generator_count = pool->base.res_cap->num_timing_generator;
|
||||
dc->caps.max_downscale_ratio = 200;
|
||||
dc->caps.i2c_speed_in_khz = 100;
|
||||
dc->caps.max_cursor_size = 128;
|
||||
|
|
|
@ -831,6 +831,7 @@ static bool construct(
|
|||
|
||||
/* TODO: Fill more data from GreenlandAsicCapability.cpp */
|
||||
pool->base.pipe_count = res_cap.num_timing_generator;
|
||||
pool->base.timing_generator_count = pool->base.res_cap->num_timing_generator;
|
||||
pool->base.underlay_pipe_index = NO_UNDERLAY_PIPE;
|
||||
|
||||
dc->caps.max_downscale_ratio = 200;
|
||||
|
|
|
@ -790,6 +790,7 @@ static bool dce80_construct(
|
|||
*************************************************/
|
||||
pool->base.underlay_pipe_index = NO_UNDERLAY_PIPE;
|
||||
pool->base.pipe_count = res_cap.num_timing_generator;
|
||||
pool->base.timing_generator_count = res_cap.num_timing_generator;
|
||||
dc->caps.max_downscale_ratio = 200;
|
||||
dc->caps.i2c_speed_in_khz = 40;
|
||||
dc->caps.max_cursor_size = 128;
|
||||
|
@ -955,6 +956,7 @@ static bool dce81_construct(
|
|||
*************************************************/
|
||||
pool->base.underlay_pipe_index = NO_UNDERLAY_PIPE;
|
||||
pool->base.pipe_count = res_cap_81.num_timing_generator;
|
||||
pool->base.timing_generator_count = res_cap_81.num_timing_generator;
|
||||
dc->caps.max_downscale_ratio = 200;
|
||||
dc->caps.i2c_speed_in_khz = 40;
|
||||
dc->caps.max_cursor_size = 128;
|
||||
|
@ -1120,6 +1122,7 @@ static bool dce83_construct(
|
|||
*************************************************/
|
||||
pool->base.underlay_pipe_index = NO_UNDERLAY_PIPE;
|
||||
pool->base.pipe_count = res_cap_83.num_timing_generator;
|
||||
pool->base.timing_generator_count = res_cap_83.num_timing_generator;
|
||||
dc->caps.max_downscale_ratio = 200;
|
||||
dc->caps.i2c_speed_in_khz = 40;
|
||||
dc->caps.max_cursor_size = 128;
|
||||
|
|
|
@ -133,7 +133,7 @@ void dcn10_log_hw_state(struct dc *dc)
|
|||
DTN_INFO("[%d]:\t %xh \t %xh \t %d \t %d \t "
|
||||
"%xh \t %xh \t %xh \t "
|
||||
"%d \t %d \t %d \t %xh \t",
|
||||
i,
|
||||
hubp->inst,
|
||||
s.pixel_format,
|
||||
s.inuse_addr_hi,
|
||||
s.viewport_width,
|
||||
|
@ -155,7 +155,7 @@ void dcn10_log_hw_state(struct dc *dc)
|
|||
DTN_INFO("OTG:\t v_bs \t v_be \t v_ss \t v_se \t vpol \t vmax \t vmin \t "
|
||||
"h_bs \t h_be \t h_ss \t h_se \t hpol \t htot \t vtot \t underflow\n");
|
||||
|
||||
for (i = 0; i < pool->res_cap->num_timing_generator; i++) {
|
||||
for (i = 0; i < pool->timing_generator_count; i++) {
|
||||
struct timing_generator *tg = pool->timing_generators[i];
|
||||
struct dcn_otg_state s = {0};
|
||||
|
||||
|
@ -168,7 +168,7 @@ void dcn10_log_hw_state(struct dc *dc)
|
|||
DTN_INFO("[%d]:\t %d \t %d \t %d \t %d \t "
|
||||
"%d \t %d \t %d \t %d \t %d \t %d \t "
|
||||
"%d \t %d \t %d \t %d \t %d \t ",
|
||||
i,
|
||||
tg->inst,
|
||||
s.v_blank_start,
|
||||
s.v_blank_end,
|
||||
s.v_sync_a_start,
|
||||
|
|
|
@ -1445,6 +1445,7 @@ static bool construct(
|
|||
|
||||
/* valid pipe num */
|
||||
pool->base.pipe_count = j;
|
||||
pool->base.timing_generator_count = j;
|
||||
|
||||
/* within dml lib, it is hard code to 4. If ASIC pipe is fused,
|
||||
* the value may be changed
|
||||
|
|
|
@ -153,6 +153,7 @@ struct resource_pool {
|
|||
unsigned int underlay_pipe_index;
|
||||
unsigned int stream_enc_count;
|
||||
unsigned int ref_clock_inKhz;
|
||||
unsigned int timing_generator_count;
|
||||
|
||||
/*
|
||||
* reserved clock source for DP
|
||||
|
|
Loading…
Reference in New Issue