forked from genodelabs/genode-allwinner
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
POC framebuffer/de: use vblank interrupt
Issue genodelabs#23.
- Loading branch information
Showing
4 changed files
with
49 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
c552684c04213913e5a85fb40ed3b9220eb26d36 | ||
e0aa081d0d5397b038c4be565bf879f5615d6fd1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
--- src/linux/drivers/gpu/drm/drm_vblank.c | ||
+++ src/linux/drivers/gpu/drm/drm_vblank.c | ||
@@ -159,7 +159,7 @@ drm_get_last_vbltimestamp(struct drm_device *dev, unsigned int pipe, | ||
|
||
static unsigned int drm_timestamp_precision = 20; /* Default to 20 usecs. */ | ||
|
||
-static int drm_vblank_offdelay = 5000; /* Default to 5000 msecs. */ | ||
+static int drm_vblank_offdelay = 0000; /* Default to 5000 msecs. */ | ||
|
||
module_param_named(vblankoffdelay, drm_vblank_offdelay, int, 0600); | ||
module_param_named(timestamp_precision_usec, drm_timestamp_precision, int, 0600); | ||
--- src/linux/drivers/gpu/drm/sun4i/sun4i_tcon.c | ||
+++ src/linux/drivers/gpu/drm/sun4i/sun4i_tcon.c | ||
@@ -791,6 +791,8 @@ static void sun4i_tcon_finish_page_flip(struct drm_device *dev, | ||
spin_unlock_irqrestore(&dev->event_lock, flags); | ||
} | ||
|
||
+extern void lx_emul_framebuffer_vblank(void); | ||
+ | ||
static irqreturn_t sun4i_tcon_handler(int irq, void *private) | ||
{ | ||
struct sun4i_tcon *tcon = private; | ||
@@ -807,6 +809,7 @@ static irqreturn_t sun4i_tcon_handler(int irq, void *private) | ||
return IRQ_NONE; | ||
|
||
drm_crtc_handle_vblank(&scrtc->crtc); | ||
+ lx_emul_framebuffer_vblank(); | ||
sun4i_tcon_finish_page_flip(drm, scrtc); | ||
|
||
/* Acknowledge the interrupt */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters