Lines Matching refs:watermarks

170 		struct dcn_watermark_set *watermarks,
180 if (safe_to_lower || watermarks->a.urgent_ns > hubbub2->watermarks.a.urgent_ns) {
181 hubbub2->watermarks.a.urgent_ns = watermarks->a.urgent_ns;
182 prog_wm_value = convert_and_clamp(watermarks->a.urgent_ns,
189 watermarks->a.urgent_ns, prog_wm_value);
190 } else if (watermarks->a.urgent_ns < hubbub2->watermarks.a.urgent_ns)
194 if (safe_to_lower || watermarks->a.frac_urg_bw_flip
195 > hubbub2->watermarks.a.frac_urg_bw_flip) {
196 hubbub2->watermarks.a.frac_urg_bw_flip = watermarks->a.frac_urg_bw_flip;
199 DCHUBBUB_ARB_FRAC_URG_BW_FLIP_A, watermarks->a.frac_urg_bw_flip);
200 } else if (watermarks->a.frac_urg_bw_flip
201 < hubbub2->watermarks.a.frac_urg_bw_flip)
204 if (safe_to_lower || watermarks->a.frac_urg_bw_nom
205 > hubbub2->watermarks.a.frac_urg_bw_nom) {
206 hubbub2->watermarks.a.frac_urg_bw_nom = watermarks->a.frac_urg_bw_nom;
209 DCHUBBUB_ARB_FRAC_URG_BW_NOM_A, watermarks->a.frac_urg_bw_nom);
210 } else if (watermarks->a.frac_urg_bw_nom
211 < hubbub2->watermarks.a.frac_urg_bw_nom)
214 if (safe_to_lower || watermarks->a.urgent_latency_ns > hubbub2->watermarks.a.urgent_latency_ns) {
215 hubbub2->watermarks.a.urgent_latency_ns = watermarks->a.urgent_latency_ns;
216 prog_wm_value = convert_and_clamp(watermarks->a.urgent_latency_ns,
220 } else if (watermarks->a.urgent_latency_ns < hubbub2->watermarks.a.urgent_latency_ns)
224 if (safe_to_lower || watermarks->b.urgent_ns > hubbub2->watermarks.b.urgent_ns) {
225 hubbub2->watermarks.b.urgent_ns = watermarks->b.urgent_ns;
226 prog_wm_value = convert_and_clamp(watermarks->b.urgent_ns,
233 watermarks->b.urgent_ns, prog_wm_value);
234 } else if (watermarks->b.urgent_ns < hubbub2->watermarks.b.urgent_ns)
238 if (safe_to_lower || watermarks->b.frac_urg_bw_flip
239 > hubbub2->watermarks.b.frac_urg_bw_flip) {
240 hubbub2->watermarks.b.frac_urg_bw_flip = watermarks->b.frac_urg_bw_flip;
243 DCHUBBUB_ARB_FRAC_URG_BW_FLIP_B, watermarks->b.frac_urg_bw_flip);
244 } else if (watermarks->b.frac_urg_bw_flip
245 < hubbub2->watermarks.b.frac_urg_bw_flip)
248 if (safe_to_lower || watermarks->b.frac_urg_bw_nom
249 > hubbub2->watermarks.b.frac_urg_bw_nom) {
250 hubbub2->watermarks.b.frac_urg_bw_nom = watermarks->b.frac_urg_bw_nom;
253 DCHUBBUB_ARB_FRAC_URG_BW_NOM_B, watermarks->b.frac_urg_bw_nom);
254 } else if (watermarks->b.frac_urg_bw_nom
255 < hubbub2->watermarks.b.frac_urg_bw_nom)
258 if (safe_to_lower || watermarks->b.urgent_latency_ns > hubbub2->watermarks.b.urgent_latency_ns) {
259 hubbub2->watermarks.b.urgent_latency_ns = watermarks->b.urgent_latency_ns;
260 prog_wm_value = convert_and_clamp(watermarks->b.urgent_latency_ns,
264 } else if (watermarks->b.urgent_latency_ns < hubbub2->watermarks.b.urgent_latency_ns)
268 if (safe_to_lower || watermarks->c.urgent_ns > hubbub2->watermarks.c.urgent_ns) {
269 hubbub2->watermarks.c.urgent_ns = watermarks->c.urgent_ns;
270 prog_wm_value = convert_and_clamp(watermarks->c.urgent_ns,
277 watermarks->c.urgent_ns, prog_wm_value);
278 } else if (watermarks->c.urgent_ns < hubbub2->watermarks.c.urgent_ns)
282 if (safe_to_lower || watermarks->c.frac_urg_bw_flip
283 > hubbub2->watermarks.c.frac_urg_bw_flip) {
284 hubbub2->watermarks.c.frac_urg_bw_flip = watermarks->c.frac_urg_bw_flip;
287 DCHUBBUB_ARB_FRAC_URG_BW_FLIP_C, watermarks->c.frac_urg_bw_flip);
288 } else if (watermarks->c.frac_urg_bw_flip
289 < hubbub2->watermarks.c.frac_urg_bw_flip)
292 if (safe_to_lower || watermarks->c.frac_urg_bw_nom
293 > hubbub2->watermarks.c.frac_urg_bw_nom) {
294 hubbub2->watermarks.c.frac_urg_bw_nom = watermarks->c.frac_urg_bw_nom;
297 DCHUBBUB_ARB_FRAC_URG_BW_NOM_C, watermarks->c.frac_urg_bw_nom);
298 } else if (watermarks->c.frac_urg_bw_nom
299 < hubbub2->watermarks.c.frac_urg_bw_nom)
302 if (safe_to_lower || watermarks->c.urgent_latency_ns > hubbub2->watermarks.c.urgent_latency_ns) {
303 hubbub2->watermarks.c.urgent_latency_ns = watermarks->c.urgent_latency_ns;
304 prog_wm_value = convert_and_clamp(watermarks->c.urgent_latency_ns,
308 } else if (watermarks->c.urgent_latency_ns < hubbub2->watermarks.c.urgent_latency_ns)
312 if (safe_to_lower || watermarks->d.urgent_ns > hubbub2->watermarks.d.urgent_ns) {
313 hubbub2->watermarks.d.urgent_ns = watermarks->d.urgent_ns;
314 prog_wm_value = convert_and_clamp(watermarks->d.urgent_ns,
321 watermarks->d.urgent_ns, prog_wm_value);
322 } else if (watermarks->d.urgent_ns < hubbub2->watermarks.d.urgent_ns)
326 if (safe_to_lower || watermarks->d.frac_urg_bw_flip
327 > hubbub2->watermarks.d.frac_urg_bw_flip) {
328 hubbub2->watermarks.d.frac_urg_bw_flip = watermarks->d.frac_urg_bw_flip;
331 DCHUBBUB_ARB_FRAC_URG_BW_FLIP_D, watermarks->d.frac_urg_bw_flip);
332 } else if (watermarks->d.frac_urg_bw_flip
333 < hubbub2->watermarks.d.frac_urg_bw_flip)
336 if (safe_to_lower || watermarks->d.frac_urg_bw_nom
337 > hubbub2->watermarks.d.frac_urg_bw_nom) {
338 hubbub2->watermarks.d.frac_urg_bw_nom = watermarks->d.frac_urg_bw_nom;
341 DCHUBBUB_ARB_FRAC_URG_BW_NOM_D, watermarks->d.frac_urg_bw_nom);
342 } else if (watermarks->d.frac_urg_bw_nom
343 < hubbub2->watermarks.d.frac_urg_bw_nom)
346 if (safe_to_lower || watermarks->d.urgent_latency_ns > hubbub2->watermarks.d.urgent_latency_ns) {
347 hubbub2->watermarks.d.urgent_latency_ns = watermarks->d.urgent_latency_ns;
348 prog_wm_value = convert_and_clamp(watermarks->d.urgent_latency_ns,
352 } else if (watermarks->d.urgent_latency_ns < hubbub2->watermarks.d.urgent_latency_ns)
360 struct dcn_watermark_set *watermarks,
369 if (safe_to_lower || watermarks->a.cstate_pstate.cstate_enter_plus_exit_ns
370 > hubbub2->watermarks.a.cstate_pstate.cstate_enter_plus_exit_ns) {
371 hubbub2->watermarks.a.cstate_pstate.cstate_enter_plus_exit_ns =
372 watermarks->a.cstate_pstate.cstate_enter_plus_exit_ns;
374 watermarks->a.cstate_pstate.cstate_enter_plus_exit_ns,
380 watermarks->a.cstate_pstate.cstate_enter_plus_exit_ns, prog_wm_value);
381 } else if (watermarks->a.cstate_pstate.cstate_enter_plus_exit_ns
382 < hubbub2->watermarks.a.cstate_pstate.cstate_enter_plus_exit_ns)
385 if (safe_to_lower || watermarks->a.cstate_pstate.cstate_exit_ns
386 > hubbub2->watermarks.a.cstate_pstate.cstate_exit_ns) {
387 hubbub2->watermarks.a.cstate_pstate.cstate_exit_ns =
388 watermarks->a.cstate_pstate.cstate_exit_ns;
390 watermarks->a.cstate_pstate.cstate_exit_ns,
396 watermarks->a.cstate_pstate.cstate_exit_ns, prog_wm_value);
397 } else if (watermarks->a.cstate_pstate.cstate_exit_ns
398 < hubbub2->watermarks.a.cstate_pstate.cstate_exit_ns)
402 if (safe_to_lower || watermarks->b.cstate_pstate.cstate_enter_plus_exit_ns
403 > hubbub2->watermarks.b.cstate_pstate.cstate_enter_plus_exit_ns) {
404 hubbub2->watermarks.b.cstate_pstate.cstate_enter_plus_exit_ns =
405 watermarks->b.cstate_pstate.cstate_enter_plus_exit_ns;
407 watermarks->b.cstate_pstate.cstate_enter_plus_exit_ns,
413 watermarks->b.cstate_pstate.cstate_enter_plus_exit_ns, prog_wm_value);
414 } else if (watermarks->b.cstate_pstate.cstate_enter_plus_exit_ns
415 < hubbub2->watermarks.b.cstate_pstate.cstate_enter_plus_exit_ns)
418 if (safe_to_lower || watermarks->b.cstate_pstate.cstate_exit_ns
419 > hubbub2->watermarks.b.cstate_pstate.cstate_exit_ns) {
420 hubbub2->watermarks.b.cstate_pstate.cstate_exit_ns =
421 watermarks->b.cstate_pstate.cstate_exit_ns;
423 watermarks->b.cstate_pstate.cstate_exit_ns,
429 watermarks->b.cstate_pstate.cstate_exit_ns, prog_wm_value);
430 } else if (watermarks->b.cstate_pstate.cstate_exit_ns
431 < hubbub2->watermarks.b.cstate_pstate.cstate_exit_ns)
435 if (safe_to_lower || watermarks->c.cstate_pstate.cstate_enter_plus_exit_ns
436 > hubbub2->watermarks.c.cstate_pstate.cstate_enter_plus_exit_ns) {
437 hubbub2->watermarks.c.cstate_pstate.cstate_enter_plus_exit_ns =
438 watermarks->c.cstate_pstate.cstate_enter_plus_exit_ns;
440 watermarks->c.cstate_pstate.cstate_enter_plus_exit_ns,
446 watermarks->c.cstate_pstate.cstate_enter_plus_exit_ns, prog_wm_value);
447 } else if (watermarks->c.cstate_pstate.cstate_enter_plus_exit_ns
448 < hubbub2->watermarks.c.cstate_pstate.cstate_enter_plus_exit_ns)
451 if (safe_to_lower || watermarks->c.cstate_pstate.cstate_exit_ns
452 > hubbub2->watermarks.c.cstate_pstate.cstate_exit_ns) {
453 hubbub2->watermarks.c.cstate_pstate.cstate_exit_ns =
454 watermarks->c.cstate_pstate.cstate_exit_ns;
456 watermarks->c.cstate_pstate.cstate_exit_ns,
462 watermarks->c.cstate_pstate.cstate_exit_ns, prog_wm_value);
463 } else if (watermarks->c.cstate_pstate.cstate_exit_ns
464 < hubbub2->watermarks.c.cstate_pstate.cstate_exit_ns)
468 if (safe_to_lower || watermarks->d.cstate_pstate.cstate_enter_plus_exit_ns
469 > hubbub2->watermarks.d.cstate_pstate.cstate_enter_plus_exit_ns) {
470 hubbub2->watermarks.d.cstate_pstate.cstate_enter_plus_exit_ns =
471 watermarks->d.cstate_pstate.cstate_enter_plus_exit_ns;
473 watermarks->d.cstate_pstate.cstate_enter_plus_exit_ns,
479 watermarks->d.cstate_pstate.cstate_enter_plus_exit_ns, prog_wm_value);
480 } else if (watermarks->d.cstate_pstate.cstate_enter_plus_exit_ns
481 < hubbub2->watermarks.d.cstate_pstate.cstate_enter_plus_exit_ns)
484 if (safe_to_lower || watermarks->d.cstate_pstate.cstate_exit_ns
485 > hubbub2->watermarks.d.cstate_pstate.cstate_exit_ns) {
486 hubbub2->watermarks.d.cstate_pstate.cstate_exit_ns =
487 watermarks->d.cstate_pstate.cstate_exit_ns;
489 watermarks->d.cstate_pstate.cstate_exit_ns,
495 watermarks->d.cstate_pstate.cstate_exit_ns, prog_wm_value);
496 } else if (watermarks->d.cstate_pstate.cstate_exit_ns
497 < hubbub2->watermarks.d.cstate_pstate.cstate_exit_ns)
506 struct dcn_watermark_set *watermarks,
517 if (safe_to_lower || watermarks->a.cstate_pstate.pstate_change_ns
518 > hubbub2->watermarks.a.cstate_pstate.pstate_change_ns) {
519 hubbub2->watermarks.a.cstate_pstate.pstate_change_ns =
520 watermarks->a.cstate_pstate.pstate_change_ns;
522 watermarks->a.cstate_pstate.pstate_change_ns,
528 watermarks->a.cstate_pstate.pstate_change_ns, prog_wm_value);
529 } else if (watermarks->a.cstate_pstate.pstate_change_ns
530 < hubbub2->watermarks.a.cstate_pstate.pstate_change_ns)
534 if (safe_to_lower || watermarks->b.cstate_pstate.pstate_change_ns
535 > hubbub2->watermarks.b.cstate_pstate.pstate_change_ns) {
536 hubbub2->watermarks.b.cstate_pstate.pstate_change_ns =
537 watermarks->b.cstate_pstate.pstate_change_ns;
539 watermarks->b.cstate_pstate.pstate_change_ns,
545 watermarks->b.cstate_pstate.pstate_change_ns, prog_wm_value);
546 } else if (watermarks->b.cstate_pstate.pstate_change_ns
547 < hubbub2->watermarks.b.cstate_pstate.pstate_change_ns)
551 if (safe_to_lower || watermarks->c.cstate_pstate.pstate_change_ns
552 > hubbub2->watermarks.c.cstate_pstate.pstate_change_ns) {
553 hubbub2->watermarks.c.cstate_pstate.pstate_change_ns =
554 watermarks->c.cstate_pstate.pstate_change_ns;
556 watermarks->c.cstate_pstate.pstate_change_ns,
562 watermarks->c.cstate_pstate.pstate_change_ns, prog_wm_value);
563 } else if (watermarks->c.cstate_pstate.pstate_change_ns
564 < hubbub2->watermarks.c.cstate_pstate.pstate_change_ns)
568 if (safe_to_lower || watermarks->d.cstate_pstate.pstate_change_ns
569 > hubbub2->watermarks.d.cstate_pstate.pstate_change_ns) {
570 hubbub2->watermarks.d.cstate_pstate.pstate_change_ns =
571 watermarks->d.cstate_pstate.pstate_change_ns;
573 watermarks->d.cstate_pstate.pstate_change_ns,
579 watermarks->d.cstate_pstate.pstate_change_ns, prog_wm_value);
580 } else if (watermarks->d.cstate_pstate.pstate_change_ns
581 < hubbub2->watermarks.d.cstate_pstate.pstate_change_ns)
586 if (safe_to_lower || watermarks->a.cstate_pstate.fclk_pstate_change_ns
587 > hubbub2->watermarks.a.cstate_pstate.fclk_pstate_change_ns) {
588 hubbub2->watermarks.a.cstate_pstate.fclk_pstate_change_ns =
589 watermarks->a.cstate_pstate.fclk_pstate_change_ns;
591 watermarks->a.cstate_pstate.fclk_pstate_change_ns,
597 watermarks->a.cstate_pstate.fclk_pstate_change_ns, prog_wm_value);
598 } else if (watermarks->a.cstate_pstate.fclk_pstate_change_ns
599 < hubbub2->watermarks.a.cstate_pstate.fclk_pstate_change_ns)
603 if (safe_to_lower || watermarks->b.cstate_pstate.fclk_pstate_change_ns
604 > hubbub2->watermarks.b.cstate_pstate.fclk_pstate_change_ns) {
605 hubbub2->watermarks.b.cstate_pstate.fclk_pstate_change_ns =
606 watermarks->b.cstate_pstate.fclk_pstate_change_ns;
608 watermarks->b.cstate_pstate.fclk_pstate_change_ns,
614 watermarks->b.cstate_pstate.fclk_pstate_change_ns, prog_wm_value);
615 } else if (watermarks->b.cstate_pstate.fclk_pstate_change_ns
616 < hubbub2->watermarks.b.cstate_pstate.fclk_pstate_change_ns)
620 if (safe_to_lower || watermarks->c.cstate_pstate.fclk_pstate_change_ns
621 > hubbub2->watermarks.c.cstate_pstate.fclk_pstate_change_ns) {
622 hubbub2->watermarks.c.cstate_pstate.fclk_pstate_change_ns =
623 watermarks->c.cstate_pstate.fclk_pstate_change_ns;
625 watermarks->c.cstate_pstate.fclk_pstate_change_ns,
631 watermarks->c.cstate_pstate.fclk_pstate_change_ns, prog_wm_value);
632 } else if (watermarks->c.cstate_pstate.fclk_pstate_change_ns
633 < hubbub2->watermarks.c.cstate_pstate.fclk_pstate_change_ns)
637 if (safe_to_lower || watermarks->d.cstate_pstate.fclk_pstate_change_ns
638 > hubbub2->watermarks.d.cstate_pstate.fclk_pstate_change_ns) {
639 hubbub2->watermarks.d.cstate_pstate.fclk_pstate_change_ns =
640 watermarks->d.cstate_pstate.fclk_pstate_change_ns;
642 watermarks->d.cstate_pstate.fclk_pstate_change_ns,
648 watermarks->d.cstate_pstate.fclk_pstate_change_ns, prog_wm_value);
649 } else if (watermarks->d.cstate_pstate.fclk_pstate_change_ns
650 < hubbub2->watermarks.d.cstate_pstate.fclk_pstate_change_ns)
659 struct dcn_watermark_set *watermarks,
669 if (safe_to_lower || watermarks->a.usr_retraining_ns
670 > hubbub2->watermarks.a.usr_retraining_ns) {
671 hubbub2->watermarks.a.usr_retraining_ns = watermarks->a.usr_retraining_ns;
673 watermarks->a.usr_retraining_ns,
679 watermarks->a.usr_retraining_ns, prog_wm_value);
680 } else if (watermarks->a.usr_retraining_ns
681 < hubbub2->watermarks.a.usr_retraining_ns)
685 if (safe_to_lower || watermarks->b.usr_retraining_ns
686 > hubbub2->watermarks.b.usr_retraining_ns) {
687 hubbub2->watermarks.b.usr_retraining_ns = watermarks->b.usr_retraining_ns;
689 watermarks->b.usr_retraining_ns,
695 watermarks->b.usr_retraining_ns, prog_wm_value);
696 } else if (watermarks->b.usr_retraining_ns
697 < hubbub2->watermarks.b.usr_retraining_ns)
701 if (safe_to_lower || watermarks->c.usr_retraining_ns
702 > hubbub2->watermarks.c.usr_retraining_ns) {
703 hubbub2->watermarks.c.usr_retraining_ns =
704 watermarks->c.usr_retraining_ns;
706 watermarks->c.usr_retraining_ns,
712 watermarks->c.usr_retraining_ns, prog_wm_value);
713 } else if (watermarks->c.usr_retraining_ns
714 < hubbub2->watermarks.c.usr_retraining_ns)
718 if (safe_to_lower || watermarks->d.usr_retraining_ns
719 > hubbub2->watermarks.d.usr_retraining_ns) {
720 hubbub2->watermarks.d.usr_retraining_ns =
721 watermarks->d.usr_retraining_ns;
723 watermarks->d.usr_retraining_ns,
729 watermarks->d.usr_retraining_ns, prog_wm_value);
730 } else if (watermarks->d.usr_retraining_ns
731 < hubbub2->watermarks.d.usr_retraining_ns)
753 struct dcn_watermark_set *watermarks,
759 if (hubbub32_program_urgent_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower))
762 if (hubbub32_program_stutter_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower))
765 if (hubbub32_program_pstate_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower))
768 if (hubbub32_program_usr_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower))
941 uint32_t prog_wm_value = convert_and_clamp(hubbub2->watermarks.a.urgent_ns,