public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support
@ 2018-02-08 20:47 Heinrich Schuchardt
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 1/4] dm: video: show correct colors in graphical console Heinrich Schuchardt
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: Heinrich Schuchardt @ 2018-02-08 20:47 UTC (permalink / raw)
  To: u-boot

Support special rendition code 0 - reset attributes.
Support special rendition code 1 - increased intensity (bold).
Get RGB sequence in pixels right (swap blue and red).
Do not set reserved bits.
Use u32 instead of unsigned for color bit mask.

qemu-system-i386 -display sdl -vga virtio and
qemu-system-i386 -display sdl -vga cirrus
now display the same colors as
qemu-system-i386 -nographic

Testing is possible via

	setenv efi_selftest test output
	bootefi selftest
---
v4:
	Fix a build warning leading to a Travis error.
	Rename a variable.
v3:
	Split single patch up into a series
	Use constants for colors
v2:
	SGR 0 should reset the colors and the attributes.
---

Heinrich Schuchardt (4):
  dm: video: show correct colors in graphical console
  dm: video: correctly clean background in 16bit mode
  dm: video: use constants to refer to colors
  dm: video: support increased intensity (bold)

 drivers/video/vidconsole-uclass.c | 86 ++++++++++++++++++++++++++-------------
 drivers/video/video-uclass.c      | 38 +++++++++++++----
 include/video.h                   | 13 +++++-
 include/video_console.h           | 43 ++++++++++++++++++++
 test/dm/video.c                   |  2 +-
 5 files changed, 142 insertions(+), 40 deletions(-)

-- 
2.14.2

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH v4 1/4] dm: video: show correct colors in graphical console
  2018-02-08 20:47 [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support Heinrich Schuchardt
@ 2018-02-08 20:47 ` Heinrich Schuchardt
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 2/4] dm: video: correctly clean background in 16bit mode Heinrich Schuchardt
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 8+ messages in thread
From: Heinrich Schuchardt @ 2018-02-08 20:47 UTC (permalink / raw)
  To: u-boot

Get RGB sequence in pixels right (swap blue and red).
Do not set reserved bits.

qemu-system-i386 -display sdl -vga virtio and
qemu-system-i386 -display sdl -vga cirrus
now display the similar colors (highlighting still missing) as
qemu-system-i386 -nographic

Testing is possible via

	setenv efi_selftest test output
	bootefi selftest

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
v4
	no change
v3
	no change
v2
	no change
---
 drivers/video/vidconsole-uclass.c | 13 ++++++-------
 test/dm/video.c                   |  2 +-
 2 files changed, 7 insertions(+), 8 deletions(-)

diff --git a/drivers/video/vidconsole-uclass.c b/drivers/video/vidconsole-uclass.c
index 5f63c12d6c5..8a2a377161f 100644
--- a/drivers/video/vidconsole-uclass.c
+++ b/drivers/video/vidconsole-uclass.c
@@ -127,15 +127,14 @@ static void set_color(struct video_priv *priv, unsigned idx, unsigned *c)
 {
 	switch (priv->bpix) {
 	case VIDEO_BPP16:
-		*c = ((colors[idx].r >> 3) << 0) |
-		     ((colors[idx].g >> 2) << 5) |
-		     ((colors[idx].b >> 3) << 11);
+		*c = ((colors[idx].r >> 3) << 11) |
+		     ((colors[idx].g >> 2) <<  5) |
+		     ((colors[idx].b >> 3) <<  0);
 		break;
 	case VIDEO_BPP32:
-		*c = 0xff000000 |
-		     (colors[idx].r << 0) |
-		     (colors[idx].g << 8) |
-		     (colors[idx].b << 16);
+		*c = (colors[idx].r << 16) |
+		     (colors[idx].g <<  8) |
+		     (colors[idx].b <<  0);
 		break;
 	default:
 		/* unsupported, leave current color in place */
diff --git a/test/dm/video.c b/test/dm/video.c
index 29917d0c2d8..d158f1fcb39 100644
--- a/test/dm/video.c
+++ b/test/dm/video.c
@@ -186,7 +186,7 @@ static int dm_test_video_ansi(struct unit_test_state *uts)
 	/* test colors (30-37 fg color, 40-47 bg color) */
 	vidconsole_put_string(con, ANSI_ESC"[30;41mfoo"); /* black on red */
 	vidconsole_put_string(con, ANSI_ESC"[33;44mbar"); /* yellow on blue */
-	ut_asserteq(268, compress_frame_buffer(dev));
+	ut_asserteq(267, compress_frame_buffer(dev));
 
 	return 0;
 }
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH v4 2/4] dm: video: correctly clean background in 16bit mode
  2018-02-08 20:47 [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support Heinrich Schuchardt
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 1/4] dm: video: show correct colors in graphical console Heinrich Schuchardt
@ 2018-02-08 20:47 ` Heinrich Schuchardt
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 3/4] dm: video: use constants to refer to colors Heinrich Schuchardt
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 8+ messages in thread
From: Heinrich Schuchardt @ 2018-02-08 20:47 UTC (permalink / raw)
  To: u-boot

In 16 bit mode we have to copy two bytes per pixels repeatedly and not
four. Otherwise we will see a striped pattern.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
v4
	no change
v3
	no change
v2
	no change
---
 drivers/video/video-uclass.c | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/drivers/video/video-uclass.c b/drivers/video/video-uclass.c
index dcaceed42c4..9a980ea3a1d 100644
--- a/drivers/video/video-uclass.c
+++ b/drivers/video/video-uclass.c
@@ -91,14 +91,26 @@ void video_clear(struct udevice *dev)
 {
 	struct video_priv *priv = dev_get_uclass_priv(dev);
 
-	if (priv->bpix == VIDEO_BPP32) {
+	switch (priv->bpix) {
+	case VIDEO_BPP16: {
+		u16 *ppix = priv->fb;
+		u16 *end = priv->fb + priv->fb_size;
+
+		while (ppix < end)
+			*ppix++ = priv->colour_bg;
+		break;
+	}
+	case VIDEO_BPP32: {
 		u32 *ppix = priv->fb;
 		u32 *end = priv->fb + priv->fb_size;
 
 		while (ppix < end)
 			*ppix++ = priv->colour_bg;
-	} else {
+		break;
+	}
+	default:
 		memset(priv->fb, priv->colour_bg, priv->fb_size);
+		break;
 	}
 }
 
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH v4 3/4] dm: video: use constants to refer to colors
  2018-02-08 20:47 [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support Heinrich Schuchardt
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 1/4] dm: video: show correct colors in graphical console Heinrich Schuchardt
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 2/4] dm: video: correctly clean background in 16bit mode Heinrich Schuchardt
@ 2018-02-08 20:47 ` Heinrich Schuchardt
  2018-02-12 14:35   ` Simon Glass
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 4/4] dm: video: support increased intensity (bold) Heinrich Schuchardt
  2018-03-06  9:16 ` [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support Anatolij Gustschin
  4 siblings, 1 reply; 8+ messages in thread
From: Heinrich Schuchardt @ 2018-02-08 20:47 UTC (permalink / raw)
  To: u-boot

Use constants to refer to colors.
Adjust initialization of foreground and background color to avoid
setting reserved bits.
Consistently u32 instead of unsigned for color bit mask.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
v4
	Fix a build warning, that was treated as an error in Travis testing
	by conditional compling with CONFIG_DM_VIDEO.
v3
	Use color constants for initalizing the console.
v2
	no change
---
 drivers/video/vidconsole-uclass.c | 55 +++++++++++++++++++++++----------------
 drivers/video/video-uclass.c      | 19 +++++++++-----
 include/video.h                   | 11 ++++++--
 include/video_console.h           | 35 +++++++++++++++++++++++++
 4 files changed, 89 insertions(+), 31 deletions(-)

diff --git a/drivers/video/vidconsole-uclass.c b/drivers/video/vidconsole-uclass.c
index 8a2a377161f..d32b1017581 100644
--- a/drivers/video/vidconsole-uclass.c
+++ b/drivers/video/vidconsole-uclass.c
@@ -15,6 +15,15 @@
 #include <video_console.h>
 #include <video_font.h>		/* Get font data, width and height */
 
+/*
+ * Structure to describe a console color
+ */
+struct vid_rgb {
+	u32 r;
+	u32 g;
+	u32 b;
+};
+
 /* By default we scroll by a single line */
 #ifndef CONFIG_CONSOLE_SCROLL_LINES
 #define CONFIG_CONSOLE_SCROLL_LINES 1
@@ -108,11 +117,7 @@ static void vidconsole_newline(struct udevice *dev)
 	video_sync(dev->parent);
 }
 
-static const struct {
-	unsigned r;
-	unsigned g;
-	unsigned b;
-} colors[] = {
+static const struct vid_rgb colors[VID_COLOR_COUNT] = {
 	{ 0x00, 0x00, 0x00 },  /* black */
 	{ 0xff, 0x00, 0x00 },  /* red */
 	{ 0x00, 0xff, 0x00 },  /* green */
@@ -123,22 +128,26 @@ static const struct {
 	{ 0xff, 0xff, 0xff },  /* white */
 };
 
-static void set_color(struct video_priv *priv, unsigned idx, unsigned *c)
+u32 vid_console_color(struct video_priv *priv, unsigned int idx)
 {
 	switch (priv->bpix) {
 	case VIDEO_BPP16:
-		*c = ((colors[idx].r >> 3) << 11) |
-		     ((colors[idx].g >> 2) <<  5) |
-		     ((colors[idx].b >> 3) <<  0);
-		break;
+		return ((colors[idx].r >> 3) << 11) |
+		       ((colors[idx].g >> 2) <<  5) |
+		       ((colors[idx].b >> 3) <<  0);
 	case VIDEO_BPP32:
-		*c = (colors[idx].r << 16) |
-		     (colors[idx].g <<  8) |
-		     (colors[idx].b <<  0);
-		break;
+		return (colors[idx].r << 16) |
+		       (colors[idx].g <<  8) |
+		       (colors[idx].b <<  0);
 	default:
-		/* unsupported, leave current color in place */
-		break;
+		/*
+		 * For unknown bit arrangements just support
+		 * black and white.
+		 */
+		if (idx)
+			return 0xffffff; /* white */
+		else
+			return 0x000000; /* black */
 	}
 }
 
@@ -270,17 +279,17 @@ static void vidconsole_escape_char(struct udevice *dev, char ch)
 
 			switch (val) {
 			case 30 ... 37:
-				/* fg color */
-				set_color(vid_priv, val - 30,
-					  (unsigned *)&vid_priv->colour_fg);
+				/* foreground color */
+				vid_priv->colour_fg = vid_console_color(
+							vid_priv, val - 30);
 				break;
 			case 40 ... 47:
-				/* bg color */
-				set_color(vid_priv, val - 40,
-					  (unsigned *)&vid_priv->colour_bg);
+				/* background color */
+				vid_priv->colour_bg = vid_console_color(
+							vid_priv, val - 40);
 				break;
 			default:
-				/* unknown/unsupported */
+				/* ignore unsupported SGR parameter */
 				break;
 			}
 		}
diff --git a/drivers/video/video-uclass.c b/drivers/video/video-uclass.c
index 9a980ea3a1d..945b20ddfd7 100644
--- a/drivers/video/video-uclass.c
+++ b/drivers/video/video-uclass.c
@@ -114,6 +114,17 @@ void video_clear(struct udevice *dev)
 	}
 }
 
+void video_set_default_colors(struct video_priv *priv)
+{
+#ifdef CONFIG_SYS_WHITE_ON_BLACK
+	priv->colour_fg = vid_console_color(priv, VID_WHITE);
+	priv->colour_bg = vid_console_color(priv, VID_BLACK);
+#else
+	priv->colour_fg = vid_console_color(priv, VID_BLACK);
+	priv->colour_bg = vid_console_color(priv, VID_WHITE);
+#endif
+}
+
 /* Flush video activity to the caches */
 void video_sync(struct udevice *vid)
 {
@@ -203,12 +214,8 @@ static int video_post_probe(struct udevice *dev)
 	priv->line_length = priv->xsize * VNBYTES(priv->bpix);
 	priv->fb_size = priv->line_length * priv->ysize;
 
-	/* Set up colours - we could in future support other colours */
-#ifdef CONFIG_SYS_WHITE_ON_BLACK
-	priv->colour_fg = 0xffffff;
-#else
-	priv->colour_bg = 0xffffff;
-#endif
+	/* Set up colors  */
+	video_set_default_colors(priv);
 
 	if (!CONFIG_IS_ENABLED(NO_FB_CLEAR))
 		video_clear(dev);
diff --git a/include/video.h b/include/video.h
index 61ff6531215..841f3dc56b1 100644
--- a/include/video.h
+++ b/include/video.h
@@ -84,8 +84,8 @@ struct video_priv {
 	void *fb;
 	int fb_size;
 	int line_length;
-	int colour_fg;
-	int colour_bg;
+	u32 colour_fg;
+	u32 colour_bg;
 	bool flush_dcache;
 	ushort *cmap;
 };
@@ -183,6 +183,13 @@ int video_get_ysize(struct udevice *dev);
  */
 void video_set_flush_dcache(struct udevice *dev, bool flush);
 
+/**
+ * Set default colors and attributes
+ *
+ * @priv	device information
+ */
+void video_set_default_colors(struct video_priv *priv);
+
 #endif /* CONFIG_DM_VIDEO */
 
 #ifndef CONFIG_DM_VIDEO
diff --git a/include/video_console.h b/include/video_console.h
index 9dce234bd92..656a47295f6 100644
--- a/include/video_console.h
+++ b/include/video_console.h
@@ -7,11 +7,29 @@
 #ifndef __video_console_h
 #define __video_console_h
 
+#include <video.h>
+
 #define VID_FRAC_DIV	256
 
 #define VID_TO_PIXEL(x)	((x) / VID_FRAC_DIV)
 #define VID_TO_POS(x)	((x) * VID_FRAC_DIV)
 
+/*
+ * The 8 colors supported by the console
+ */
+enum color_idx {
+	VID_BLACK = 0,
+	VID_RED,
+	VID_GREEN,
+	VID_YELLOW,
+	VID_BLUE,
+	VID_MAGENTA,
+	VID_CYAN,
+	VID_WHITE,
+
+	VID_COLOR_COUNT
+};
+
 /**
  * struct vidconsole_priv - uclass-private data about a console device
  *
@@ -196,4 +214,21 @@ int vidconsole_put_char(struct udevice *dev, char ch);
 void vidconsole_position_cursor(struct udevice *dev, unsigned col,
 				unsigned row);
 
+#ifdef CONFIG_DM_VIDEO
+
+/**
+ * vid_console_color() - convert a color code to a pixel's internal
+ * representation
+ *
+ * The caller has to guarantee that the color index is less than
+ * VID_COLOR_COUNT.
+ *
+ * @priv	private data of the console device
+ * @idx		color index
+ * @return	color value
+ */
+u32 vid_console_color(struct video_priv *priv, unsigned int idx);
+
+#endif
+
 #endif
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH v4 4/4] dm: video: support increased intensity (bold)
  2018-02-08 20:47 [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support Heinrich Schuchardt
                   ` (2 preceding siblings ...)
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 3/4] dm: video: use constants to refer to colors Heinrich Schuchardt
@ 2018-02-08 20:47 ` Heinrich Schuchardt
  2018-02-09 16:06   ` Simon Glass
  2018-03-06  9:16 ` [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support Anatolij Gustschin
  4 siblings, 1 reply; 8+ messages in thread
From: Heinrich Schuchardt @ 2018-02-08 20:47 UTC (permalink / raw)
  To: u-boot

Support special rendition code 0 - reset attributes.
Support special rendition code 1 - increased intensity (bold).

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
v4
	Rename priv->fg to priv->fg_col_idx.
v3
	Add color constants.
v2
	SGR 0 should reset the colors and the attributes.
---
 drivers/video/vidconsole-uclass.c | 32 ++++++++++++++++++++++++++------
 drivers/video/video-uclass.c      |  5 ++++-
 include/video.h                   |  2 ++
 include/video_console.h           | 12 ++++++++++--
 test/dm/video.c                   |  2 +-
 5 files changed, 43 insertions(+), 10 deletions(-)

diff --git a/drivers/video/vidconsole-uclass.c b/drivers/video/vidconsole-uclass.c
index d32b1017581..6f3988d49ea 100644
--- a/drivers/video/vidconsole-uclass.c
+++ b/drivers/video/vidconsole-uclass.c
@@ -119,12 +119,20 @@ static void vidconsole_newline(struct udevice *dev)
 
 static const struct vid_rgb colors[VID_COLOR_COUNT] = {
 	{ 0x00, 0x00, 0x00 },  /* black */
-	{ 0xff, 0x00, 0x00 },  /* red */
-	{ 0x00, 0xff, 0x00 },  /* green */
+	{ 0xc0, 0x00, 0x00 },  /* red */
+	{ 0x00, 0xc0, 0x00 },  /* green */
+	{ 0xc0, 0x60, 0x00 },  /* brown */
+	{ 0x00, 0x00, 0xc0 },  /* blue */
+	{ 0xc0, 0x00, 0xc0 },  /* magenta */
+	{ 0x00, 0xc0, 0xc0 },  /* cyan */
+	{ 0xc0, 0xc0, 0xc0 },  /* light gray */
+	{ 0x80, 0x80, 0x80 },  /* gray */
+	{ 0xff, 0x00, 0x00 },  /* bright red */
+	{ 0x00, 0xff, 0x00 },  /* bright green */
 	{ 0xff, 0xff, 0x00 },  /* yellow */
-	{ 0x00, 0x00, 0xff },  /* blue */
-	{ 0xff, 0x00, 0xff },  /* magenta */
-	{ 0x00, 0xff, 0xff },  /* cyan */
+	{ 0x00, 0x00, 0xff },  /* bright blue */
+	{ 0xff, 0x00, 0xff },  /* bright magenta */
+	{ 0x00, 0xff, 0xff },  /* bright cyan */
 	{ 0xff, 0xff, 0xff },  /* white */
 };
 
@@ -278,10 +286,22 @@ static void vidconsole_escape_char(struct udevice *dev, char ch)
 			s++;
 
 			switch (val) {
+			case 0:
+				/* all attributes off */
+				video_set_default_colors(vid_priv);
+				break;
+			case 1:
+				/* bold */
+				vid_priv->fg_col_idx |= 8;
+				vid_priv->colour_fg = vid_console_color(
+						vid_priv, vid_priv->fg_col_idx);
+				break;
 			case 30 ... 37:
 				/* foreground color */
+				vid_priv->fg_col_idx &= ~7;
+				vid_priv->fg_col_idx |= val - 30;
 				vid_priv->colour_fg = vid_console_color(
-							vid_priv, val - 30);
+						vid_priv, vid_priv->fg_col_idx);
 				break;
 			case 40 ... 47:
 				/* background color */
diff --git a/drivers/video/video-uclass.c b/drivers/video/video-uclass.c
index 945b20ddfd7..b5bb8e0efde 100644
--- a/drivers/video/video-uclass.c
+++ b/drivers/video/video-uclass.c
@@ -117,9 +117,12 @@ void video_clear(struct udevice *dev)
 void video_set_default_colors(struct video_priv *priv)
 {
 #ifdef CONFIG_SYS_WHITE_ON_BLACK
-	priv->colour_fg = vid_console_color(priv, VID_WHITE);
+	/* White is used when switching to bold, use light gray here */
+	priv->fg_col_idx = VID_LIGHT_GRAY;
+	priv->colour_fg = vid_console_color(priv, VID_LIGHT_GRAY);
 	priv->colour_bg = vid_console_color(priv, VID_BLACK);
 #else
+	priv->fg_col_idx = VID_BLACK;
 	priv->colour_fg = vid_console_color(priv, VID_BLACK);
 	priv->colour_bg = vid_console_color(priv, VID_WHITE);
 #endif
diff --git a/include/video.h b/include/video.h
index 841f3dc56b1..ddc2eeb5a95 100644
--- a/include/video.h
+++ b/include/video.h
@@ -67,6 +67,7 @@ enum video_log2_bpp {
  * @flush_dcache:	true to enable flushing of the data cache after
  *		the LCD is updated
  * @cmap:	Colour map for 8-bit-per-pixel displays
+ * @fg_col_idx:	Foreground color code (bit 3 = bold, bit 0-2 = color)
  */
 struct video_priv {
 	/* Things set up by the driver: */
@@ -88,6 +89,7 @@ struct video_priv {
 	u32 colour_bg;
 	bool flush_dcache;
 	ushort *cmap;
+	u8 fg_col_idx;
 };
 
 /* Placeholder - there are no video operations at present */
diff --git a/include/video_console.h b/include/video_console.h
index 656a47295f6..7621a189d2a 100644
--- a/include/video_console.h
+++ b/include/video_console.h
@@ -15,16 +15,24 @@
 #define VID_TO_POS(x)	((x) * VID_FRAC_DIV)
 
 /*
- * The 8 colors supported by the console
+ * The 16 colors supported by the console
  */
 enum color_idx {
 	VID_BLACK = 0,
 	VID_RED,
 	VID_GREEN,
-	VID_YELLOW,
+	VID_BROWN,
 	VID_BLUE,
 	VID_MAGENTA,
 	VID_CYAN,
+	VID_LIGHT_GRAY,
+	VID_GRAY,
+	VID_LIGHT_RED,
+	VID_LIGTH_GREEN,
+	VID_YELLOW,
+	VID_LIGHT_BLUE,
+	VID_LIGHT_MAGENTA,
+	VID_LIGHT_CYAN,
 	VID_WHITE,
 
 	VID_COLOR_COUNT
diff --git a/test/dm/video.c b/test/dm/video.c
index d158f1fcb39..caca4969027 100644
--- a/test/dm/video.c
+++ b/test/dm/video.c
@@ -186,7 +186,7 @@ static int dm_test_video_ansi(struct unit_test_state *uts)
 	/* test colors (30-37 fg color, 40-47 bg color) */
 	vidconsole_put_string(con, ANSI_ESC"[30;41mfoo"); /* black on red */
 	vidconsole_put_string(con, ANSI_ESC"[33;44mbar"); /* yellow on blue */
-	ut_asserteq(267, compress_frame_buffer(dev));
+	ut_asserteq(265, compress_frame_buffer(dev));
 
 	return 0;
 }
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH v4 4/4] dm: video: support increased intensity (bold)
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 4/4] dm: video: support increased intensity (bold) Heinrich Schuchardt
@ 2018-02-09 16:06   ` Simon Glass
  0 siblings, 0 replies; 8+ messages in thread
From: Simon Glass @ 2018-02-09 16:06 UTC (permalink / raw)
  To: u-boot

On 8 February 2018 at 13:47, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
>
> Support special rendition code 0 - reset attributes.
> Support special rendition code 1 - increased intensity (bold).
>
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
> ---
> v4
>         Rename priv->fg to priv->fg_col_idx.
> v3
>         Add color constants.
> v2
>         SGR 0 should reset the colors and the attributes.
> ---
>  drivers/video/vidconsole-uclass.c | 32 ++++++++++++++++++++++++++------
>  drivers/video/video-uclass.c      |  5 ++++-
>  include/video.h                   |  2 ++
>  include/video_console.h           | 12 ++++++++++--
>  test/dm/video.c                   |  2 +-
>  5 files changed, 43 insertions(+), 10 deletions(-)

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH v4 3/4] dm: video: use constants to refer to colors
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 3/4] dm: video: use constants to refer to colors Heinrich Schuchardt
@ 2018-02-12 14:35   ` Simon Glass
  0 siblings, 0 replies; 8+ messages in thread
From: Simon Glass @ 2018-02-12 14:35 UTC (permalink / raw)
  To: u-boot

On 8 February 2018 at 13:47, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
> Use constants to refer to colors.
> Adjust initialization of foreground and background color to avoid
> setting reserved bits.
> Consistently u32 instead of unsigned for color bit mask.
>
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
> ---
> v4
>         Fix a build warning, that was treated as an error in Travis testing
>         by conditional compling with CONFIG_DM_VIDEO.
> v3
>         Use color constants for initalizing the console.
> v2
>         no change
> ---
>  drivers/video/vidconsole-uclass.c | 55 +++++++++++++++++++++++----------------
>  drivers/video/video-uclass.c      | 19 +++++++++-----
>  include/video.h                   | 11 ++++++--
>  include/video_console.h           | 35 +++++++++++++++++++++++++
>  4 files changed, 89 insertions(+), 31 deletions(-)

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support
  2018-02-08 20:47 [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support Heinrich Schuchardt
                   ` (3 preceding siblings ...)
  2018-02-08 20:47 ` [U-Boot] [PATCH v4 4/4] dm: video: support increased intensity (bold) Heinrich Schuchardt
@ 2018-03-06  9:16 ` Anatolij Gustschin
  4 siblings, 0 replies; 8+ messages in thread
From: Anatolij Gustschin @ 2018-03-06  9:16 UTC (permalink / raw)
  To: u-boot

Hi Heinrich,

On Thu,  8 Feb 2018 21:47:08 +0100
Heinrich Schuchardt xypron.glpk at gmx.de wrote:
...
> Heinrich Schuchardt (4):
>   dm: video: show correct colors in graphical console
>   dm: video: correctly clean background in 16bit mode
>   dm: video: use constants to refer to colors
>   dm: video: support increased intensity (bold)
> 
>  drivers/video/vidconsole-uclass.c | 86 ++++++++++++++++++++++++++-------------
>  drivers/video/video-uclass.c      | 38 +++++++++++++----
>  include/video.h                   | 13 +++++-
>  include/video_console.h           | 43 ++++++++++++++++++++
>  test/dm/video.c                   |  2 +-
>  5 files changed, 142 insertions(+), 40 deletions(-)

Series applied to u-boot-video/next, thanks!

--
Anatolij

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2018-03-06  9:16 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-08 20:47 [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support Heinrich Schuchardt
2018-02-08 20:47 ` [U-Boot] [PATCH v4 1/4] dm: video: show correct colors in graphical console Heinrich Schuchardt
2018-02-08 20:47 ` [U-Boot] [PATCH v4 2/4] dm: video: correctly clean background in 16bit mode Heinrich Schuchardt
2018-02-08 20:47 ` [U-Boot] [PATCH v4 3/4] dm: video: use constants to refer to colors Heinrich Schuchardt
2018-02-12 14:35   ` Simon Glass
2018-02-08 20:47 ` [U-Boot] [PATCH v4 4/4] dm: video: support increased intensity (bold) Heinrich Schuchardt
2018-02-09 16:06   ` Simon Glass
2018-03-06  9:16 ` [U-Boot] [PATCH v4 0/4] dm: video: Correct color ANSI escape sequence support Anatolij Gustschin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox