[U-Boot] [PATCH v6 0/26] tegra: Add eDP support for nyan-big

Tom Warren TWarren at nvidia.com
Wed Apr 29 21:56:01 CEST 2015


I had a problem with the first patch in the V6 patchset (uclass-id.h sorted list), but after I fixed that it all applied to u-boot-tegra/master OK. Just need to find time to test it on my Nyan, unless someone else can say that they've done that and it's good-to-go.

Tom

> -----Original Message-----
> From: sjg at google.com [mailto:sjg at google.com] On Behalf Of Simon Glass
> Sent: Monday, April 27, 2015 8:03 PM
> To: U-Boot Mailing List
> Cc: Jimmy Zhang; Tom Warren; Stephen Warren; Simon Glass; Stephen
> Warren; Marek Vasut; Pavel Herrmann; Lukasz Majewski; Jerry Van Baren;
> Anatolij Gustschin
> Subject: Re: [PATCH v6 0/26] tegra: Add eDP support for nyan-big
> 
> Hi Tom, Jimmy,
> 
> On 14 April 2015 at 21:03, Simon Glass <sjg at chromium.org> wrote:
> > 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
> 
> Any comments on this new version please?
> 
> >
> > Changes in v6:
> > - Add a comment about tegra_dc_dp_check_sink()
> > - Add more debug() statements
> > - Add new patch to sort the uclasses
> > - Fix incorrect use of DP_MAIN_LINK_CHANNEL_CODING_SET register
> > - Improve retry logic in tegra_dc_dp_check_sink()
> > - Report failure when we cannot init the eDP display
> >
> > Changes in v4:
> > - Rebase on u-boot-dm/next 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 (26):
> >   dm: core: Sort the uclasses
> >   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                        | 1607 ++++++++++++++++++++
> >  drivers/video/tegra124/sor.c                       | 1024 +++++++++++++
> >  drivers/video/tegra124/sor.h                       |  922 +++++++++++
> >  drivers/video/tegra124/tegra124-lcd.c              |   97 ++
> >  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                             |   29 +-
> >  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, 6599 insertions(+), 142 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
> >
> 
> Regards,
> Simon

--
nvpublic


More information about the U-Boot mailing list