From: Takashi Iwai <tiwai@suse.de>
Subject: Fix broken VT1 output with mgadrmfb
Patch-mainline: Never
References: bnc#806990

VT1 (bootsplash screen) output becomes broken when mgag200 KMS driver
is loaded since bootsplash code assumes that the fb memory is coherent
while MGA fb memory isn't.  Enable the workaround to force the sync for
mgadrmfb as well as xen fb.

Updates: also ast and cirrus KMS require the same workaround.

Signed-off-by: Takashi Iwai <tiwai@suse.de>

---
 drivers/video/bootsplash/bootsplash.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

--- a/drivers/video/bootsplash/bootsplash.c
+++ b/drivers/video/bootsplash/bootsplash.c
@@ -1395,7 +1395,10 @@ int splash_prepare(struct vc_data *vc, s
 		 * fb area; maybe other FBs would need similar hack, but
 		 * so far I don't care.
 		 */
-		if (!strcmp(info->fix.id, "xen")) {
+		if (!strcmp(info->fix.id, "xen") ||
+		    !strcmp(info->fix.id, "mgadrmfb") ||
+		    !strcmp(info->fix.id, "astdrmfb") ||
+		    !strcmp(info->fix.id, "cirrusdrmfb")) {
 			info->splash_data->need_sync = 1;
 			/* sync the whole splash once */
 			splash_sync_region(info, 0, 0,
