All of lore.kernel.org
 help / color / mirror / Atom feed
From: Max Staudt <mstaudt@suse.de>
To: b.zolnierkie@samsung.com, linux-fbdev@vger.kernel.org
Cc: mstaudt@suse.de, dri-devel@lists.freedesktop.org,
	linux-kernel@vger.kernel.org, tiwai@suse.com, oneukum@suse.com,
	msrb@suse.com, sndirsch@suse.com, michal@markovi.net,
	philm@manjaro.org, bernhard.rosenkranzer@linaro.org
Subject: [RFC PATCH v2 03/13] bootsplash: Flush framebuffer after drawing
Date: Wed, 13 Dec 2017 20:47:45 +0100	[thread overview]
Message-ID: <20171213194755.3409-4-mstaudt@suse.de> (raw)
In-Reply-To: <20171213194755.3409-1-mstaudt@suse.de>

Framebuffers with deferred I/O need to be flushed to the screen
explicitly, since we use neither the mmap nor the file I/O abstractions
that handle this for userspace FB clients.

Example: xenfb

Some framebuffer drivers implement lazy access to the screen without
actually exposing a fbdefio interface - we also match some known ones,
currently:
 - ast
 - cirrus
 - mgag200

Signed-off-by: Max Staudt <mstaudt@suse.de>
Reviewed-by: Oliver Neukum <oneukum@suse.com>
---
 drivers/video/fbdev/core/bootsplash.c          |  2 ++
 drivers/video/fbdev/core/bootsplash_internal.h |  1 +
 drivers/video/fbdev/core/bootsplash_render.c   | 33 ++++++++++++++++++++++++++
 3 files changed, 36 insertions(+)

diff --git a/drivers/video/fbdev/core/bootsplash.c b/drivers/video/fbdev/core/bootsplash.c
index 843c5400fefc..815b007f81ca 100644
--- a/drivers/video/fbdev/core/bootsplash.c
+++ b/drivers/video/fbdev/core/bootsplash.c
@@ -112,6 +112,8 @@ void bootsplash_render_full(struct fb_info *info)
 
 	bootsplash_do_render_pictures(info, splash_state.file);
 
+	bootsplash_do_render_flush(info);
+
 out:
 	mutex_unlock(&splash_state.data_lock);
 }
diff --git a/drivers/video/fbdev/core/bootsplash_internal.h b/drivers/video/fbdev/core/bootsplash_internal.h
index 71e2a27ac0b8..0acb383aa4e3 100644
--- a/drivers/video/fbdev/core/bootsplash_internal.h
+++ b/drivers/video/fbdev/core/bootsplash_internal.h
@@ -89,6 +89,7 @@ void bootsplash_do_render_background(struct fb_info *info,
 				     const struct splash_file_priv *fp);
 void bootsplash_do_render_pictures(struct fb_info *info,
 				   const struct splash_file_priv *fp);
+void bootsplash_do_render_flush(struct fb_info *info);
 
 
 void bootsplash_free_file(struct splash_file_priv *fp);
diff --git a/drivers/video/fbdev/core/bootsplash_render.c b/drivers/video/fbdev/core/bootsplash_render.c
index 2ae36949d0e3..8c09c306ff67 100644
--- a/drivers/video/fbdev/core/bootsplash_render.c
+++ b/drivers/video/fbdev/core/bootsplash_render.c
@@ -186,3 +186,36 @@ void bootsplash_do_render_pictures(struct fb_info *info,
 				pp->pic_header->width, pp->pic_header->height);
 	}
 }
+
+
+void bootsplash_do_render_flush(struct fb_info *info)
+{
+	/*
+	 * FB drivers using deferred_io (such as Xen) need to sync the
+	 * screen after modifying its contents. When the FB is mmap()ed
+	 * from userspace, this happens via a dirty pages callback, but
+	 * when modifying the FB from the kernel, there is no such thing.
+	 *
+	 * So let's issue a fake fb_copyarea (copying the FB onto itself)
+	 * to trick the FB driver into syncing the screen.
+	 *
+	 * A few DRM drivers' FB implementations are broken by not using
+	 * deferred_io when they really should - we match on the known
+	 * bad ones manually for now.
+	 */
+	if (info->fbdefio
+	    || !strcmp(info->fix.id, "astdrmfb")
+	    || !strcmp(info->fix.id, "cirrusdrmfb")
+	    || !strcmp(info->fix.id, "mgadrmfb")) {
+		struct fb_copyarea area;
+
+		area.dx = 0;
+		area.dy = 0;
+		area.width = info->var.xres;
+		area.height = info->var.yres;
+		area.sx = 0;
+		area.sy = 0;
+
+		info->fbops->fb_copyarea(info, &area);
+	}
+}
-- 
2.12.3

WARNING: multiple messages have this Message-ID (diff)
From: Max Staudt <mstaudt@suse.de>
To: b.zolnierkie@samsung.com, linux-fbdev@vger.kernel.org
Cc: michal@markovi.net, sndirsch@suse.com, oneukum@suse.com,
	tiwai@suse.com, dri-devel@lists.freedesktop.org,
	linux-kernel@vger.kernel.org, mstaudt@suse.de,
	bernhard.rosenkranzer@linaro.org, philm@manjaro.org
Subject: [RFC PATCH v2 03/13] bootsplash: Flush framebuffer after drawing
Date: Wed, 13 Dec 2017 19:47:45 +0000	[thread overview]
Message-ID: <20171213194755.3409-4-mstaudt@suse.de> (raw)
In-Reply-To: <20171213194755.3409-1-mstaudt@suse.de>

Framebuffers with deferred I/O need to be flushed to the screen
explicitly, since we use neither the mmap nor the file I/O abstractions
that handle this for userspace FB clients.

Example: xenfb

Some framebuffer drivers implement lazy access to the screen without
actually exposing a fbdefio interface - we also match some known ones,
currently:
 - ast
 - cirrus
 - mgag200

Signed-off-by: Max Staudt <mstaudt@suse.de>
Reviewed-by: Oliver Neukum <oneukum@suse.com>
---
 drivers/video/fbdev/core/bootsplash.c          |  2 ++
 drivers/video/fbdev/core/bootsplash_internal.h |  1 +
 drivers/video/fbdev/core/bootsplash_render.c   | 33 ++++++++++++++++++++++++++
 3 files changed, 36 insertions(+)

diff --git a/drivers/video/fbdev/core/bootsplash.c b/drivers/video/fbdev/core/bootsplash.c
index 843c5400fefc..815b007f81ca 100644
--- a/drivers/video/fbdev/core/bootsplash.c
+++ b/drivers/video/fbdev/core/bootsplash.c
@@ -112,6 +112,8 @@ void bootsplash_render_full(struct fb_info *info)
 
 	bootsplash_do_render_pictures(info, splash_state.file);
 
+	bootsplash_do_render_flush(info);
+
 out:
 	mutex_unlock(&splash_state.data_lock);
 }
diff --git a/drivers/video/fbdev/core/bootsplash_internal.h b/drivers/video/fbdev/core/bootsplash_internal.h
index 71e2a27ac0b8..0acb383aa4e3 100644
--- a/drivers/video/fbdev/core/bootsplash_internal.h
+++ b/drivers/video/fbdev/core/bootsplash_internal.h
@@ -89,6 +89,7 @@ void bootsplash_do_render_background(struct fb_info *info,
 				     const struct splash_file_priv *fp);
 void bootsplash_do_render_pictures(struct fb_info *info,
 				   const struct splash_file_priv *fp);
+void bootsplash_do_render_flush(struct fb_info *info);
 
 
 void bootsplash_free_file(struct splash_file_priv *fp);
diff --git a/drivers/video/fbdev/core/bootsplash_render.c b/drivers/video/fbdev/core/bootsplash_render.c
index 2ae36949d0e3..8c09c306ff67 100644
--- a/drivers/video/fbdev/core/bootsplash_render.c
+++ b/drivers/video/fbdev/core/bootsplash_render.c
@@ -186,3 +186,36 @@ void bootsplash_do_render_pictures(struct fb_info *info,
 				pp->pic_header->width, pp->pic_header->height);
 	}
 }
+
+
+void bootsplash_do_render_flush(struct fb_info *info)
+{
+	/*
+	 * FB drivers using deferred_io (such as Xen) need to sync the
+	 * screen after modifying its contents. When the FB is mmap()ed
+	 * from userspace, this happens via a dirty pages callback, but
+	 * when modifying the FB from the kernel, there is no such thing.
+	 *
+	 * So let's issue a fake fb_copyarea (copying the FB onto itself)
+	 * to trick the FB driver into syncing the screen.
+	 *
+	 * A few DRM drivers' FB implementations are broken by not using
+	 * deferred_io when they really should - we match on the known
+	 * bad ones manually for now.
+	 */
+	if (info->fbdefio
+	    || !strcmp(info->fix.id, "astdrmfb")
+	    || !strcmp(info->fix.id, "cirrusdrmfb")
+	    || !strcmp(info->fix.id, "mgadrmfb")) {
+		struct fb_copyarea area;
+
+		area.dx = 0;
+		area.dy = 0;
+		area.width = info->var.xres;
+		area.height = info->var.yres;
+		area.sx = 0;
+		area.sy = 0;
+
+		info->fbops->fb_copyarea(info, &area);
+	}
+}
-- 
2.12.3


WARNING: multiple messages have this Message-ID (diff)
From: Max Staudt <mstaudt@suse.de>
To: b.zolnierkie@samsung.com, linux-fbdev@vger.kernel.org
Cc: michal@markovi.net, sndirsch@suse.com, oneukum@suse.com,
	tiwai@suse.com, dri-devel@lists.freedesktop.org,
	linux-kernel@vger.kernel.org, mstaudt@suse.de,
	bernhard.rosenkranzer@linaro.org, philm@manjaro.org
Subject: [RFC PATCH v2 03/13] bootsplash: Flush framebuffer after drawing
Date: Wed, 13 Dec 2017 20:47:45 +0100	[thread overview]
Message-ID: <20171213194755.3409-4-mstaudt@suse.de> (raw)
In-Reply-To: <20171213194755.3409-1-mstaudt@suse.de>

Framebuffers with deferred I/O need to be flushed to the screen
explicitly, since we use neither the mmap nor the file I/O abstractions
that handle this for userspace FB clients.

Example: xenfb

Some framebuffer drivers implement lazy access to the screen without
actually exposing a fbdefio interface - we also match some known ones,
currently:
 - ast
 - cirrus
 - mgag200

Signed-off-by: Max Staudt <mstaudt@suse.de>
Reviewed-by: Oliver Neukum <oneukum@suse.com>
---
 drivers/video/fbdev/core/bootsplash.c          |  2 ++
 drivers/video/fbdev/core/bootsplash_internal.h |  1 +
 drivers/video/fbdev/core/bootsplash_render.c   | 33 ++++++++++++++++++++++++++
 3 files changed, 36 insertions(+)

diff --git a/drivers/video/fbdev/core/bootsplash.c b/drivers/video/fbdev/core/bootsplash.c
index 843c5400fefc..815b007f81ca 100644
--- a/drivers/video/fbdev/core/bootsplash.c
+++ b/drivers/video/fbdev/core/bootsplash.c
@@ -112,6 +112,8 @@ void bootsplash_render_full(struct fb_info *info)
 
 	bootsplash_do_render_pictures(info, splash_state.file);
 
+	bootsplash_do_render_flush(info);
+
 out:
 	mutex_unlock(&splash_state.data_lock);
 }
diff --git a/drivers/video/fbdev/core/bootsplash_internal.h b/drivers/video/fbdev/core/bootsplash_internal.h
index 71e2a27ac0b8..0acb383aa4e3 100644
--- a/drivers/video/fbdev/core/bootsplash_internal.h
+++ b/drivers/video/fbdev/core/bootsplash_internal.h
@@ -89,6 +89,7 @@ void bootsplash_do_render_background(struct fb_info *info,
 				     const struct splash_file_priv *fp);
 void bootsplash_do_render_pictures(struct fb_info *info,
 				   const struct splash_file_priv *fp);
+void bootsplash_do_render_flush(struct fb_info *info);
 
 
 void bootsplash_free_file(struct splash_file_priv *fp);
diff --git a/drivers/video/fbdev/core/bootsplash_render.c b/drivers/video/fbdev/core/bootsplash_render.c
index 2ae36949d0e3..8c09c306ff67 100644
--- a/drivers/video/fbdev/core/bootsplash_render.c
+++ b/drivers/video/fbdev/core/bootsplash_render.c
@@ -186,3 +186,36 @@ void bootsplash_do_render_pictures(struct fb_info *info,
 				pp->pic_header->width, pp->pic_header->height);
 	}
 }
+
+
+void bootsplash_do_render_flush(struct fb_info *info)
+{
+	/*
+	 * FB drivers using deferred_io (such as Xen) need to sync the
+	 * screen after modifying its contents. When the FB is mmap()ed
+	 * from userspace, this happens via a dirty pages callback, but
+	 * when modifying the FB from the kernel, there is no such thing.
+	 *
+	 * So let's issue a fake fb_copyarea (copying the FB onto itself)
+	 * to trick the FB driver into syncing the screen.
+	 *
+	 * A few DRM drivers' FB implementations are broken by not using
+	 * deferred_io when they really should - we match on the known
+	 * bad ones manually for now.
+	 */
+	if (info->fbdefio
+	    || !strcmp(info->fix.id, "astdrmfb")
+	    || !strcmp(info->fix.id, "cirrusdrmfb")
+	    || !strcmp(info->fix.id, "mgadrmfb")) {
+		struct fb_copyarea area;
+
+		area.dx = 0;
+		area.dy = 0;
+		area.width = info->var.xres;
+		area.height = info->var.yres;
+		area.sx = 0;
+		area.sy = 0;
+
+		info->fbops->fb_copyarea(info, &area);
+	}
+}
-- 
2.12.3

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  parent reply	other threads:[~2017-12-13 19:51 UTC|newest]

Thread overview: 193+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-13 19:47 [RFC PATCH v2 00/13] Kernel based bootsplash Max Staudt
2017-12-13 19:47 ` Max Staudt
2017-12-13 19:47 ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 01/13] bootsplash: Initial implementation showing black screen Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 23:55   ` Randy Dunlap
2017-12-13 23:55     ` Randy Dunlap
2017-12-14 15:37     ` Max Staudt
2017-12-14 15:37       ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 02/13] bootsplash: Add file reading and picture rendering Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` Max Staudt [this message]
2017-12-13 19:47   ` [RFC PATCH v2 03/13] bootsplash: Flush framebuffer after drawing Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 21:35   ` Daniel Vetter
2017-12-13 21:35     ` Daniel Vetter
2017-12-13 21:35     ` Daniel Vetter
2017-12-14 15:36     ` Max Staudt
2017-12-14 15:36       ` Max Staudt
2017-12-14 15:36       ` Max Staudt
2017-12-19 12:23       ` Daniel Vetter
2017-12-19 12:23         ` Daniel Vetter
2017-12-19 12:23         ` Daniel Vetter
2017-12-19 13:34         ` Max Staudt
2017-12-19 13:34           ` Max Staudt
2017-12-19 13:34           ` Max Staudt
2017-12-19 13:57           ` Daniel Vetter
2017-12-19 13:57             ` Daniel Vetter
2017-12-19 14:07             ` Oliver Neukum
2017-12-19 14:07               ` Oliver Neukum
2017-12-31 12:53               ` Alan Cox
2017-12-31 12:53                 ` Alan Cox
2017-12-31 12:53                 ` Alan Cox
2018-01-03 18:04                 ` Max Staudt
2018-01-03 18:04                   ` Max Staudt
2018-01-03 18:04                   ` Max Staudt
2017-12-19 15:41             ` Max Staudt
2017-12-19 15:41               ` Max Staudt
2017-12-19 15:41               ` Max Staudt
2017-12-19 16:02               ` Daniel Vetter
2017-12-19 16:02                 ` Daniel Vetter
2017-12-19 16:02                 ` Daniel Vetter
2017-12-19 16:23                 ` Max Staudt
2017-12-19 16:23                   ` Max Staudt
2017-12-19 16:23                   ` Max Staudt
2017-12-20  9:45                   ` Daniel Vetter
2017-12-20  9:45                     ` Daniel Vetter
2017-12-20  9:45                     ` Daniel Vetter
2017-12-19 16:09               ` Daniel Vetter
2017-12-19 16:09                 ` Daniel Vetter
2017-12-19 16:09                 ` Daniel Vetter
2017-12-19 16:26                 ` Max Staudt
2017-12-19 16:26                   ` Max Staudt
2017-12-19 16:26                   ` Max Staudt
2017-12-19 21:01               ` Ray Strode
2017-12-19 21:01                 ` Ray Strode
2017-12-19 21:01                 ` Ray Strode
2017-12-20 13:14                 ` Max Staudt
2017-12-20 13:14                   ` Max Staudt
2017-12-20 13:14                   ` Max Staudt
2017-12-20 15:35                   ` Ray Strode
2017-12-20 15:35                     ` Ray Strode
2017-12-20 15:35                     ` Ray Strode
2017-12-20 16:52                     ` Max Staudt
2017-12-20 16:52                       ` Max Staudt
2017-12-20 16:52                       ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 04/13] bootsplash: Add corner positioning Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 05/13] bootsplash: Add animation support Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 06/13] vt: Redraw bootsplash fully on console_unblank Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 07/13] vt: Add keyboard hook to disable bootsplash Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 08/13] sysrq: Disable bootsplash on SAK Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 09/13] fbcon: Disable bootsplash on oops Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 10/13] Documentation: Add bootsplash main documentation Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 11/13] bootsplash: sysfs entries to load and unload files Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 12/13] tools/bootsplash: Add a basic splash file creation tool Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 13/13] tools/bootsplash: Add script and data to create sample file Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:52 ` [RFC PATCH v2 00/13] Kernel based bootsplash Max Staudt
2017-12-13 19:52   ` Max Staudt
2017-12-13 19:52   ` Max Staudt
2017-12-19 16:16 ` Daniel Vetter
2017-12-19 16:16   ` Daniel Vetter
2017-12-19 16:16   ` Daniel Vetter
2017-12-19 17:04   ` Max Staudt
2017-12-19 17:04     ` Max Staudt
2017-12-19 17:04     ` Max Staudt
2017-12-19 17:26     ` Daniel Vetter
2017-12-19 17:26       ` Daniel Vetter
2017-12-19 17:26       ` Daniel Vetter
2017-12-19 18:40       ` Max Staudt
2017-12-19 18:40         ` Max Staudt
2017-12-19 18:40         ` Max Staudt
2017-12-20  9:43         ` Daniel Vetter
2017-12-20  9:43           ` Daniel Vetter
2017-12-20  9:43           ` Daniel Vetter
2017-12-20 10:06           ` Neil Armstrong
2017-12-20 10:06             ` Neil Armstrong
2017-12-20 10:06             ` Neil Armstrong
2017-12-20 10:14             ` Daniel Vetter
2017-12-20 10:14               ` Daniel Vetter
2017-12-20 10:14               ` Daniel Vetter
2017-12-20 14:55               ` Max Staudt
2017-12-20 14:55                 ` Max Staudt
2017-12-20 15:11                 ` Daniel Vetter
2017-12-20 15:11                   ` Daniel Vetter
2017-12-20 15:11                   ` Daniel Vetter
2017-12-20 15:19                   ` Daniel Vetter
2017-12-20 15:19                     ` Daniel Vetter
2017-12-20 15:19                     ` Daniel Vetter
2017-12-20 15:22                     ` Daniel Vetter
2017-12-20 15:22                       ` Daniel Vetter
2017-12-20 15:22                       ` Daniel Vetter
2017-12-20 16:23                     ` Max Staudt
2017-12-20 16:23                       ` Max Staudt
2017-12-20 16:23                       ` Max Staudt
2017-12-20 16:15                   ` Max Staudt
2017-12-20 16:15                     ` Max Staudt
2017-12-20 16:15                     ` Max Staudt
2017-12-31 12:44                   ` Alan Cox
2017-12-31 12:44                     ` Alan Cox
2017-12-31 12:44                     ` Alan Cox
2018-01-03 18:00                     ` Max Staudt
2018-01-03 18:00                       ` Max Staudt
2017-12-20 14:16             ` Max Staudt
2017-12-20 14:16               ` Max Staudt
2017-12-20 14:16               ` Max Staudt
2017-12-20 14:10           ` Max Staudt
2017-12-20 14:10             ` Max Staudt
2017-12-20 14:10             ` Max Staudt
2017-12-31 12:35         ` Alan Cox
2017-12-31 12:35           ` Alan Cox
2017-12-31 12:35           ` Alan Cox
2018-01-03 17:56           ` Max Staudt
2018-01-03 17:56             ` Max Staudt
2018-01-03 17:56             ` Max Staudt
2017-12-19 20:30     ` Ray Strode
2017-12-19 20:30       ` Ray Strode
2017-12-19 20:30       ` Ray Strode
2017-12-20 13:03       ` Max Staudt
2017-12-20 13:03         ` Max Staudt
2017-12-20 13:03         ` Max Staudt
2017-12-20 15:21         ` Ray Strode
2017-12-20 15:21           ` Ray Strode
2017-12-20 15:21           ` Ray Strode
2017-12-20 16:44           ` Max Staudt
2017-12-20 16:44             ` Max Staudt
2017-12-20 16:44             ` Max Staudt
2017-12-21 14:51             ` Ray Strode
2017-12-21 14:51               ` Ray Strode
2017-12-21 14:51               ` Ray Strode
2017-12-21 16:32               ` Max Staudt
2017-12-21 16:32                 ` Max Staudt
2017-12-20 11:08   ` Johannes Thumshirn
2017-12-20 11:08     ` Johannes Thumshirn
2017-12-20 11:22     ` Daniel Stone
2017-12-20 11:22       ` Daniel Stone
2017-12-20 11:22       ` Daniel Stone
2017-12-20 12:48       ` Johannes Thumshirn
2017-12-20 12:48         ` Johannes Thumshirn
2017-12-29 17:13   ` Jani Nikula
2017-12-29 17:13     ` Jani Nikula
2017-12-29 17:13     ` Jani Nikula
2018-01-03 17:38     ` Max Staudt
2018-01-03 17:38       ` Max Staudt
2017-12-21  9:48 ` Daniel Vetter
2017-12-21  9:48   ` Daniel Vetter
2017-12-21  9:48   ` Daniel Vetter
2017-12-21 16:52   ` Max Staudt
2017-12-21 16:52     ` Max Staudt
2017-12-21 16:52     ` Max Staudt
2017-12-21 15:00 ` Philip Müller
2017-12-21 15:00   ` Philip Müller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171213194755.3409-4-mstaudt@suse.de \
    --to=mstaudt@suse.de \
    --cc=b.zolnierkie@samsung.com \
    --cc=bernhard.rosenkranzer@linaro.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michal@markovi.net \
    --cc=msrb@suse.com \
    --cc=oneukum@suse.com \
    --cc=philm@manjaro.org \
    --cc=sndirsch@suse.com \
    --cc=tiwai@suse.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.