Hi, On 18 January 2016 at 19:52, Simon Glass <s...@chromium.org> wrote: > This series starts the process of converting LCD and video devices over to > use driver model. Both now use a very similar API thanks to earlier work by > Nikita Kiryanov. With the driver-model conversion these will end up unified > in a single uclass. > > Unfortunately there are different features supported by each. This > implementation provides for a common set of features which should serve > most purposes. The intent is to support: > > - bitmap devices with 8, 16 and 32 bits per pixel > - text console wih white on black or vice versa > - rotated text console > - bitmap display (BMP format) > > More can be added as additional boards are ported over to use driver model > for video. > > The name 'video' is chosen for the uclass since it is more generic than LCD. > Another option would be 'display' but that would introduce a third concept > to U-Boot which seems like the wrong approach. > > The existing LCD and video init functions are not needed now, so this uclass > does not implement them. This includes lcd_ctrl_init(), lcd_enable() and > video_init(). > > Tests are provided to check that console text and bitmap output is correct. > These should be able to be extended as more features are added. > > Future work will convert a few boards over to use driver model for video. > Likely targets are x86, exynos, tegra. Also, Rockchip LCD support will be > added using driver model (patches will likely be sent some time in January). > > Changes in v2: > - Fix Ebabling typo in comment > - Remove duplicated @fb_size line in common > - Fix comment for video_get_ysize() > - Fix reference to \n which should be \b > - Fix 'withthe' typo in comment > - Fix 'resolutino' typo in comment > > Simon Glass (14): > dm: video: Add a video uclass > dm: lcd: Avoid using the lcd.h header file with driver model > dm: video: Add a uclass for the text console > dm: video: Add a 'normal' text console driver > dm: video: Add a driver for a rotated text console > common: Move LCD and video memory reservation together > dm: common: Add memory reservation for the video uclass > dm: video: Implement the bmp command for driver model > dm: stdio: video: Plumb the video uclass into stdio > sandbox: Move CONFIG_VIDEO_SANDBOX_SDL to Kconfig > dm: video: sandbox: Convert sandbox to use driver model for video > dm: video: test: Add tests for the video uclass > dm: video: test: Add tests for rotated consoles > dm: video: test: Test that bitmap display works correctly > > arch/sandbox/dts/sandbox.dts | 1 + > arch/sandbox/dts/test.dts | 7 + > board/sandbox/sandbox.c | 17 -- > common/Makefile | 2 + > common/board_f.c | 71 ++++--- > common/cmd_bmp.c | 22 +- > common/lcd.c | 11 - > common/stdio.c | 19 +- > configs/sandbox_defconfig | 5 +- > drivers/serial/sandbox.c | 5 +- > drivers/video/Kconfig | 62 ++++++ > drivers/video/Makefile | 3 + > drivers/video/console_normal.c | 141 ++++++++++++ > drivers/video/console_rotate.c | 436 > ++++++++++++++++++++++++++++++++++++++ > drivers/video/sandbox_sdl.c | 90 ++++---- > drivers/video/vidconsole-uclass.c | 239 +++++++++++++++++++++ > drivers/video/video-uclass.c | 249 ++++++++++++++++++++++ > drivers/video/video_bmp.c | 353 ++++++++++++++++++++++++++++++ > include/asm-generic/global_data.h | 4 + > include/configs/sandbox.h | 13 +- > include/dm/test.h | 8 + > include/dm/uclass-id.h | 2 + > include/fdtdec.h | 1 - > include/lcd.h | 12 +- > include/video.h | 168 ++++++++++++++- > include/video_console.h | 136 ++++++++++++ > lib/fdtdec.c | 1 - > test/dm/Makefile | 1 + > test/dm/video.c | 271 +++++++++++++++++++++++ > tools/logos/denx-comp.bmp | Bin 0 -> 4148 bytes > 30 files changed, 2221 insertions(+), 129 deletions(-) > create mode 100644 drivers/video/console_normal.c > create mode 100644 drivers/video/console_rotate.c > create mode 100644 drivers/video/vidconsole-uclass.c > create mode 100644 drivers/video/video-uclass.c > create mode 100644 drivers/video/video_bmp.c > create mode 100644 include/video_console.h > create mode 100644 test/dm/video.c > create mode 100644 tools/logos/denx-comp.bmp > > -- > 2.6.0.rc2.230.g3dd15c0 >
This is available at u-boot-dm branch rbk-working if you are interested in trying it out. But it only works for sandbox. make O=sandbox sandbox_defconfig all ./sandbox/u-boot -Dl Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot