class TranscoderVariableRateRefreshControl
Defined at line 938 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
TRANS_VRR_CTL (VRR Control Register Transcoder)
This register is not documented for Kaby Lake or Skylake. These display
engines do not support the VRR (Variable Refresh Rate) feature.
Tiger Lake: IHD-OS-TGL-Vol 2c-1.22-Rev2.0 Part 2 pages 1406-1407
Public Members
field_enabled_942
field_vblank_max_shift_ignored_952
field_flip_line_enabled_961
field_RsvdZ_963
field_pipeline_full_line_count_delay_from_frame_start_973
field_RsvdZ_975
field_use_pipeline_full_line_count_delay_984
Public Methods
template <, >
typename SelfType::ValueType enabled ()
If true, VRR (Variable Rate Refresh) is enabled.
Defined at line 942 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
template <, >
SelfType & set_enabled (typename SelfType::ValueType val)
If true, VRR (Variable Rate Refresh) is enabled.
Defined at line 942 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
template <, >
SelfType & set_vblank_max_shift_ignored (typename SelfType::ValueType val)
If true, hardware varies Vblank.
If this field is true, Vblank (the Vertical Blank period) varies between
the minimum set in the TRANS_VRR_VMIN register and the maximum set in the
TRANS_VRR_VMAX register.
If this field is false, the Vblank (Vertical Blank period) in the
TRANS_VBLANK register is used.
Defined at line 952 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
template <, >
typename SelfType::ValueType vblank_max_shift_ignored ()
If true, hardware varies Vblank.
If this field is true, Vblank (the Vertical Blank period) varies between
the minimum set in the TRANS_VRR_VMIN register and the maximum set in the
TRANS_VRR_VMAX register.
If this field is false, the Vblank (Vertical Blank period) in the
TRANS_VBLANK register is used.
Defined at line 952 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
template <, >
typename SelfType::ValueType flip_line_enabled ()
If true, the Flip Line feature is enabled.
Changes to this field take effect at the next vertical blank.
This field must be set to true before `enabled` is true. If this field is
true, `vblank_max_shift_ignored` and `use_pipeline_full_line_count_delay`
must also be true.
Defined at line 961 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
template <, >
SelfType & set_flip_line_enabled (typename SelfType::ValueType val)
If true, the Flip Line feature is enabled.
Changes to this field take effect at the next vertical blank.
This field must be set to true before `enabled` is true. If this field is
true, `vblank_max_shift_ignored` and `use_pipeline_full_line_count_delay`
must also be true.
Defined at line 961 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
template <, >
typename SelfType::ValueType pipeline_full_line_count_delay_from_frame_start ()
Delay from frame start to Pipeline Full Line Count signal generation.
When `use_pipeline_full_line_count_delay` is true, this field indicates the
delay (in number of scanlines) from the start of Vblank (Vertical Blank)
start until the Pipeline Full Line Count signal is triggered. This signal
causes the start of Vactive (Vertical Active).
This field must be set to VRR Vmin - Vblank start - 4.
Defined at line 973 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
template <, >
SelfType & set_pipeline_full_line_count_delay_from_frame_start (typename SelfType::ValueType val)
Delay from frame start to Pipeline Full Line Count signal generation.
When `use_pipeline_full_line_count_delay` is true, this field indicates the
delay (in number of scanlines) from the start of Vblank (Vertical Blank)
start until the Pipeline Full Line Count signal is triggered. This signal
causes the start of Vactive (Vertical Active).
This field must be set to VRR Vmin - Vblank start - 4.
Defined at line 973 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
template <, >
SelfType & set_use_pipeline_full_line_count_delay (typename SelfType::ValueType val)
If true, Vertical Active starts at a programmed delay from frame start.
If this field is false, Vactive (Vertical Active) starts when a
hardware-generated Pipeline Full Line Count signal is triggered.
If this field is true, `use_pipeline_full_line_count_delay` must be
programmed correctly.
Defined at line 984 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
template <, >
typename SelfType::ValueType use_pipeline_full_line_count_delay ()
If true, Vertical Active starts at a programmed delay from frame start.
If this field is false, Vactive (Vertical Active) starts when a
hardware-generated Pipeline Full Line Count signal is triggered.
If this field is true, `use_pipeline_full_line_count_delay` must be
programmed correctly.
Defined at line 984 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h
hwreg::RegisterAddr<TranscoderVariableRateRefreshControl> GetForTigerLakeTranscoder (intel_display::TranscoderId transcoder_id)
Defined at line 986 of file ../../src/graphics/display/drivers/intel-display/registers-transcoder.h