backends/drm: set the scaling mode to none

Setting it to "Full Aspect" causes some problems with amdgpu, breaking switching
the refresh rate between modes

BUG: 468235
This commit is contained in:
Xaver Hugl 2023-04-08 23:47:42 +02:00
parent 565356e7e3
commit 6f722954a0
2 changed files with 4 additions and 4 deletions

View file

@ -264,8 +264,8 @@ void DrmPipeline::prepareAtomicModeset(DrmAtomicCommit *commit)
if (const auto hdr = m_connector->getProp(DrmConnector::PropertyIndex::HdrMetadata)) {
commit->addProperty(hdr, 0);
}
if (const auto scaling = m_connector->getProp(DrmConnector::PropertyIndex::ScalingMode); scaling && scaling->hasEnum(DrmConnector::ScalingMode::Full_Aspect)) {
commit->addEnum(scaling, DrmConnector::ScalingMode::Full_Aspect);
if (const auto scaling = m_connector->getProp(DrmConnector::PropertyIndex::ScalingMode); scaling && scaling->hasEnum(DrmConnector::ScalingMode::None)) {
commit->addEnum(scaling, DrmConnector::ScalingMode::None);
}
commit->addProperty(m_pending.crtc->getProp(DrmCrtc::PropertyIndex::Active), 1);

View file

@ -112,8 +112,8 @@ DrmPipeline::Error DrmPipeline::applyPendingChangesLegacy()
m_connector->getProp(DrmConnector::PropertyIndex::Underscan_vborder)->setPropertyLegacy(m_pending.overscan);
m_connector->getProp(DrmConnector::PropertyIndex::Underscan_hborder)->setPropertyLegacy(hborder);
}
if (const auto scaling = m_connector->getProp(DrmConnector::PropertyIndex::ScalingMode); scaling && scaling->hasEnum(DrmConnector::ScalingMode::Full_Aspect)) {
scaling->setEnumLegacy(DrmConnector::ScalingMode::Full_Aspect);
if (const auto scaling = m_connector->getProp(DrmConnector::PropertyIndex::ScalingMode); scaling && scaling->hasEnum(DrmConnector::ScalingMode::None)) {
scaling->setEnumLegacy(DrmConnector::ScalingMode::None);
}
if (m_pending.crtc != m_current.crtc || m_pending.mode != m_current.mode) {
Error err = legacyModeset();