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

Simon Glass sjg at chromium.org
Sat Jan 16 18:14:58 CET 2016


Hi Marcel,

On 15 January 2016 at 19:36, Marcel Ziswiler
<marcel.ziswiler at toradex.com> wrote:
> 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?

Yes, this plus the next series is at u-boot-dm/rkf-working. Sorry I
didn't point that out.

>
>
>> 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

Regards,
Simon


More information about the U-Boot mailing list