All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v4 0/25] tegra: Add eDP support for nyan-big
@ 2015-03-31  0:04 Simon Glass
  2015-03-31  0:04 ` [U-Boot] [PATCH v4 01/25] dm: gpio: Add error handling and a function to claim vector GPIOs Simon Glass
                   ` (24 more replies)
  0 siblings, 25 replies; 26+ messages in thread
From: Simon Glass @ 2015-03-31  0:04 UTC (permalink / raw)
  To: u-boot

This series adds eDP support for nyan-big so that the display works.

Nyan-big is based on tegra124.

Some support is added for new clocks to make this work. The drm_dp_helper.h
file is brought in from Linux since many of the DisplayPort constants are
generic. A very simple uclass is added for DisplayPort, and the Tegra
driver makes use of that. The U-Boot EDID support is enhanced to read some
additional information (detailed timings).

There is existing video support for Tegra20, but I don't think it works for
Tegra30/114 (is this correct?). This series relies on detecting the display
at run-time as I cannot find a good device tree binding for things like
display depth. But if we could resolve that then it might be possible to
move Tegra20 over to use the same driver, etc. There is clearly a lot in
common with the display controllers - I have exploited this with the header
file but not with the C file.

HDMI is not supported at present. If this is easy and there is an existing
driver to follow along with then I might be able to incorporate it later.

This series is available at u-boot-dm/nyan-working

Changes in v4:
- Rebase on tegra/master since this series is still pending

Changes in v3:
- Add full link training support
- Change parameters of update_display_mode()
- Fix 64-bit maths error
- Fix trainging typo
- Reorder parameters to tegra_dc_sor_attach()
- Set scramble_ena to 1 on start-up so that link training succeeds
- Simplify timouts to remove repeated multiplication by 1000
- Use real error return values in tegra_dc_dpaux_write_chunk() and others
- Use sor pointer in struct tegra_dp_priv

Changes in v2:
- Rebase on top of u-boot-dm
- Remove definition of BIT()

Simon Glass (25):
  dm: gpio: Add error handling and a function to claim vector GPIOs
  fdt: Add binding decode function for display-timings
  tegra: Move the pwm into tegra-common
  tegra: pwm: Allow the clock rate to be left as is
  tegra: Move checkboard() into the board code
  tegra: Add a board ID function
  power: Export register access functions from as3722
  tegra: Provide a function to allow LCD PMIC setup
  tegra: Add support for setting up a as3722 PMIC
  tegra: nyan-big: Add LCD PMIC init and board ID
  tegra124: dts: Add host1x node to provide display information
  tegra: config: Use CONFIG_LCD to detect LCD presence
  tegra: clock: Add checking for invalid clock IDs
  tegra: clock: Split the clock source code into a separate function
  tegra124: clock: Add display clocks and functions
  tegra: Move display controller header into common
  video: Add drm_dp_helper.h
  edid: Add a function to read detailed monitor timings
  dm: video: Add a uclass for display port
  tegra: dts: nyan-big: Add definitions for eDP display
  tegra: video: Support serial output resource (SOR) on tegra124
  tegra: video: Add Embedded DisplayPort driver
  tegra: video: support eDP displays on Tegra124 devices
  tegra: config: nyan-big: Enable LCD
  tegra124: video: Add full link training for eDP

 arch/arm/dts/tegra124-nyan-big.dts                 |   47 +
 arch/arm/dts/tegra124.dtsi                         |   84 +
 arch/arm/include/asm/arch-tegra/clk_rst.h          |   15 +-
 arch/arm/include/asm/arch-tegra/clock.h            |   14 +
 .../include/asm/{arch-tegra20 => arch-tegra}/dc.h  |   67 +-
 arch/arm/include/asm/arch-tegra/pwm.h              |   60 +
 arch/arm/include/asm/arch-tegra/sys_proto.h        |   19 +-
 arch/arm/include/asm/arch-tegra124/clock-tables.h  |    3 +-
 arch/arm/include/asm/arch-tegra124/clock.h         |   21 +
 arch/arm/include/asm/arch-tegra124/display.h       |   58 +
 arch/arm/include/asm/arch-tegra124/pwm.h           |   14 +
 arch/arm/include/asm/arch-tegra20/display.h        |    2 +-
 arch/arm/include/asm/arch-tegra20/pwm.h            |   54 +-
 arch/arm/mach-tegra/Makefile                       |    1 +
 arch/arm/mach-tegra/board.c                        |    8 -
 arch/arm/mach-tegra/clock.c                        |   83 +-
 arch/arm/mach-tegra/{tegra20 => }/pwm.c            |    7 +-
 arch/arm/mach-tegra/tegra124/clock.c               |  141 +-
 arch/arm/mach-tegra/tegra20/Makefile               |    1 -
 arch/arm/mach-tegra/tegra20/display.c              |    2 +-
 board/nvidia/common/board.c                        |   40 +-
 board/nvidia/nyan-big/nyan-big.c                   |   34 +-
 common/edid.c                                      |  105 ++
 configs/nyan-big_defconfig                         |    2 +
 .../gpu/nvidia,tegra20-host1x.txt                  |  372 +++++
 doc/device-tree-bindings/video/display-timing.txt  |  110 ++
 drivers/gpio/gpio-uclass.c                         |   38 +-
 drivers/power/as3722.c                             |   16 +-
 drivers/video/Kconfig                              |   15 +
 drivers/video/Makefile                             |    6 +
 drivers/video/dp-uclass.c                          |   34 +
 drivers/video/tegra124/Makefile                    |   10 +
 drivers/video/tegra124/display.c                   |  472 ++++++
 drivers/video/tegra124/displayport.h               |  412 +++++
 drivers/video/tegra124/dp.c                        | 1599 ++++++++++++++++++++
 drivers/video/tegra124/sor.c                       | 1019 +++++++++++++
 drivers/video/tegra124/sor.h                       |  922 +++++++++++
 drivers/video/tegra124/tegra124-lcd.c              |   94 ++
 include/asm-generic/gpio.h                         |   15 +-
 include/configs/nyan-big.h                         |   14 +
 include/configs/tegra-common-post.h                |    2 +-
 include/displayport.h                              |   60 +
 include/dm/uclass-id.h                             |    1 +
 include/edid.h                                     |   19 +
 include/fdtdec.h                                   |   81 +
 include/linux/drm_dp_helper.h                      |  406 +++++
 include/power/as3722.h                             |    3 +
 lib/fdtdec.c                                       |   95 ++
 48 files changed, 6569 insertions(+), 128 deletions(-)
 rename arch/arm/include/asm/{arch-tegra20 => arch-tegra}/dc.h (89%)
 create mode 100644 arch/arm/include/asm/arch-tegra/pwm.h
 create mode 100644 arch/arm/include/asm/arch-tegra124/display.h
 create mode 100644 arch/arm/include/asm/arch-tegra124/pwm.h
 rename arch/arm/mach-tegra/{tegra20 => }/pwm.c (93%)
 create mode 100644 doc/device-tree-bindings/gpu/nvidia,tegra20-host1x.txt
 create mode 100644 doc/device-tree-bindings/video/display-timing.txt
 create mode 100644 drivers/video/dp-uclass.c
 create mode 100644 drivers/video/tegra124/Makefile
 create mode 100644 drivers/video/tegra124/display.c
 create mode 100644 drivers/video/tegra124/displayport.h
 create mode 100644 drivers/video/tegra124/dp.c
 create mode 100644 drivers/video/tegra124/sor.c
 create mode 100644 drivers/video/tegra124/sor.h
 create mode 100644 drivers/video/tegra124/tegra124-lcd.c
 create mode 100644 include/displayport.h
 create mode 100644 include/linux/drm_dp_helper.h

-- 
2.2.0.rc0.207.ga3a616c

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

end of thread, other threads:[~2015-03-31  0:04 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-31  0:04 [U-Boot] [PATCH v4 0/25] tegra: Add eDP support for nyan-big Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 01/25] dm: gpio: Add error handling and a function to claim vector GPIOs Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 02/25] fdt: Add binding decode function for display-timings Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 03/25] tegra: Move the pwm into tegra-common Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 04/25] tegra: pwm: Allow the clock rate to be left as is Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 05/25] tegra: Move checkboard() into the board code Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 06/25] tegra: Add a board ID function Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 07/25] power: Export register access functions from as3722 Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 08/25] tegra: Provide a function to allow LCD PMIC setup Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 09/25] tegra: Add support for setting up a as3722 PMIC Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 10/25] tegra: nyan-big: Add LCD PMIC init and board ID Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 11/25] tegra124: dts: Add host1x node to provide display information Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 12/25] tegra: config: Use CONFIG_LCD to detect LCD presence Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 13/25] tegra: clock: Add checking for invalid clock IDs Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 14/25] tegra: clock: Split the clock source code into a separate function Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 15/25] tegra124: clock: Add display clocks and functions Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 16/25] tegra: Move display controller header into common Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 17/25] video: Add drm_dp_helper.h Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 18/25] edid: Add a function to read detailed monitor timings Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 19/25] dm: video: Add a uclass for display port Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 20/25] tegra: dts: nyan-big: Add definitions for eDP display Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 21/25] tegra: video: Support serial output resource (SOR) on tegra124 Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 22/25] tegra: video: Add Embedded DisplayPort driver Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 23/25] tegra: video: support eDP displays on Tegra124 devices Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 24/25] tegra: config: nyan-big: Enable LCD Simon Glass
2015-03-31  0:04 ` [U-Boot] [PATCH v4 25/25] tegra124: video: Add full link training for eDP 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.