From: Neil Armstrong <narmstrong@baylibre.com>
To: airlied@linux.ie, linux-amlogic@lists.infradead.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
dri-devel@lists.freedesktop.org
Subject: Re: [PATCH v2 00/13] drm/meson: Initial support for HDMI Output
Date: Tue, 4 Apr 2017 11:21:34 +0200 [thread overview]
Message-ID: <b765adc9-b433-be25-55ae-aa258ae64215@baylibre.com> (raw)
In-Reply-To: <20170404090450.qdlecpxd6lxf7qj4@phenom.ffwll.local>
On 04/04/2017 11:04 AM, Daniel Vetter wrote:
> On Tue, Mar 21, 2017 at 04:25:37PM +0100, Neil Armstrong wrote:
>> The Amlogic GX SoCs implements a Synopsys DesignWare HDMI TX Controller
>> in combination with a very custom PHY.
>>
>> This patchset depends on Laurent Pinchart patchset merged in drm-misc-next
>> and my v4 patchset at [1] to permit PHY control from outside the dw-hdmi driver.
>>
>> The Synopsys DesignWare HDMI TX Controller is integrated like :
>> ___________________________________
>> | HDMI TOP |<= HPD
>> |___________________________________|
>> | | |
>> HDMI-TX-| Synopsys HDMI | HDMI PHY |=> TMDS
>> | Controller |________________|
>> |___________________________________|<=> DDC
>>
>> And uses the following paths for Pixels Encoding :
>> _____ _____ ____________________
>> vd1---| |-| | | VENC /---------|----VDAC
>> vd2---| VIU |-| VPP |-|-----ENCI/-ENCI_DVI-|\
>> osd1--| |-| | | \ | X--HDMI-TX
>> osd2--|_____|-|_____| | |\-ENCP--ENCP_DVI-|/
>> | | |
>> | \--ENCL-----------|----LVDS
>> |____________________|
>>
>> The ENCI and ENCP encoders pre-formats the data for the ENCI-DVI and
>> ENCP-DVI encoders. Those DVI encoders will format the pixels for the
>> Synopsys DesignWare HDMI TX Controller.
>>
>> In order to support display modes, the ENCI and ENCP encoders needs very
>> specific parameters for *each* display modes, so usage of the CEA VIC
>> identifier is necessary. But the DVI timings are generated from the
>> drm_mode structure in a generic way.
>>
>> To simplify the first push, only the main CEA modes are supported up to
>> 1920x1080p60. Supporting the 480i and 576i needs tweaking in the dw-hdmi
>> in order to support the Clock Doubling necessary for these modes.
>>
>> Support for more traditional modes like the EDID fallback modes is planned
>> but will need tome additionnal handling along the CEA modes.
>> Support for 4k2k modes needs to be able to get the EDID HDMI modes, but
>> for now only the HDMI 1.4 modes are currently available in the drm_edid
>> implementation.
>
> Ok I scanned throught this and applied a bunch of comments. Mostly because
> I need volunteers to review one of my own patch series that I need to
> resend after some polish.
>
> But I think it'd would be a _lot_ more useful if the various arm-soc
> drivers would cross-check their driver amongst themselves. Especially
> around drm bridges there's a lot of people involved, almost all hang out
> on #dri-devel, so should be very easy to coordinate some cross review.
Seems legit, I'll try next time, but sincerely I have far less experience with DRM.
but I could at least all the arm-soc specific stuff for sure.
>
> On all the patches except the dt ones: Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Thanks,
Neil
> -Daniel
>
>>
>> This patchset does :
>> - Fixes the CRTC handling
>> - Fixes the registers definitions
>> - Adds support for device components registration along of-graph
>> - Adds support for HDMI clocks
>> - Adds support for HDMI VENC video modes
>> - Adds support for the Custom HDMI PHY using callbacks added in [1] and [2]
>> - Adds CMA node to reserve enougth memory for 1080p display
>> - Adds the HDMI controller et connector modes on selected boards
>> - Adds a proper dt-bindings for the HDMI controller et connector
>> - Add RST documentation for Meson DRM driver
>> - Updates the MAINTAINERS file to track the new files
>>
>> Changes since v1 patchset at [2] :
>> - Add the meson drm documentation from [3] to this patchset
>> - Update with new bus formats and HPD callbacks
>> - Drop all the of_machine_is_compatible
>>
>> [1] http://lkml.kernel.org/r/1490109161-20529-1-git-send-email-narmstrong@baylibre.com
>> [2] http://lkml.kernel.org/r/1488469207-523-1-git-send-email-narmstrong@baylibre.com
>> [3] http://lkml.kernel.org/r/1488536068-9407-1-git-send-email-narmstrong@baylibre.com
>>
>> Neil Armstrong (13):
>> drm/meson: Use crtc_state for hdisplay and fix atomic flush/enable
>> sync for vsync commit
>> drm/meson: Add missing HDMI register
>> drm/meson: Add support for components
>> drm/meson: venc_cvbs: no more return -ENODEV if CVBS is not available
>> drm/meson: add support for HDMI clock support
>> drm/meson: Add support for HDMI venc modes and settings
>> drm/meson: Add support for HDMI encoder and DW-HDMI bridge + PHY
>> ARM64: dts: meson-gx: Add shared CMA dma memory pool
>> ARM64: dts: meson-gx: Add support for HDMI output
>> dt-bindings: Add bindings for the Amlogic Meson dw-hdmi extension
>> drm/meson: Convert existing documentation to actual kerneldoc
>> drm/meson: Add RST to bring together kerneldoc
>> MAINTAINERS: update files for Amlogic DRM Driver
>>
>> .../bindings/display/amlogic,meson-dw-hdmi.txt | 111 ++
>> Documentation/gpu/index.rst | 1 +
>> Documentation/gpu/meson.rst | 61 +
>> MAINTAINERS | 2 +
>> .../arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi | 39 +
>> arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 40 +
>> .../boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts | 23 +
>> arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi | 23 +
>> arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi | 12 +
>> .../dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts | 23 +
>> arch/arm64/boot/dts/amlogic/meson-gxl.dtsi | 13 +
>> .../arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts | 23 +
>> arch/arm64/boot/dts/amlogic/meson-gxm.dtsi | 3 +
>> drivers/gpu/drm/meson/Kconfig | 6 +
>> drivers/gpu/drm/meson/Makefile | 1 +
>> drivers/gpu/drm/meson/meson_canvas.c | 4 +-
>> drivers/gpu/drm/meson/meson_crtc.c | 15 +-
>> drivers/gpu/drm/meson/meson_drv.c | 118 +-
>> drivers/gpu/drm/meson/meson_drv.h | 3 +
>> drivers/gpu/drm/meson/meson_dw_hdmi.c | 919 ++++++++++++++
>> drivers/gpu/drm/meson/meson_dw_hdmi.h | 146 +++
>> drivers/gpu/drm/meson/meson_registers.h | 1 +
>> drivers/gpu/drm/meson/meson_vclk.c | 632 +++++++++-
>> drivers/gpu/drm/meson/meson_vclk.h | 6 +-
>> drivers/gpu/drm/meson/meson_venc.c | 1254 +++++++++++++++++++-
>> drivers/gpu/drm/meson/meson_venc.h | 7 +
>> drivers/gpu/drm/meson/meson_venc_cvbs.c | 11 +-
>> drivers/gpu/drm/meson/meson_viu.c | 6 +-
>> drivers/gpu/drm/meson/meson_vpp.c | 8 +-
>> drivers/gpu/drm/meson/meson_vpp.h | 2 +
>> 30 files changed, 3466 insertions(+), 47 deletions(-)
>> create mode 100644 Documentation/devicetree/bindings/display/amlogic,meson-dw-hdmi.txt
>> create mode 100644 Documentation/gpu/meson.rst
>> create mode 100644 drivers/gpu/drm/meson/meson_dw_hdmi.c
>> create mode 100644 drivers/gpu/drm/meson/meson_dw_hdmi.h
>>
>> --
>> 1.9.1
>>
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel@lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/dri-devel
>
prev parent reply other threads:[~2017-04-04 9:21 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-21 15:25 Neil Armstrong
2017-03-21 15:25 ` [PATCH v2 01/13] drm/meson: Use crtc_state for hdisplay and fix atomic flush/enable sync for vsync commit Neil Armstrong
2017-04-04 8:49 ` Daniel Vetter
2017-03-21 15:25 ` [PATCH v2 02/13] drm/meson: Add missing HDMI register Neil Armstrong
2017-03-21 15:25 ` [PATCH v2 03/13] drm/meson: Add support for components Neil Armstrong
2017-04-04 8:59 ` Daniel Vetter
2017-04-04 9:08 ` Neil Armstrong
2017-04-04 9:09 ` Daniel Vetter
2017-03-21 15:25 ` [PATCH v2 04/13] drm/meson: venc_cvbs: no more return -ENODEV if CVBS is not available Neil Armstrong
2017-03-21 15:25 ` [PATCH v2 05/13] drm/meson: add support for HDMI clock support Neil Armstrong
2017-03-21 15:25 ` [PATCH v2 06/13] drm/meson: Add support for HDMI venc modes and settings Neil Armstrong
2017-03-21 15:25 ` [PATCH v2 07/13] drm/meson: Add support for HDMI encoder and DW-HDMI bridge + PHY Neil Armstrong
2017-04-04 8:57 ` Daniel Vetter
2017-04-04 9:16 ` Neil Armstrong
2017-04-04 13:50 ` Daniel Vetter
2017-03-21 15:25 ` [PATCH v2 08/13] ARM64: dts: meson-gx: Add shared CMA dma memory pool Neil Armstrong
2017-04-04 8:41 ` Neil Armstrong
2017-04-04 11:57 ` Kevin Hilman
2017-03-21 15:25 ` [PATCH v2 09/13] ARM64: dts: meson-gx: Add support for HDMI output Neil Armstrong
2017-04-04 8:10 ` Neil Armstrong
2017-04-04 11:57 ` Kevin Hilman
2017-03-21 15:25 ` [PATCH v2 10/13] dt-bindings: Add bindings for the Amlogic Meson dw-hdmi extension Neil Armstrong
2017-03-21 15:25 ` [PATCH v2 11/13] drm/meson: Convert existing documentation to actual kerneldoc Neil Armstrong
2017-03-21 15:25 ` [PATCH v2 12/13] drm/meson: Add RST to bring together kerneldoc Neil Armstrong
2017-04-04 9:00 ` Daniel Vetter
2017-04-04 9:17 ` Neil Armstrong
2017-03-21 15:25 ` [PATCH v2 13/13] MAINTAINERS: update files for Amlogic DRM Driver Neil Armstrong
2017-04-04 9:01 ` Daniel Vetter
2017-04-04 9:18 ` Neil Armstrong
2017-04-04 9:04 ` [PATCH v2 00/13] drm/meson: Initial support for HDMI Output Daniel Vetter
2017-04-04 9:21 ` Neil Armstrong [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b765adc9-b433-be25-55ae-aa258ae64215@baylibre.com \
--to=narmstrong@baylibre.com \
--cc=airlied@linux.ie \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-amlogic@lists.infradead.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®