clock_source
pipe_ctx->clock_source->id,
pipe_ctx->clock_source->id,
pipe_ctx->clock_source->id,
struct clock_source *dp_cs;
pipes[i].clock_source->id);
enum clock_source_id clock_source,
struct clock_source *dp_cs =
if (pipes[i].clock_source != NULL &&
pipes[i].clock_source->id != CLOCK_SOURCE_ID_DP_DTO) {
pipes[i].clock_source = dp_cs;
pipes[i].clock_source->funcs->program_pix_clk(
pipes[i].clock_source,
clock_source);
clock_source);
free_pipe->clock_source = tail_pipe->clock_source;
del_pipe->clock_source);
pipe_ctx->clock_source);
pipe_ctx->clock_source = dc->res_pool->dp_clock_source;
pipe_ctx->clock_source);
struct clock_source *dc_resource_find_first_free_pll(
pipe_ctx->clock_source = pool->dp_clock_source;
pipe_ctx->clock_source = NULL;
pipe_ctx->clock_source = resource_find_used_clk_src_for_sharing(
if (pipe_ctx->clock_source == NULL)
pipe_ctx->clock_source =
if (pipe_ctx->clock_source == NULL)
pipe_ctx->clock_source);
if (pipe_ctx_old->clock_source != pipe_ctx->clock_source
struct clock_source *clock_source)
if (pool->clock_sources[i] == clock_source)
struct clock_source *clock_source)
int i = find_matching_clock_source(pool, clock_source);
if (pool->dp_clock_source == clock_source)
struct clock_source *clock_source)
int i = find_matching_clock_source(pool, clock_source);
if (pool->dp_clock_source == clock_source)
struct clock_source *clock_source)
int i = find_matching_clock_source(pool, clock_source);
if (pool->dp_clock_source == clock_source)
if (pipe_with_clk_src->clock_source == NULL)
struct clock_source *resource_find_used_clk_src_for_sharing(
return res_ctx->pipe_ctx[i].clock_source;
struct clock_source *cs,
struct clock_source *cs,
struct clock_source *clock_source,
struct dce110_clk_src *clk_src = TO_DCE110_CLK_SRC(clock_source);
if (clock_source->id != CLOCK_SOURCE_ID_EXTERNAL &&
clock_source->ctx->dce_version <= DCE_VERSION_11_0)
bp_pc_params.pll_id = clock_source->id;
if (clock_source->id != CLOCK_SOURCE_ID_EXTERNAL
struct clock_source *clock_source,
struct dce110_clk_src *clk_src = TO_DCE110_CLK_SRC(clock_source);
if (IS_FPGA_MAXIMUS_DC(clock_source->ctx->dce_environment)) {
if (clock_source->id != CLOCK_SOURCE_ID_EXTERNAL &&
clock_source->ctx->dce_version <= DCE_VERSION_11_0)
bp_pc_params.pll_id = clock_source->id;
if (clock_source->id != CLOCK_SOURCE_ID_DP_DTO) {
if (clock_source->id != CLOCK_SOURCE_ID_DP_DTO)
struct clock_source *clk_src)
struct clock_source base;
struct clock_source *clk_src,
struct clock_source *clk_src,
cntl.pll_id = clock_source;
enum clock_source_id clock_source)
cntl.pll_id = clock_source;
enum clock_source_id clock_source,
cntl.pll_id = clock_source;
enum clock_source_id clock_source,
cntl.pll_id = clock_source;
enum clock_source_id clock_source)
enum clock_source_id clock_source,
enum clock_source_id clock_source);
enum clock_source_id clock_source);
enum clock_source_id clock_source,
struct clock_source *dce100_clock_source_create(
void dce100_clock_source_destroy(struct clock_source **clk_src)
if (false == pipe_ctx->clock_source->funcs->program_pix_clk(
pipe_ctx->clock_source,
struct clock_source *old_clk = pipe_ctx_old->clock_source;
if (pipe_ctx_old->clock_source != pipe_ctx->clock_source)
pipe_ctx->clock_source, i);
struct clock_source *dce110_clock_source_create(
void dce110_clock_source_destroy(struct clock_source **clk_src)
pipe_ctx->clock_source->funcs->get_pix_clk_dividers(
pipe_ctx->clock_source,
struct clock_source *dce112_clock_source_create(
void dce112_clock_source_destroy(struct clock_source **clk_src)
static struct clock_source *find_matching_pll(
pipe_ctx->clock_source =
pipe_ctx->clock_source = find_matching_pll(
if (pipe_ctx->clock_source == NULL)
pipe_ctx->clock_source);
struct clock_source *dce120_clock_source_create(
void dce120_clock_source_destroy(struct clock_source **clk_src)
struct clock_source *dce80_clock_source_create(
void dce80_clock_source_destroy(struct clock_source **clk_src)
struct clock_source *old_clk = pipe_ctx_old->clock_source;
if (false == pipe_ctx->clock_source->funcs->program_pix_clk(
pipe_ctx->clock_source,
enum clock_source_id clock_source,
cntl.pll_id = clock_source;
enum clock_source_id clock_source)
cntl.pll_id = clock_source;
enum clock_source_id clock_source)
cntl.pll_id = clock_source;
enum clock_source_id clock_source,
enum clock_source_id clock_source);
enum clock_source_id clock_source);
pipe_ctx->clock_source->funcs->get_pix_clk_dividers(
pipe_ctx->clock_source,
struct clock_source *dcn10_clock_source_create(
void dcn10_clock_source_destroy(struct clock_source **clk_src)
struct clock_source *);
bool (*program_pix_clk)(struct clock_source *,
struct clock_source *,
struct clock_source;
struct clock_source *dp_clock_source;
struct clock_source *clock_sources[MAX_CLOCK_SOURCES];
struct clock_source *clock_source;
enum clock_source_id clock_source,
enum clock_source_id clock_source);
enum clock_source_id clock_source);
enum clock_source_id clock_source,
enum clock_source_id clock_source,
struct clock_source *clock_source);
struct clock_source *clock_source);
struct clock_source *clock_source);
struct clock_source *resource_find_used_clk_src_for_sharing(
struct clock_source *dc_resource_find_first_free_pll(
enum clock_source_id clock_source,
enum clock_source_id clock_source) {}
enum clock_source_id clock_source) {}