[U-Boot] [PATCH 00/23] dm: tegra: Convert tegra20 and tegra124 video drivers to driver model

Marcel Ziswiler marcel.ziswiler at toradex.com
Sat Jan 16 03:36:03 CET 2016


Hi Simon

On Thu, 2016-01-14 at 11:28 -0700, Simon Glass wrote:
> This series moves these two drivers over to use driver model for
> video.
> 
> This involves the following steps:
> - Sync up some device tree files with Linux
> - Implement a proper PWM driver
> - Clean up and unify the driver code
> - Modify the existing drivers to work with driver model
> 
> The tegra20 display driver uses device tree bindings invented in 2011
> before
> Linux had this or anyone was able to agree a standard. It seems
> possible to
> move it to the new bindings (like tegra124) except for the issue of
> time
> delays between stages. It isn't clear how this should work, and Linux
> implements this by including all LCD definitions in the kernel source
> code,
> and not using any delays. This causes strange display artifacts on
> the
> display when starting up, but perhaps is harmless to the display.
> Future
> work will sync up the device tree more for seaboard, and thus tidy
> this up
> for nvidia boards.
> 
> A bug in the keyboard driver is also fixed by this series. The series
> is
> tested on seaboard and nyan-big, the two boards I have which support
> a
> display.

I wanted to give that patch set a shot but could not figure out against
what to get it cleanly applied. Could you reveal its baseline or better
yet a git branch ready for testing?


> Simon Glass (23):
>   tegra: keyboard: Fix the init order
>   dm: video: Flush the cache after a puts()
>   tegra: mmc: Fix comments in the MMC driver init
>   tegra: dts: Sync up the tegra124 device tree files with Linux
>   tegra: dts: Sync up nyan-big files with Linux
>   tegra: gpio: Show the GPIO value for outputs
>   tegra: pwm: Add a driver for the tegra PWM
>   tegra: lcd: Merge tegra124-lcd.c into display.c
>   tegra: Allow driver model to be used for the PWM
>   tegra: Allow CONFIG_DM_VIDEO to be used as well as CONFIG_LCD
>   tegra: nyan-big: Move the LCD driver to driver model
>   tegra: video: Rename CONFIG_VIDEO_TEGRA to CONFIG_VIDEO_TEGRA20
>   tegra: dts: Sync tegra20.dtsi with Linux v4.4
>   tegra: video: Merge the display driver into one file
>   tegra: video: Move the check for CONFIG_OF_CONTROL to Kconfig
>   tegra: video: Merge the two config structures together
>   tegra: video: Convert tegra20 LCD driver to driver model
>   tegra: video: Remove the static variables
>   tegra: video: Move LCD enums into the driver
>   tegra: video: Move all fdt-decoding into a single function
>   tegra: Convert CONFIG_PWM_TEGRA to Kconfig
>   tegra: video: Move LCD driver to use the DM PWM driver
>   tegra: video: Clean up the old LCD/PWM driver code
> 
>  arch/arm/dts/tegra124-jetson-tk1.dts            |   13 +
>  arch/arm/dts/tegra124-nyan-big.dts              | 1676
> ++++++++++++++++++-----
>  arch/arm/dts/tegra124-nyan.dtsi                 |  718 ++++++++++
>  arch/arm/dts/tegra124-venice2.dts               |   14 +
>  arch/arm/dts/tegra124.dtsi                      |  693 ++++++++--
>  arch/arm/dts/tegra20-colibri.dts                |   22 +-
>  arch/arm/dts/tegra20-harmony.dts                |   44 +-
>  arch/arm/dts/tegra20-medcom-wide.dts            |   26 +-
>  arch/arm/dts/tegra20-paz00.dts                  |   43 +-
>  arch/arm/dts/tegra20-plutux.dts                 |    8 -
>  arch/arm/dts/tegra20-seaboard.dts               |   36 +-
>  arch/arm/dts/tegra20-tamonten.dtsi              |   15 +-
>  arch/arm/dts/tegra20-tec.dts                    |   10 +-
>  arch/arm/dts/tegra20-trimslice.dts              |   34 +-
>  arch/arm/dts/tegra20-ventana.dts                |   43 +-
>  arch/arm/dts/tegra20-whistler.dts               |   35 +-
>  arch/arm/dts/tegra20.dtsi                       |  541 ++++++--
>  arch/arm/include/asm/arch-tegra/dc.h            |    5 -
>  arch/arm/include/asm/arch-tegra/pwm.h           |   30 -
>  arch/arm/include/asm/arch-tegra20/display.h     |  108 --
>  arch/arm/mach-tegra/Kconfig                     |    1 +
>  arch/arm/mach-tegra/Makefile                    |    1 -
>  arch/arm/mach-tegra/board2.c                    |   24 +-
>  arch/arm/mach-tegra/pwm.c                       |   89 --
>  arch/arm/mach-tegra/tegra20/Makefile            |    2 -
>  arch/arm/mach-tegra/tegra20/display.c           |  378 -----
>  board/compal/paz00/paz00.c                      |    2 +-
>  board/toradex/colibri_t20/colibri_t20.c         |    2 +-
>  configs/colibri_t20_defconfig                   |   13 +-
>  configs/harmony_defconfig                       |    6 +
>  configs/medcom-wide_defconfig                   |    6 +
>  configs/nyan-big_defconfig                      |   11 +-
>  configs/paz00_defconfig                         |    6 +
>  configs/seaboard_defconfig                      |    6 +
>  configs/tec_defconfig                           |    6 +
>  configs/ventana_defconfig                       |    6 +
>  drivers/gpio/tegra_gpio.c                       |    5 +-
>  drivers/input/tegra-kbc.c                       |    2 +-
>  drivers/mmc/tegra_mmc.c                         |    4 +-
>  drivers/pwm/Kconfig                             |    9 +
>  drivers/pwm/Makefile                            |    3 +
>  drivers/pwm/tegra_pwm.c                         |   85 ++
>  drivers/video/Kconfig                           |   10 +
>  drivers/video/Makefile                          |    2 +-
>  drivers/video/simple_panel.c                    |    1 +
>  drivers/video/tegra.c                           |  659 +++++++--
>  drivers/video/tegra124/Makefile                 |    1 -
>  drivers/video/tegra124/display.c                |  184 ++-
>  drivers/video/tegra124/dp.c                     |   53 +-
>  drivers/video/tegra124/sor.c                    |  162 ++-
>  drivers/video/tegra124/sor.h                    |   45 +-
>  drivers/video/tegra124/tegra124-lcd.c           |   95 --
>  drivers/video/vidconsole-uclass.c               |    1 +
>  include/configs/colibri_t20.h                   |    4 -
>  include/configs/harmony.h                       |    4 -
>  include/configs/medcom-wide.h                   |    4 -
>  include/configs/nyan-big.h                      |    3 -
>  include/configs/paz00.h                         |    4 -
>  include/configs/seaboard.h                      |    4 -
>  include/configs/tec.h                           |    4 -
>  include/configs/tegra-common-post.h             |   10 +-
>  include/configs/ventana.h                       |    4 -
>  include/dt-bindings/clock/tegra124-car-common.h |  345 +++++
>  include/dt-bindings/clock/tegra124-car.h        |  341 +----
>  include/dt-bindings/memory/tegra124-mc.h        |   31 +
>  include/dt-bindings/reset/tegra124-car.h        |   12 +
>  include/dt-bindings/thermal/tegra124-soctherm.h |   13 +
>  include/fdtdec.h                                |    1 -
>  lib/fdtdec.c                                    |    1 -
>  69 files changed, 4601 insertions(+), 2178 deletions(-)
>  create mode 100644 arch/arm/dts/tegra124-nyan.dtsi
>  delete mode 100644 arch/arm/mach-tegra/pwm.c
>  create mode 100644 drivers/pwm/tegra_pwm.c
>  delete mode 100644 drivers/video/tegra124/tegra124-lcd.c
>  create mode 100644 include/dt-bindings/clock/tegra124-car-common.h
>  create mode 100644 include/dt-bindings/memory/tegra124-mc.h
>  create mode 100644 include/dt-bindings/reset/tegra124-car.h
>  create mode 100644 include/dt-bindings/thermal/tegra124-soctherm.h


More information about the U-Boot mailing list