Changeset View
Changeset View
Standalone View
Standalone View
plugins/platforms/drm/drm_output.cpp
Show First 20 Lines • Show All 1031 Lines • ▼ Show 20 Line(s) | 1001 | #endif | |||
---|---|---|---|---|---|
1032 | 1032 | | |||
1033 | drmModeAtomicFree(req); | 1033 | drmModeAtomicFree(req); | ||
1034 | return true; | 1034 | return true; | ||
1035 | } | 1035 | } | ||
1036 | 1036 | | |||
1037 | bool DrmOutput::atomicReqModesetPopulate(drmModeAtomicReq *req, bool enable) | 1037 | bool DrmOutput::atomicReqModesetPopulate(drmModeAtomicReq *req, bool enable) | ||
1038 | { | 1038 | { | ||
1039 | if (enable) { | 1039 | if (enable) { | ||
1040 | const QSize mSize = modeSize(); | ||||
1041 | const QSize sourceSize = hardwareTransforms() ? pixelSize() : mSize; | ||||
1042 | | ||||
1040 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::SrcX), 0); | 1043 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::SrcX), 0); | ||
1041 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::SrcY), 0); | 1044 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::SrcY), 0); | ||
1042 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::SrcW), m_mode.hdisplay << 16); | 1045 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::SrcW), sourceSize.width() << 16); | ||
1043 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::SrcH), m_mode.vdisplay << 16); | 1046 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::SrcH), sourceSize.height() << 16); | ||
1044 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::CrtcW), m_mode.hdisplay); | 1047 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::CrtcW), mSize.width()); | ||
1045 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::CrtcH), m_mode.vdisplay); | 1048 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::CrtcH), mSize.height()); | ||
1046 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::CrtcId), m_crtc->id()); | 1049 | m_primaryPlane->setValue(int(DrmPlane::PropertyIndex::CrtcId), m_crtc->id()); | ||
1047 | } else { | 1050 | } else { | ||
1048 | if (m_backend->deleteBufferAfterPageFlip()) { | 1051 | if (m_backend->deleteBufferAfterPageFlip()) { | ||
1049 | delete m_primaryPlane->current(); | 1052 | delete m_primaryPlane->current(); | ||
1050 | delete m_primaryPlane->next(); | 1053 | delete m_primaryPlane->next(); | ||
1051 | } | 1054 | } | ||
1052 | m_primaryPlane->setCurrent(nullptr); | 1055 | m_primaryPlane->setCurrent(nullptr); | ||
1053 | m_primaryPlane->setNext(nullptr); | 1056 | m_primaryPlane->setNext(nullptr); | ||
▲ Show 20 Lines • Show All 83 Lines • Show Last 20 Lines |