dm: video: Add a temporary work-around for old stdout var
PATCH 1/2 dm: video: Add a temporary work-around for old stdout var
Boards with a saved environment may use 'lcd' in their stdout environment variable, expecting that this will enable output to the LCD. When the board moves to use driver model for video, this will no-longer work. Add a work-around to fix this. A warning messages is printed, and we will remove the work-around at the end of 2016.
---
common/console.c | 8 ++++++++ drivers/video/Kconfig | 10 ++++++++++ 2 files changed, 18 insertions(+)
common/console.c +8 -0
@@ -650,6 +650,10 @@ struct stdio_dev *search_device(int flags, const char *name)struct stdio_dev *dev; dev =stdio_get_by_name (name); +#ifdef CONFIG_VIDCONSOLE_AS_LCD +if (!dev && !strcmp (name,"lcd" )) + dev =stdio_get_by_name ("vidconsole" ); +#endif if (dev && (dev->flags & flags))return dev;
@@ -795,6 +799,10 @@ done:#ifndef CONFIG_SYS_CONSOLE_INFO_QUIET stdio_print_current_devices ();#endif /* CONFIG_SYS_CONSOLE_INFO_QUIET */ +#ifdef CONFIG_VIDCONSOLE_AS_LCD +if (strstr (stdoutname,"lcd" )) +printf ("Warning: Please change 'lcd' to 'vidconsole' in stdout/stderr environment vars\n" ); +#endif #ifdef CONFIG_SYS_CONSOLE_ENV_OVERWRITE /* set the environment variables (will overwrite previous env settings) */
drivers/video/Kconfig +10 -0
@@ -57,6 +57,16 @@ config VIDEO_ROTATION struct video_priv: 0=unrotated, 1=90 degrees clockwise, 2=180 degrees, 3=270 degrees. +config VIDCONSOLE_AS_LCD + bool "Use 'vidconsole' when 'lcd' is seen in stdout" + depends on DM_VIDEO + help + This is a work-around for boards which have 'lcd' in their stdout + environment variable, but have moved to use driver model for video. + In this case the console will no-longer work. While it is possible + to update the environment, the breakage may be confusing for users. + This option will be removed around the end of 2016. + config VIDEO_VESA bool "Enable VESA video driver support" default n
Signature · 1 line
2.7.0.rc3.207.g0ac5344
PATCH 2/2 video: tegra: Enable the 'lcd' env variable work-around
Enable this option on all tegra boards.
---
arch/arm/mach-tegra/Kconfig | 1 + 1 file changed, 1 insertion(+)
arch/arm/mach-tegra/Kconfig +1 -0
@@ -14,6 +14,7 @@ config TEGRA_COMMON select DM_SPI select DM_SPI_FLASH select OF_CONTROL + select VIDCONSOLE_AS_LCD config TEGRA_ARMV7_COMMON bool "Tegra 32-bit common options"
Signature · 1 line
2.7.0.rc3.207.g0ac5344
PATCH 2/2 video: tegra: Enable the 'lcd' env variable work-around
Quoted 7 lines · On Sat, 6 Feb 2016 14:31:38 -0700 Simon Glass sjg at chromium.org wrote:
Enable this option on all tegra boards.
Signed-off-by Simon Glass <[email protected]>---
arch/arm/mach-tegra/Kconfig | 1 + 1 file changed, 1 insertion(+)
PATCH 2/2 video: tegra: Enable the 'lcd' env variable work-around
In reply to Simon GlassQuoted 7 lines · On Sat, 6 Feb 2016 14:31:38 -0700 Simon Glass sjg at chromium.org wrote:
Enable this option on all tegra boards.
Signed-off-by Simon Glass <[email protected]>---
arch/arm/mach-tegra/Kconfig | 1 + 1 file changed, 1 insertion(+)
applied to u-boot-video/master, thanks!
--
Anatolij
PATCH 1/2 dm: video: Add a temporary work-around for old stdout var
In reply to Simon GlassHi Simon,
Quoted 6 lines · On Sat, 6 Feb 2016 14:31:37 -0700 Simon Glass sjg at chromium.org wrote:
Boards with a saved environment may use 'lcd' in their stdout environment variable, expecting that this will enable output to the LCD. When the board moves to use driver model for video, this will no-longer work. Add a work-around to fix this. A warning messages is printed, and we will remove the work-around at the end of 2016.
Quoted 6 lines
Signed-off-by Simon Glass <[email protected]>---
common/console.c | 8 ++++++++ drivers/video/Kconfig | 10 ++++++++++ 2 files changed, 18 insertions(+)
--
Anatolij
PATCH 1/2 dm: video: Add a temporary work-around for old stdout var
In reply to Simon GlassQuoted 5 lines · Simon Glass
Boards with a saved environment may use 'lcd' in their stdout environment variable, expecting that this will enable output to the LCD. When the board moves to use driver model for video, this will no-longer work. Add a work-around to fix this. A warning messages is printed, and we will remove the work-around at the end of 2016.
I tested u-boot-dm/tegra-working which I assume is the same as these patches, so the series,
But...
drivers/video/Kconfig config VIDEO_ROTATION · line 68
Quoted 11 lines
drivers/video/Kconfig +9
-0+config VIDCONSOLE_AS_LCD + bool "Use 'vidconsole' when 'lcd' is seen in stdout" + depends on DM_VIDEO + help + This is a work-around for boards which have 'lcd' in their stdout + environment variable, but have moved to use driver model for video. + In this case the console will no-longer work. While it is possible + to update the environment, the breakage may be confusing for users. + This option will be removed around the end of 2016.
Removing this option at the end of 2016 is simply going to cause the exact same problem then. Is there any harm in simply not deprecating this feature? I suppose at least there's a warning that people should convert over, so perhaps they will and so the chances of people getting bitten by this well be less by then.
PATCH 1/2 dm: video: Add a temporary work-around for old stdout var
Hi Stephen,
Quoted 35 lines · Stephen Warren
Quoted 7 lines · Simon Glass
Boards with a saved environment may use 'lcd' in their stdout environment variable, expecting that this will enable output to the LCD. When the board
moves to use driver model for video, this will no-longer work. Add a work-around to fix this. A warning messages is printed, and we will remove the work-around at the end of 2016.I tested u-boot-dm/tegra-working which I assume is the same as these patches, so the series,
Tested-by Stephen Warren <[email protected]>But...
Quoted 8 lines
drivers/video/Kconfig +5
-0+config VIDCONSOLE_AS_LCD + bool "Use 'vidconsole' when 'lcd' is seen in stdout" + depends on DM_VIDEO + help + This is a work-around for boards which have 'lcd' in theirQuoted 8 lines
stdout
+ environment variable, but have moved to use driver model for
video.
+ In this case the console will no-longer work. While it is
possible
+ to update the environment, the breakage may be confusing for
users.
+ This option will be removed around the end of 2016.
Quoted 5 lines
Removing this option at the end of 2016 is simply going to cause the exact same problem then. Is there any harm in simply not deprecating this feature? I suppose at least there's a warning that people should convert over, so perhaps they will and so the chances of people getting bitten by this well be less by then.
Also we do need people to keep up with things to some extent. Otherwise we end up with cruft that confuses people. There is a prominent run-time message that people will see in the meantime.
What's the status of this series now? I'd like to see if it can be applied.
Regards,
Simon
PATCH 1/2 dm: video: Add a temporary work-around for old stdout var
In reply to Simon GlassHi Simon,
Quoted 6 lines · On Sat, 6 Feb 2016 14:31:37 -0700 Simon Glass sjg at chromium.org wrote:
Boards with a saved environment may use 'lcd' in their stdout environment variable, expecting that this will enable output to the LCD. When the board moves to use driver model for video, this will no-longer work. Add a work-around to fix this. A warning messages is printed, and we will remove the work-around at the end of 2016.
Quoted 6 lines
Signed-off-by Simon Glass <[email protected]>---
common/console.c | 8 ++++++++ drivers/video/Kconfig | 10 ++++++++++ 2 files changed, 18 insertions(+)
applied to u-boot-video/master, thanks!
--
Anatolij