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