06 May, 2020

1 commit

  • Support EPDC.
    E-Ink feature is supported by i.MX6DL/SL/SLL/ULL and i.MX7D.

    This driver supports user defined logo file, if there is no logo file, it will
    draw a black border around a white screen.

    If need to enable EPDC, a waveform file is required to let all
    work.

    Since we need LCD_MONOCHROME mode for EPDC, we introduce LCD_MONOCHROME
    support.

    Please refer to Linux Reference Manual for how to flash WAVEFORM file.

    Signed-off-by: Peng Fan
    Signed-off-by: Robby Cai
    Signed-off-by: Nitin Garg
    Signed-off-by: Ye.Li
    (cherry picked from commit a7244f279cc3c3994bcd103f5e9a183b1075ae71)
    (cherry picked from commit 21bf1c38b7d75c31875fb02a972c458f25d9c33a)
    (cherry picked from commit 237742f73998b35dd896592e19f1e119e72baa71)

    Peng Fan
     

12 Aug, 2019

1 commit


07 May, 2018

1 commit

  • When U-Boot started using SPDX tags we were among the early adopters and
    there weren't a lot of other examples to borrow from. So we picked the
    area of the file that usually had a full license text and replaced it
    with an appropriate SPDX-License-Identifier: entry. Since then, the
    Linux Kernel has adopted SPDX tags and they place it as the very first
    line in a file (except where shebangs are used, then it's second line)
    and with slightly different comment styles than us.

    In part due to community overlap, in part due to better tag visibility
    and in part for other minor reasons, switch over to that style.

    This commit changes all instances where we have a single declared
    license in the tag as both the before and after are identical in tag
    contents. There's also a few places where I found we did not have a tag
    and have introduced one.

    Signed-off-by: Tom Rini

    Tom Rini
     

12 Jun, 2017

1 commit

  • There was for long time no activity in the 8xx area.
    We need to go further and convert to Kconfig, but it
    turned out, nobody is interested anymore in 8xx,
    so remove it (with a heavy heart, knowing that I remove
    here the root of U-Boot).

    Signed-off-by: Heiko Schocher

    Heiko Schocher
     

24 Jan, 2016

1 commit

  • The testpattern of the lcd was only working in 8bit mode(2x3 tiles in
    different colors). With this patch now 8bit and 16bit is supported.
    In 16bit mode there are 2x4 tiles in different colors.
    The number of LCD-colors is defined in the include/configs/.h

    Signed-off-by: Andreas Neubacher
    Signed-off-by: Anatolij Gustschin

    Andreas Neubacher
     

21 Jan, 2016

1 commit


18 Apr, 2015

1 commit

  • Sometimes, for example if the display is mounted in portrait mode or even if it
    is mounted landscape but rotated by 180 degrees, we need to rotate our content
    of the display respectively the framebuffer, so that user can read the messages
    which are printed out.

    For this we introduce the feature called "CONFIG_LCD_ROTATION", this may be
    defined in the board-configuration if needed. After this the lcd_console will
    be initialized with a given rotation from "vl_rot" out of "vidinfo_t" which is
    provided by the board specific code.

    If CONFIG_LCD_ROTATION is not defined, the console will be initialized with
    0 degrees rotation.

    Signed-off-by: Hannes Petermaier
    Signed-off-by: Hannes Petermaier
    Acked-by: Nikita Kiryanov
    [agust: fixed 'struct vidinfo' has no member named 'vl_rot' errors]
    Signed-off-by: Anatolij Gustschin

    Hannes Petermaier
     

10 Feb, 2015

4 commits

  • We now have api functions that can support compiling simplefb code as its own
    module. Since this code is not part of the display functionality, extract it
    to its own file.

    Raspberry Pi is updated to accommodate the changes.

    Signed-off-by: Nikita Kiryanov
    Acked-by: Stephen Warren
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Simon Glass
    Cc: Anatolij Gustschin
    Cc: Stephen Warren

    Nikita Kiryanov
     
  • This cleanup mostly focuses on removing unnecessary whitespace and comments
    which are superfluous and/or do not conform to the coding style.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • configuration_get_cmap() is multiple platform-specific functions stuffed into
    one function. Split it into multiple versions, and move each version to the
    appropriate driver to reduce the #ifdef complexity.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Bo Shen
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • common/lcd code is full of platform-specific code and definitions, which
    ideally should reside with the respective driver code. Take a step towards that
    goal by moving platform-specific structs from lcd.h to their own header files.

    The structs for the generic case (the #else for all the platform-specific
    cases) is retained in lcd.h as the default case.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Bo Shen
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     

11 Jan, 2015

3 commits

  • common/lcd.c is a mix of code portions that do different but related
    things. To improve modularity, the various code portions should be split
    into their own modules. Separate lcd console code into its own file.

    Signed-off-by: Nikita Kiryanov
    Cc: Anatolij Gustschin
    Cc: Simon Glass
    Cc: Stephen Warren
    Acked-by: Simon Glass
    Tested-by: Simon Glass

    Nikita Kiryanov
     
  • Introduce lcd_getbgcolor() and lcd_getfgcolor(), and use them where
    applicable.

    This is a preparatory step for extracting lcd console code into its own
    file.

    Signed-off-by: Nikita Kiryanov
    Cc: Anatolij Gustschin
    Cc: Simon Glass
    Acked-by: Simon Glass

    Nikita Kiryanov
     
  • No one is using LCD_MONOCHROME; remove related code.

    Signed-off-by: Nikita Kiryanov
    Cc: Wolfgang Denk
    Cc: Anatolij Gustschin
    Acked-by: Simon Glass

    Nikita Kiryanov
     

13 Nov, 2014

1 commit


10 Aug, 2014

2 commits


08 Jul, 2014

1 commit


18 Mar, 2014

1 commit

  • Add a simple LCD driver which uses SDL to display the image. We update the
    image regularly, while still providing for reasonable performance.

    Adjust the common lcd code to support sandbox.

    For command-line runs we do not want the LCD to be displayed, so add a
    --show_lcd option to enable it.

    Tested-by: Che-Liang Chiou
    Signed-off-by: Simon Glass

    Simon Glass
     

03 Feb, 2014

1 commit

  • Changes:
    - check image bpp instead of resolution when returns logo address
    - remove 32bpp logo
    - add 16bpp logo in two formats: bmp and gzipped bmp
    - init logo address with "0" for unsupported bpp mode
    - update boards configs with proper image size for gunzip
    - extend structure vidinfo by two fields: logo_x_offset and logo_y_offset.

    Signed-off-by: Przemyslaw Marczak
    Tested-by: Hyungwon Hwang
    Signed-off-by: Minkyu Kang

    Przemyslaw Marczak
     

15 Oct, 2013

1 commit


24 Jul, 2013

1 commit


02 Jul, 2013

2 commits


06 Jun, 2013

1 commit

  • simple-framebuffer is a new device tree binding that describes a pre-
    configured frame-buffer memory region and its format. The Linux kernel
    contains a driver that supports this binding. Implement functions to
    create a DT node (or fill in an existing node) with parameters that
    describe the framebuffer format that U-Boot is using.

    This will be immediately used by the Raspberry Pi board in U-Boot, and
    likely will be used by the Samsung ARM ChromeBook support soon too. It
    could well be used by many other boards (e.g. Tegra boards with built-in
    LCD panels, which aren't yet supported by the Linux kernel).

    Signed-off-by: Stephen Warren
    Acked-by: Simon Glass

    Stephen Warren
     

13 Apr, 2013

1 commit


27 Mar, 2013

1 commit

  • Replaced the functionality of callbacks by using a standard set of functions.
    Instead of implementing and hooking up a callback, put the same code in one of
    the standard set of functions by overriding it.

    This patch is tested only on SMDK5250.
    For Trats and universal_c210 board, it is only compile tested.

    Signed-off-by: Ajay Kumar
    Signed-off-by: Minkyu Kang

    Ajay Kumar
     

21 Mar, 2013

5 commits

  • Hide the console macros since some reference global data which is
    no longer present.

    cc: Anatolij Gustschin
    Signed-off-by: Jeroen Hofstee

    Jeroen Hofstee
     
  • - Make the brackets of the function calls more consistent
    - Remove really unnecessary brackets
    - Removes the extern from the function definitions
    - Remove curly brackets from single line statements
    - Remove lcd_setmem proto since it is already in common.h
    - Cleanup comments, remove useless comments
    - Remove NOT_USED_SO_FAR ifdef
    - Cleanup coding style

    cc: Anatolij Gustschin
    Signed-off-by: Jeroen Hofstee
    [agust: rebased the original patch]
    Signed-off-by: Anatolij Gustschin

    Jeroen Hofstee
     
  • lcd_base is available as gd->fb_base as well, there is no need
    to keep a seperate copy.

    For completeness the ack of Bo Shen is for the atmel part.
    Cc: Alessandro Rubini
    Cc: Anatolij Gustschin
    Cc: Bo Shen
    Cc: Haavard Skinnemoen
    Cc: Kyungmin Park
    Cc: Marek Vasut
    Cc: Minkyu Kang
    Cc: Nikita Kiryanov
    Cc: Simon Glass
    Cc: Stelian Pop
    Cc: Tom Warren
    Acked-by: Bo Shen
    Signed-off-by: Jeroen Hofstee
    [agust: also fix cm_t35 board while rebasing]
    Signed-off-by: Anatolij Gustschin

    Jeroen Hofstee
     
  • console_col, console_row, lcd_line_length, lcd_console_address had
    to be declared in board / driver specific code, but were not actually
    used there on many boards. Get rid of the global variables.

    for completeness, the ack of Bo Shen is for the atmel part
    Cc: Alessandro Rubini
    Cc: Anatolij Gustschin
    Cc: Bo Shen
    Cc: Kyungmin Park
    Cc: Marek Vasut
    Cc: Minkyu Kang
    Cc: Nikita Kiryanov
    Cc: Simon Glass
    Cc: Stelian Pop
    Cc: Tom Warren
    Acked-by: Bo Shen
    Signed-off-by: Jeroen Hofstee
    [agust: rebased and fixed cm_t35 board]
    Signed-off-by: Anatolij Gustschin

    Jeroen Hofstee
     
  • lcd_color_fg and lcd_color_bg had to be declared in board specific
    code, but were not actually used there; in addition, we have getter /
    setter functions for these, which were not used either.

    Get rid of the global variables, and use the getter function where
    needed (so far no setter calls are needed).

    Signed-off-by: Wolfgang Denk
    Cc: Alessandro Rubini
    Cc: Anatolij Gustschin
    Cc: Bo Shen
    Cc: Haavard Skinnemoen
    Cc: Kyungmin Park
    Cc: Marek Vasut
    Cc: Minkyu Kang
    Cc: Nikita Kiryanov
    Cc: Simon Glass
    Cc: Stelian Pop
    Cc: Tom Warren
    Acked-by: Simon Glass
    Acked-by: Jeroen Hofstee
    [agust: also fixed cm_t35 board while rebasing]
    Signed-off-by: Anatolij Gustschin

    Wolfgang Denk
     

09 Mar, 2013

1 commit

  • Currently there is no logical place to put the code that prepares the
    splash image data. The splash image data should be ready in memory
    before bmp_display() is called, and after the environment is ready
    (since lcd.c looks for the splash image in an address specified by
    the environment variable "splashimage").

    Our window of opportunity in board_init_r() is therefore: between
    env_relocate() and bmp_display(), and from the available options
    only the lcd related functions in drv_lcd_init() seem appropriate
    for such lcd oriented code.

    Add the option to prepare the splash image data in lcd_logo() right
    before it is sent to be displayed.

    Cc: Anatolij Gustschin
    Cc: Jeroen Hofstee
    Signed-off-by: Nikita Kiryanov
    Signed-off-by: Igor Grinberg

    Nikita Kiryanov
     

10 Dec, 2012

1 commit


19 Nov, 2012

2 commits


07 Nov, 2012

1 commit

  • Create a basic API to provide access to lcd parameters such as screen
    size, and to position the cursor on the screen.

    This matches up with the video API for the same purpose. Unfortunately
    they are not yet combined.

    Signed-off-by: Vadim Bendebury
    Signed-off-by: Simon Glass

    Vadim Bendebury
     

01 Sep, 2012

1 commit


05 Jun, 2012

1 commit

  • The new Atmel SoC (at91sam9x5 series and at91sam9n12) add a totally
    different LCD controller. Add this new driver to support it.

    Using CONFIG_ATMEL_HLCD (distinguish with CONFIG_ATMEL_LCD) to enable
    this in board configuration file.

    Signed-off-by: Bo Shen
    Signed-off-by: Anatolij Gustschin

    Bo Shen
     

25 May, 2012

1 commit

  • This patch supports drawing 32bpp bitmap TIZEN logo in exynos fb.
    "tizen_hd_logo.h" data is compressed from trats_logo.bmp to
    trats_logo.bmp.gz by gzip and converted to tizen_hd_logo.h header file
    format by some application. The logo data is decompressed in the exynos
    fb driver by bmp_display().

    Signed-off-by: Donghwa Lee
    Signed-off-by: Kyungmin Park
    Acked-by: Minkyu Kang
    Signed-off-by: Anatolij Gustschin

    Donghwa Lee