pll_settings
&otg_master->pll_settings);
bp_pc_params.target_pixel_clock_100hz = pll_settings->actual_pix_clk_100hz;
pll_settings->use_external_clk;
!pll_settings->use_external_clk;
struct pll_settings *pll_settings)
if (pll_settings->actual_pix_clk_100hz > 6000000UL)
bp_pc_params.target_pixel_clock_100hz = pll_settings->actual_pix_clk_100hz;
pll_settings->use_external_clk;
!pll_settings->use_external_clk;
struct pll_settings *pll_settings)
dce112_program_pix_clk(clock_source, pix_clk_params, encoding, pll_settings);
struct pll_settings *pll_settings)
REG_WRITE(PHASE[inst], pll_settings->actual_pix_clk_100hz * 100);
dce112_program_pix_clk(clock_source, pix_clk_params, encoding, pll_settings);
struct pll_settings *pll_settings)
if (pix_clk_params == NULL || pll_settings == NULL
memset(pll_settings, 0, sizeof(*pll_settings));
pll_settings->actual_pix_clk_100hz = (unsigned int) actual_pix_clk_100Hz;
pll_settings->adjusted_pix_clk_100hz = (unsigned int) actual_pix_clk_100Hz;
pll_settings->calculated_pix_clk_100hz = (unsigned int) actual_pix_clk_100Hz;
struct pll_settings *pll_settings,
pll_settings->adjusted_pix_clk_100hz,
pll_settings->adjusted_pix_clk_100hz)
pll_settings->adjusted_pix_clk_100hz
: pll_settings->adjusted_pix_clk_100hz -
pll_settings->reference_freq = calc_pll_cs->ref_freq_khz;
pll_settings->reference_divider = ref_divider;
pll_settings->feedback_divider = feedback_divider;
pll_settings->fract_feedback_divider = fract_feedback_divider;
pll_settings->pix_clk_post_divider = post_divider;
pll_settings->calculated_pix_clk_100hz =
pll_settings->vco_freq =
struct pll_settings *pll_settings,
tolerance = (pll_settings->adjusted_pix_clk_100hz * err_tolerance) /
pll_settings,
struct pll_settings *pll_settings)
if (pll_settings->adjusted_pix_clk_100hz == 0) {
if (pll_settings->pix_clk_post_divider) {
min_post_divider = pll_settings->pix_clk_post_divider;
max_post_divider = pll_settings->pix_clk_post_divider;
if (min_post_divider * pll_settings->adjusted_pix_clk_100hz <
pll_settings->adjusted_pix_clk_100hz;
pll_settings->adjusted_pix_clk_100hz) <
if (max_post_divider * pll_settings->adjusted_pix_clk_100hz
pll_settings->adjusted_pix_clk_100hz;
if (pll_settings->reference_divider) {
min_ref_divider = pll_settings->reference_divider;
max_ref_divider = pll_settings->reference_divider;
pll_settings,
struct pll_settings *pll_settings)
pll_settings->actual_pix_clk_100hz = actual_pix_clk_100hz;
pll_settings->adjusted_pix_clk_100hz =
pll_settings->reference_divider =
pll_settings->pix_clk_post_divider =
struct pll_settings *pll_settings,
pll_settings->use_external_clk = (field > 1);
pll_settings->adjusted_pix_clk_100hz / 10);
pll_settings->ss_percentage = ss_data->percentage;
if (!pll_adjust_pix_clk(clk_src, pix_clk_params, pll_settings)) {
pll_settings->actual_pix_clk_100hz =
pll_settings->adjusted_pix_clk_100hz =
pll_settings->adjusted_pix_clk_100hz = 1000000;
pll_settings);
pll_settings);
struct pll_settings *pll_settings,
pll_settings->actual_pix_clk_100hz = actual_pixel_clock_100hz;
pll_settings->adjusted_pix_clk_100hz = actual_pixel_clock_100hz;
pll_settings->calculated_pix_clk_100hz = pix_clk_params->requested_pix_clk_100hz;
struct pll_settings *pll_settings)
if (pix_clk_params == NULL || pll_settings == NULL
memset(pll_settings, 0, sizeof(*pll_settings));
pll_settings->adjusted_pix_clk_100hz = clk_src->ext_clk_khz * 10;
pll_settings->calculated_pix_clk_100hz = clk_src->ext_clk_khz * 10;
pll_settings->actual_pix_clk_100hz =
pll_settings, pix_clk_params);
struct pll_settings *pll_settings)
if (pix_clk_params == NULL || pll_settings == NULL
memset(pll_settings, 0, sizeof(*pll_settings));
pll_settings->adjusted_pix_clk_100hz = clk_src->ext_clk_khz * 10;
pll_settings->calculated_pix_clk_100hz = clk_src->ext_clk_khz * 10;
pll_settings->actual_pix_clk_100hz =
pll_settings, pix_clk_params);
const struct pll_settings *pll_settings,
if (pll_settings == NULL)
pll_settings->fract_feedback_divider, 1000000);
fb_div = dc_fixpt_add_int(fb_div, pll_settings->feedback_divider);
pll_settings->reference_freq * (uint64_t)1000,
pll_settings->reference_divider * (uint64_t)ss_data->modulation_freq_hz);
enum signal_type signal, struct pll_settings *pll_settings)
pll_settings->calculated_pix_clk_100hz / 10);
if (ss_data != NULL && pll_settings->ss_percentage != 0) {
if (calculate_ss(pll_settings, ss_data, &d_s_data)) {
struct pll_settings *pll_settings)
bp_pc_params.target_pixel_clock_100hz = pll_settings->actual_pix_clk_100hz;
bp_pc_params.reference_divider = pll_settings->reference_divider;
bp_pc_params.feedback_divider = pll_settings->feedback_divider;
pll_settings->fract_feedback_divider;
pll_settings->pix_clk_post_divider;
pll_settings->use_external_clk;
pll_settings))
struct pll_settings *pll_settings)
bp_pc_params.target_pixel_clock_100hz = pll_settings->actual_pix_clk_100hz;
pll_settings->use_external_clk;
!pll_settings->use_external_clk;
struct pll_settings *pll_settings)
REG_WRITE(PHASE[inst], pll_settings->actual_pix_clk_100hz * 100);
pipe_ctx->pll_settings.ss_percentage;
&pipe_ctx->pll_settings)) {
&pipes[i].pll_settings);
&pipe_ctx->pll_settings)) {
&pipe_ctx->pll_settings)) {
&pipe_ctx->pll_settings);
&pipe_ctx->pll_settings);
&pipe_ctx->pll_settings);
&pipe_ctx->pll_settings);
&pipe_ctx->pll_settings)) {
struct pll_settings *);
struct pll_settings *);
struct pll_settings pll_settings;
&pipes[i]->pll_settings);
&pipe_ctx->pll_settings);
&pipe_ctx->pll_settings);
&pipe_ctx->pll_settings);
&pipe_ctx->pll_settings);