Hi Nikita Kiryanov,

On 02/03/2015 07:32 PM, Nikita Kiryanov wrote:
This series is part of my ongoing efforts to cleanup common/lcd code (and at
some point merge it with the CONFIG_VIDEO code).
This series focuses on eliminating platform specific #defines from lcd.c code,
and then adds a few platform independent code refactors and cleanups on top of
that. A small note on the series:

- The patch "lcd: split configuration_get_cmap" turned out to be a little
problematic: the goal was to move all platform specific code to the appropriate
lcd/fb drivers, and keep the generic case in lcd.c as a weak function.
This was not possible to do for configuration_get_cmap(), because the weak
version still has to compile even if it is overridden, and unfortunately the
generic case references panel_info, which is a struct that varies depending on
the configuration, and does not always have a cmap field. This demonstrated that
the visibility of panel_info should be reviewed, and that there might be a need
for some kind of lcd_generic driver.
Since this may warrant a series of its own, I opted to tentatively implement
the generic configuration_get_cmap() function in lcd.h as static function, and
plan to revisit it in the next series.

The end result was compile tested on arm and powerpc, and tested on cm_t35
(splash screen feature). Rebased on current mainline.

Changes in V2:
- Minor commit message changes (such as s/platform specific/platform-specific/,
   s/Raspberry Pi config file is updated to compile the new file/Raspberry Pi 
is updated to accommodate the changes/)
- patch 2: define configuration_get_cmap() prototype only once.

Cc: Bo Shen <voice.s...@atmel.com>
Cc: Simon Glass <s...@chromium.org>
Cc: Anatolij Gustschin <ag...@denx.de>

Nikita Kiryanov (13):
   lcd: move platform-specific structs to their own headers
   lcd: split configuration_get_cmap
   lcd: atmel: move atmel-specific fb_put_word to atmel_lcdfb
   lcd: mpc8xx: move mpc823-specific fb_put_byte to mpc8xx_lcd.c
   lcd: atmel: introduce lcd_logo_set_cmap
   lcd: mpc823: move mpc823-specific lcd_logo_set_cmap code to
     mpc8xx_lcd.c
   lcd: logo: move generic cmap setting to lcd_logo_set_cmap()
   lcd: introduce lcd_set_cmap
   lcd: remove unused includes
   lcd: various cleanups
   lcd: rename bitmap_plot to better represent its functionality
   lcd: dt: extract simplefb support
   lcd: split splash code into its own function

Tested OK on at91sam9g10ek, at91sam9x5ek boards.

Tested-by: Bo Shen <voice.s...@atmel.com>

  board/raspberrypi/rpi/rpi.c  |   1 +
  common/Makefile              |   1 +
  common/lcd.c                 | 358 ++++++++++---------------------------------
  common/lcd_simplefb.c        |  59 +++++++
  common/splash.c              |  16 ++
  drivers/video/atmel_hlcdfb.c |  13 ++
  drivers/video/atmel_lcdfb.c  |  51 ++++++
  drivers/video/exynos_fb.c    |   9 ++
  drivers/video/mpc8xx_lcd.c   |  29 ++++
  drivers/video/pxa_lcd.c      |   6 +
  include/atmel_lcd.h          |  38 +++++
  include/exynos_lcd.h         |  81 ++++++++++
  include/fdt_simplefb.h       |  14 ++
  include/lcd.h                | 311 ++++++-------------------------------
  include/mpc823_lcd.h         |  43 ++++++
  include/pxa_lcd.h            |  80 ++++++++++
  include/splash.h             |  11 +-
  17 files changed, 574 insertions(+), 547 deletions(-)
  create mode 100644 common/lcd_simplefb.c
  create mode 100644 include/atmel_lcd.h
  create mode 100644 include/exynos_lcd.h
  create mode 100644 include/fdt_simplefb.h
  create mode 100644 include/mpc823_lcd.h
  create mode 100644 include/pxa_lcd.h


Best Regards,
Bo Shen
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to