public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v2 00/23] dm: tegra: Convert tegra20 and tegra124 video drivers to driver model
@ 2016-01-30 23:37 Simon Glass
  2016-01-30 23:37 ` [U-Boot] [PATCH v2 01/23] tegra: keyboard: Fix the init order Simon Glass
                   ` (23 more replies)
  0 siblings, 24 replies; 50+ messages in thread
From: Simon Glass @ 2016-01-30 23:37 UTC (permalink / raw)
  To: u-boot

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.

This series is available at u-boot-dm/tegra-working.

Changes in v2:
- Fix a checkpatch warning
- Fix erroneous Kconfig change for colibri
- Rebase to master

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                   |    6 +
 configs/harmony_defconfig                       |    6 +
 configs/medcom-wide_defconfig                   |    6 +
 configs/nyan-big_defconfig                      |   10 +
 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                           |  658 +++++++--
 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, 4596 insertions(+), 2174 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

-- 
2.7.0.rc3.207.g0ac5344

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

end of thread, other threads:[~2016-02-17  1:09 UTC | newest]

Thread overview: 50+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-30 23:37 [U-Boot] [PATCH v2 00/23] dm: tegra: Convert tegra20 and tegra124 video drivers to driver model Simon Glass
2016-01-30 23:37 ` [U-Boot] [PATCH v2 01/23] tegra: keyboard: Fix the init order Simon Glass
2016-01-30 23:37 ` [U-Boot] [PATCH v2 02/23] dm: video: Flush the cache after a puts() Simon Glass
2016-01-31 18:14   ` Anatolij Gustschin
2016-01-30 23:37 ` [U-Boot] [PATCH v2 03/23] tegra: mmc: Fix comments in the MMC driver init Simon Glass
2016-01-30 23:37 ` [U-Boot] [PATCH v2 04/23] tegra: dts: Sync up the tegra124 device tree files with Linux Simon Glass
2016-01-30 23:37 ` [U-Boot] [PATCH v2 05/23] tegra: dts: Sync up nyan-big " Simon Glass
2016-01-30 23:37 ` [U-Boot] [PATCH v2 06/23] tegra: gpio: Show the GPIO value for outputs Simon Glass
2016-01-30 23:37 ` [U-Boot] [PATCH v2 07/23] tegra: pwm: Add a driver for the tegra PWM Simon Glass
2016-01-30 23:37 ` [U-Boot] [PATCH v2 08/23] tegra: lcd: Merge tegra124-lcd.c into display.c Simon Glass
2016-01-31 18:49   ` Anatolij Gustschin
2016-01-30 23:37 ` [U-Boot] [PATCH v2 09/23] tegra: Allow driver model to be used for the PWM Simon Glass
2016-01-30 23:37 ` [U-Boot] [PATCH v2 10/23] tegra: Allow CONFIG_DM_VIDEO to be used as well as CONFIG_LCD Simon Glass
2016-01-30 23:37 ` [U-Boot] [PATCH v2 11/23] tegra: nyan-big: Move the LCD driver to driver model Simon Glass
2016-01-31 18:59   ` Anatolij Gustschin
2016-01-30 23:37 ` [U-Boot] [PATCH v2 12/23] tegra: video: Rename CONFIG_VIDEO_TEGRA to CONFIG_VIDEO_TEGRA20 Simon Glass
2016-01-31 18:19   ` Anatolij Gustschin
2016-01-30 23:37 ` [U-Boot] [PATCH v2 13/23] tegra: dts: Sync tegra20.dtsi with Linux v4.4 Simon Glass
2016-01-30 23:37 ` [U-Boot] [PATCH v2 14/23] tegra: video: Merge the display driver into one file Simon Glass
2016-01-31 18:23   ` Anatolij Gustschin
2016-01-30 23:37 ` [U-Boot] [PATCH v2 15/23] tegra: video: Move the check for CONFIG_OF_CONTROL to Kconfig Simon Glass
2016-01-31 18:24   ` Anatolij Gustschin
2016-01-30 23:37 ` [U-Boot] [PATCH v2 16/23] tegra: video: Merge the two config structures together Simon Glass
2016-01-31 19:07   ` Anatolij Gustschin
2016-01-30 23:37 ` [U-Boot] [PATCH v2 17/23] tegra: video: Convert tegra20 LCD driver to driver model Simon Glass
2016-01-31 19:21   ` Anatolij Gustschin
2016-01-30 23:37 ` [U-Boot] [PATCH v2 18/23] tegra: video: Remove the static variables Simon Glass
2016-01-31 19:24   ` Anatolij Gustschin
2016-01-31 19:31   ` Fabio Estevam
2016-01-30 23:37 ` [U-Boot] [PATCH v2 19/23] tegra: video: Move LCD enums into the driver Simon Glass
2016-01-31 19:26   ` Anatolij Gustschin
2016-01-30 23:37 ` [U-Boot] [PATCH v2 20/23] tegra: video: Move all fdt-decoding into a single function Simon Glass
2016-01-31 19:30   ` Anatolij Gustschin
2016-01-30 23:38 ` [U-Boot] [PATCH v2 21/23] tegra: Convert CONFIG_PWM_TEGRA to Kconfig Simon Glass
2016-01-30 23:38 ` [U-Boot] [PATCH v2 22/23] tegra: video: Move LCD driver to use the DM PWM driver Simon Glass
2016-01-31 19:33   ` Anatolij Gustschin
2016-01-30 23:38 ` [U-Boot] [PATCH v2 23/23] tegra: video: Clean up the old LCD/PWM driver code Simon Glass
2016-02-02  0:00 ` [U-Boot] [PATCH v2 00/23] dm: tegra: Convert tegra20 and tegra124 video drivers to driver model Stephen Warren
2016-02-02  0:05   ` Simon Glass
2016-02-02  0:17     ` Stephen Warren
2016-02-02  0:28       ` Simon Glass
2016-02-02  0:36         ` Stephen Warren
2016-02-06 21:39           ` Simon Glass
2016-02-15  1:18   ` Simon Glass
2016-02-16 15:47     ` Tom Warren
2016-02-16 16:02       ` Simon Glass
2016-02-16 16:23         ` Tom Warren
2016-02-16 17:19           ` Simon Glass
2016-02-16 20:13             ` Tom Warren
2016-02-17  1:09               ` Simon Glass

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox