All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v2 0/19] tegra: Add display driver and LCD support for Seaboard
@ 2012-06-13 16:19 Simon Glass
  2012-06-13 16:19 ` [U-Boot] [PATCH v2 01/19] Add gpio_request() to asm-generic header Simon Glass
                   ` (16 more replies)
  0 siblings, 17 replies; 67+ messages in thread
From: Simon Glass @ 2012-06-13 16:19 UTC (permalink / raw)
  To: u-boot

This series adds support for the Tegra2x's display peripheral. This
supports the LCD display on Seaboard and we use this to enable console
output in U-Boot on the LCD.

Configuration is via the device tree. Proposed bindings are included
in this series.

I looked at the message "[RFC 4/4] drm: Add NVIDIA Tegra support" on
device-tree-discuss. There does not seem to be any conclusion for now.

While I agree EDID is convenient for machines I would prefer to provide
a user-friendly way of selecting LCD settings as well, with EDID more
as a fallback and auto-detection when available.

To improve performance two optimisations are offered:

1. The LCD frame buffer is cached, with the cache being flushed after
each newline sent to putc(), and in a few other situations. This
dramatically increases performance (around 10x). This requires a few
additions to the ARM cache support.

2. The console supports scrolling in steps of more than 1 line. This
speeds up scrolling output considerably, particularly commands like
'printenv' which display a lot of output. This requires a new CONFIG
and a change to the console_scrollup() function.

Changes in v2:
- Add new patch to use const in pinmux_config_pingroup/table()
- Add nvidia prefix to device tree properties
- Align tegra display using new CONFIG_LCD_ALIGNMENT feature
- Put the LCD cache flush logic into lcd_putc() instead of lcd_puts()
- Update LCD driver to deal with new fdt bindings
- Update seaboard LCD definitions for new fdt binding
- Use a more generic config CONFIG_LCD_ALIGNMENT for lcd alignment
- Use const where possible in funcmux

Mayuresh Kulkarni (1):
  tegra: Enable display/lcd support on Seaboard

Simon Glass (17):
  Add gpio_request() to asm-generic header
  fdt: Add debugging to fdtdec_get_int/addr()
  fdt: Add function to look up a phandle's register address
  fdt: Add header guard to fdtdec.h
  tegra: Use const for pinmux_config_pingroup/table()
  tegra: Add display support to funcmux
  tegra: fdt: Add LCD definitions for Tegra
  tegra: Add support for PWFM
  tegra: Add LCD driver
  tegra: Add LCD support to Nvidia boards
  arm: Add control over cachability of memory regions
  lcd: Add CONFIG_LCD_ALIGNMENT to select frame buffer alignment
  lcd: Add support for flushing LCD fb from dcache after update
  tegra: Align LCD frame buffer to section boundary
  tegra: Support control of cache settings for LCD
  tegra: fdt: Add LCD definitions for Seaboard
  lcd: Add CONSOLE_SCROLL_LINES option to speed console

Wei Ni (1):
  tegra: Add SOC support for display/lcd

 README                                          |   16 +
 arch/arm/cpu/armv7/cache_v7.c                   |   11 +
 arch/arm/cpu/armv7/tegra2/Makefile              |    1 +
 arch/arm/cpu/armv7/tegra2/display.c             |  271 +++++++++++
 arch/arm/cpu/armv7/tegra2/funcmux.c             |   39 ++
 arch/arm/cpu/armv7/tegra2/pinmux.c              |    4 +-
 arch/arm/cpu/armv7/tegra2/pwfm.c                |   40 ++
 arch/arm/dts/tegra20.dtsi                       |   25 +
 arch/arm/include/asm/arch-tegra2/dc.h           |  544 +++++++++++++++++++++++
 arch/arm/include/asm/arch-tegra2/display.h      |  133 ++++++
 arch/arm/include/asm/arch-tegra2/pinmux.h       |    4 +-
 arch/arm/include/asm/arch-tegra2/pwfm.h         |   54 +++
 arch/arm/include/asm/system.h                   |   30 ++
 arch/arm/lib/cache-cp15.c                       |   62 +++-
 board/nvidia/common/board.c                     |   21 +-
 board/nvidia/dts/tegra2-seaboard.dts            |   21 +
 common/cmd_echo.c                               |    3 +-
 common/lcd.c                                    |   84 +++-
 doc/device-tree-bindings/video/nvidia-video.txt |   88 ++++
 drivers/video/Makefile                          |    1 +
 drivers/video/tegra.c                           |  392 ++++++++++++++++
 include/asm-generic/gpio.h                      |    9 +
 include/configs/seaboard.h                      |   12 +-
 include/configs/tegra2-common.h                 |    3 +
 include/fdtdec.h                                |   17 +
 include/lcd.h                                   |   11 +
 lib/fdtdec.c                                    |   34 ++-
 27 files changed, 1891 insertions(+), 39 deletions(-)
 create mode 100644 arch/arm/cpu/armv7/tegra2/display.c
 create mode 100644 arch/arm/cpu/armv7/tegra2/pwfm.c
 create mode 100644 arch/arm/include/asm/arch-tegra2/dc.h
 create mode 100644 arch/arm/include/asm/arch-tegra2/display.h
 create mode 100644 arch/arm/include/asm/arch-tegra2/pwfm.h
 create mode 100644 doc/device-tree-bindings/video/nvidia-video.txt
 create mode 100644 drivers/video/tegra.c

-- 
1.7.7.3

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

end of thread, other threads:[~2012-09-27 20:58 UTC | newest]

Thread overview: 67+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-06-13 16:19 [U-Boot] [PATCH v2 0/19] tegra: Add display driver and LCD support for Seaboard Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 01/19] Add gpio_request() to asm-generic header Simon Glass
2012-09-21 19:30   ` Anatolij Gustschin
2012-09-27 20:58     ` Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 05/19] tegra: Use const for pinmux_config_pingroup/table() Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 06/19] tegra: Add display support to funcmux Simon Glass
2012-06-14 23:24   ` Stephen Warren
2012-07-11  3:48     ` Simon Glass
2012-06-13 16:19 ` [PATCH v2 07/19] tegra: fdt: Add LCD definitions for Tegra Simon Glass
2012-06-13 16:19   ` [U-Boot] " Simon Glass
2012-06-14 23:32   ` Stephen Warren
2012-06-14 23:32     ` [U-Boot] " Stephen Warren
2012-07-11  4:44     ` Simon Glass
2012-07-11  4:44       ` [U-Boot] " Simon Glass
2012-07-11  5:48       ` Thierry Reding
2012-07-11  5:48         ` [U-Boot] " Thierry Reding
2012-07-12  8:21         ` Simon Glass
2012-07-12  8:21           ` [U-Boot] " Simon Glass
2012-07-12  8:40           ` Thierry Reding
2012-07-12  8:40             ` [U-Boot] " Thierry Reding
2012-07-12  9:22             ` Alex Courbot
2012-07-12  9:22               ` [U-Boot] " Alex Courbot
2012-06-13 16:19 ` [U-Boot] [PATCH v2 08/19] tegra: Add support for PWFM Simon Glass
2012-06-14 23:35   ` Stephen Warren
2012-07-11  4:45     ` Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 09/19] tegra: Add SOC support for display/lcd Simon Glass
2012-06-14 23:39   ` Stephen Warren
     [not found]     ` <CAPnjgZ2bqPx+dHD9m+NuFrAbBeP1PQxHokLMwvD1-3OnC6ZHtg@mail.gmail.com>
2012-07-11  5:12       ` Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 10/19] tegra: Add LCD driver Simon Glass
2012-06-14 23:45   ` Stephen Warren
2012-07-11  4:56     ` Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 11/19] tegra: Add LCD support to Nvidia boards Simon Glass
2012-06-14 23:47   ` Stephen Warren
2012-07-11  4:58     ` Simon Glass
2012-07-23 20:25       ` Stephen Warren
2012-09-27 19:15         ` Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 12/19] arm: Add control over cachability of memory regions Simon Glass
2012-06-14 23:49   ` Stephen Warren
2012-07-11  5:01     ` Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 13/19] lcd: Add CONFIG_LCD_ALIGNMENT to select frame buffer alignment Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 14/19] lcd: Add support for flushing LCD fb from dcache after update Simon Glass
2012-06-14 23:51   ` Stephen Warren
2012-07-11  5:06     ` Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 15/19] tegra: Align LCD frame buffer to section boundary Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 16/19] tegra: Support control of cache settings for LCD Simon Glass
     [not found] ` <1339604395-6621-1-git-send-email-sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
2012-06-13 16:19   ` [PATCH v2 02/19] fdt: Add debugging to fdtdec_get_int/addr() Simon Glass
2012-06-13 16:19     ` [U-Boot] " Simon Glass
2012-09-21 19:39     ` Anatolij Gustschin
2012-09-21 19:56       ` Anatolij Gustschin
2012-06-13 16:19   ` [PATCH v2 03/19] fdt: Add function to look up a phandle's register address Simon Glass
2012-06-13 16:19     ` [U-Boot] " Simon Glass
2012-06-14 23:17     ` Stephen Warren
2012-06-14 23:17       ` [U-Boot] " Stephen Warren
2012-07-11  5:10       ` Simon Glass
2012-07-11  5:10         ` [U-Boot] " Simon Glass
2012-06-13 16:19   ` [PATCH v2 04/19] fdt: Add header guard to fdtdec.h Simon Glass
2012-06-13 16:19     ` [U-Boot] " Simon Glass
2012-06-13 16:19   ` [PATCH v2 17/19] tegra: fdt: Add LCD definitions for Seaboard Simon Glass
2012-06-13 16:19     ` [U-Boot] " Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 18/19] lcd: Add CONSOLE_SCROLL_LINES option to speed console Simon Glass
2012-06-13 16:19 ` [U-Boot] [PATCH v2 19/19] tegra: Enable display/lcd support on Seaboard Simon Glass
2012-06-13 22:57 ` [U-Boot] [PATCH v2 0/19] tegra: Add display driver and LCD support for Seaboard Stephen Warren
2012-06-13 23:03   ` Stephen Warren
2012-06-13 23:09     ` Stephen Warren
2012-06-25 21:03   ` Tom Warren
2012-06-27  5:11     ` Simon Glass
2012-07-11 10:04       ` Simon Glass

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.