Skip to content

framebuffer/de: use vblank interrupt #23

Open
@cnuke

Description

@cnuke

The following proof-of-concept commit replaces the timer-based capturing of screen data with using the VBLANK interrupt to trigger the update. It patches the a64_linux kernel to never disable the interrupt and adds a specific lx_emul function (lX_emul_framebuffer_vblank()) that is executed in the interrupt handler. The handler is called every ~26ms.

This was also reproduced with the pc_intel_fb_drv where the interrupt occurred every ~16ms when only one display was used and at varying intervals when multiple displays were connected.

So for less invasive (and properly accounting for mutiple displays) vblank handling we could look at how to profit from the drm_crtc_handle_vblank() call and how to enable the interrupt from the user's side of things.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions