Skip to content

Comments

HDMI FRL#10

Open
mkopec wants to merge 98 commits intomasterfrom
hdmi_frl
Open

HDMI FRL#10
mkopec wants to merge 98 commits intomasterfrom
hdmi_frl

Conversation

@mkopec
Copy link
Owner

@mkopec mkopec commented Feb 20, 2026

PR to make it easier to review changes

mkopec and others added 30 commits February 20, 2026 04:14
Signed-off-by: Michał Kopeć <michal@nozomi.space>
This commit:
- Instantiates HPO HDMI encoders
- Restores HPO HDMI registers to the register list
- Implements set_hdmistreamclk

Signed-off-by: Michał Kopeć <michal@nozomi.space>
…_hdmistreamclk

Signed-off-by: Michał Kopeć <michal@nozomi.space>
…r.h: drop unused registers

These don't exist on earlier DCN. Drop to make the encoder compatible with all DCN gens.

Signed-off-by: Michał Kopeć <michal@nozomi.space>
…ntiate HPO HDMI

Signed-off-by: Michał Kopeć <michal@nozomi.space>
…DMI stream enc register

Rename

HDMI_STREAM_ENC_CLOCK_RAMP_ADJUSTER_FIFO_STATUS_CONTROL0__FIFO_PIXEL_ENCODING

to

HDMI_STREAM_ENC_CLOCK_RAMP_ADJUSTER_FIFO_STATUS_CONTROL0__FIFO_PIXEL_ENCODING_TYPE

This makes the register name the same as on DCN401, ensuring we can use a common
HPO HDMI encoder implementation on all gens.

Signed-off-by: Michał Kopeć <michal@nozomi.space>
…tantiate HPO HDMI Encoders

Signed-off-by: Michał Kopeć <michal@nozomi.space>
…ntiate HPO HDMI Encoders

Signed-off-by: Michał Kopeć <michal@nozomi.space>
Signed-off-by: Michał Kopeć <michal@nozomi.space>
Signed-off-by: Michał Kopeć <michal@nozomi.space>
Signed-off-by: Michał Kopeć <michal@nozomi.space>
Signed-off-by: Michał Kopeć <michal@nozomi.space>
Signed-off-by: Michał Kopeć <michal@nozomi.space>
…_hdmistreamclk

Signed-off-by: Michał Kopeć <michal@nozomi.space>
… HDMISTREAMCLK define

Signed-off-by: Michał Kopeć <michal@nozomi.space>
…ntiate HPO HDMI encoders

Signed-off-by: Michał Kopeć <michal@nozomi.space>
…tantiate HPO HDMI encoders

Signed-off-by: Michał Kopeć <michal@nozomi.space>
[Why]
With a real client for these caps, there was a need to slightly modify
how they are saved and what info they contain.

[How]
Save FRL info in renamed parsing function + save raw max_rate value.
Eject FRL data into separate struct, reused in dsc_caps.

Signed-off-by: Tomasz Pakuła <tomasz.pakula.oficjalny@gmail.com>
[Why]
Incoming HDMI FRL training will need this info to properly decide on
link training settings.

[How]
Add HDMI FRL data to dc_edid_caps as a separate struct. Copy HDMI FRL
caps to amdgpu's own edid_caps.

Signed-off-by: Tomasz Pakuła <tomasz.pakula.oficjalny@gmail.com>
[Why]
Incoming HDMI DSC over FRL support will need this info to properly
decide on link training settings and further link/compression settings.
Info about DSC support will also be needed to decide which modes can be
supported by DSC.

[How]
Add HDMI DSC data to dc_edid_caps as a separate struct. Use FRL struct
inside not to duplicate efforts. Copy HDMI DSC caps to amdgpu's
own edid_caps.

Signed-off-by: Tomasz Pakuła <tomasz.pakula.oficjalny@gmail.com>
[Why]
Enable FRL training that's based on dat areceived from sink
in it's edid.

[How]
Pass the data from local_sink's edid_caps to dc_link current config and
use it, to perform FRL training.

Signed-off-by: Tomasz Pakuła <tomasz.pakula.oficjalny@gmail.com>
@mkopec mkopec force-pushed the hdmi_frl branch 5 times, most recently from 7f43f5b to 1583c8d Compare February 20, 2026 14:01
…r.c: set audio N and CTS correctly for FRL

Values dumped by running the Windows driver at different FRL rates.
…r.c: fix hdmi rate list

FRL 6 appears twice, once for 3 lanes and once for 4 lanes
…m_encoder.c: set HDMI_AUDIO_INFO_CONT"

This reverts commit cb82364.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants