英特尔J1900是否具有vsync?

时间:2018-06-26 03:24:28

标签: intel gpu qt

我试图在Intel j1900 cpu(高清图形gen7)上使用eglfs运行Qt5。在运行应用程序i并收到错误消息时

Could not queue DRM page flip on screen DP1 (Invalid argument)

查看我在第294行看到的eglf的来源

FrameBuffer *fb = framebufferForBufferObject(m_gbm_bo_next);
ensureModeSet(fb->fb);

QKmsOutput &op(output());
const int fd = device()->fd();
m_flipPending = true;
int ret = drmModePageFlip(fd,
                          op.crtc_id,
                          fb->fb,
                          DRM_MODE_PAGE_FLIP_EVENT,
                          this);
if (ret) {
    qErrnoWarning("Could not queue DRM page flip on screen %s", qPrintable(name()));
    m_flipPending = false;
    gbm_surface_release_buffer(m_gbm_surface, m_gbm_bo_next);
    m_gbm_bo_next = nullptr;
    return;
}

for (CloneDestination &d : m_cloneDests) {
    if (d.screen != this) {
        d.screen->ensureModeSet(fb->fb);
        d.cloneFlipPending = true;
        int ret = drmModePageFlip(fd,
                                  d.screen->output().crtc_id,
                                  fb->fb,
                                  DRM_MODE_PAGE_FLIP_EVENT,
                                  d.screen);
        if (ret) {
            qErrnoWarning("Could not queue DRM page flip for clone screen %s", qPrintable(name()));
            d.cloneFlipPending = false;
        }
    }
}

http://code.qt.io/cgit/qt/qtbase.git/tree/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.cpp?h=5.11#n294

我似乎无法找到一种使eglfs不使用vsync的方法,并且使用下面的env变量不会有所作为

QT_QPA_EGLFS_SWAPINTERVAL
QT_QPA_EGLFS_FORCEVSYNC
FB_MULTI_BUFFER
QT_QPA_EGLFS_FORCE888

0 个答案:

没有答案