Re: [PATCH V8 00/12] soc: imx8mp: Add support for HDMI

From: Adam Ford
Date: Tue Mar 26 2024 - 07:43:51 EST


On Tue, Mar 26, 2024 at 2:46 AM Tommaso Merciai <tomm.merciai@gmailcom> wrote:
>
> Hi Laurent,
>
> On Tue, Mar 26, 2024 at 12:03:38AM +0200, Laurent Pinchart wrote:
> > Hi Tommaso,
> >
> > On Mon, Mar 25, 2024 at 10:48:56PM +0100, Tommaso Merciai wrote:
> > > Hi Adam, Lucas,
> > > Thanks for this series.
> > >
> > > This series make HDMI work on evk.
> > > All is working properly on my side.
> > >
> > > Tested on: Linux imx8mp-lpddr4-evk 6.9.0-rc1.
> > > Hope this help.
> > >
> > > Tested-by: Tommaso Merciai <tomm.merciai@xxxxxxxxx>
> >
> > The DRM side has been merged already. The only missing patches are for
> > the PHY, and the latest version can be found in
> > https://lore.kernel.org/linux-phy/20240227220444.77566-1-aford173@gmailcom/.
> > You can test that series and send a Tested-by tag. I'm crossing my
> > fingers and hoping it will be merged in v6.10.
> (same here :) )
>
> Thanks for sharing! :)
>
> To be honest I test all this series rebasing my alvium next branch on top of media_stage/master (6.9.0-rc1)
> All is working properly on my side.
> I found v8 into the commit msg here: https://patches.linaro.org/project/linux-pm/patch/20240203165307.7806-9-aford173@xxxxxxxxx/
> then I'm thinking this is the latest.
>
> I'm going to switch to your suggestion that looks more recent :)

Sorry about the confusion. I was confused by the versioning too when
I pulled from different parts of Lucas' stuff. Since varying
components were applied at different times, and the remaining part was
based on the wrong starting point and not applied, I reverted back to
the versioning of the PHY which was the only remaining part other than
device tree stuff.

adam
>
> Thanks again,
> Tommaso
>
> >
> > > On Sat, Feb 03, 2024 at 10:52:40AM -0600, Adam Ford wrote:
> > > > The i.MX8M Plus has an HDMI controller, but it depends on two
> > > > other systems, the Parallel Video Interface (PVI) and the
> > > > HDMI PHY from Samsung. The LCDIF controller generates the display
> > > > and routes it to the PVI which converts passes the parallel video
> > > > to the HDMI bridge. The HDMI system has a corresponding power
> > > > domain controller whose driver was partially written, but the
> > > > device tree for it was never applied, so some changes to the
> > > > power domain should be harmless because they've not really been
> > > > used yet.
> > > >
> > > > This series is adapted from multiple series from Lucas Stach with
> > > > edits and suggestions from feedback from various series, but it
> > > > since it's difficult to use and test them independently,
> > > > I merged them into on unified series. The version history is a
> > > > bit ambiguous since different components were submitted at different
> > > > times and had different amount of retries. In an effort to merge them
> > > > I used the highest version attempt.
> > > >
> > > > Adam Ford (3):
> > > > dt-bindings: soc: imx: add missing clock and power-domains to
> > > > imx8mp-hdmi-blk-ctrl
> > > > pmdomain: imx8mp-blk-ctrl: imx8mp_blk: Add fdcc clock to hdmimix
> > > > domain
> > > > arm64: defconfig: Enable DRM_IMX8MP_DW_HDMI_BRIDGE as module
> > > >
> > > > Lucas Stach (9):
> > > > dt-bindings: phy: add binding for the i.MX8MP HDMI PHY
> > > > phy: freescale: add Samsung HDMI PHY
> > > > arm64: dts: imx8mp: add HDMI power-domains
> > > > arm64: dts: imx8mp: add HDMI irqsteer
> > > > dt-bindings: display: imx: add binding for i.MX8MP HDMI PVI
> > > > drm/bridge: imx: add driver for HDMI TX Parallel Video Interface
> > > > dt-bindings: display: imx: add binding for i.MX8MP HDMI TX
> > > > drm/bridge: imx: add bridge wrapper driver for i.MX8MP DWC HDMI
> > > > arm64: dts: imx8mp: add HDMI display pipeline
> > > >
> > > > .../display/bridge/fsl,imx8mp-hdmi-tx.yaml | 102 ++
> > > > .../display/imx/fsl,imx8mp-hdmi-pvi.yaml | 84 ++
> > > > .../bindings/phy/fsl,imx8mp-hdmi-phy.yaml | 62 +
> > > > .../soc/imx/fsl,imx8mp-hdmi-blk-ctrl.yaml | 22 +-
> > > > arch/arm64/boot/dts/freescale/imx8mp.dtsi | 145 +++
> > > > arch/arm64/configs/defconfig | 1 +
> > > > drivers/gpu/drm/bridge/imx/Kconfig | 18 +
> > > > drivers/gpu/drm/bridge/imx/Makefile | 2 +
> > > > drivers/gpu/drm/bridge/imx/imx8mp-hdmi-pvi.c | 207 ++++
> > > > drivers/gpu/drm/bridge/imx/imx8mp-hdmi-tx.c | 154 +++
> > > > drivers/phy/freescale/Kconfig | 6 +
> > > > drivers/phy/freescale/Makefile | 1 +
> > > > drivers/phy/freescale/phy-fsl-samsung-hdmi.c | 1075 +++++++++++++++++
> > > > drivers/pmdomain/imx/imx8mp-blk-ctrl.c | 10 +-
> > > > 14 files changed, 1876 insertions(+), 13 deletions(-)
> > > > create mode 100644 Documentation/devicetree/bindings/display/bridge/fsl,imx8mp-hdmi-tx.yaml
> > > > create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,imx8mp-hdmi-pvi.yaml
> > > > create mode 100644 Documentation/devicetree/bindings/phy/fsl,imx8mp-hdmi-phy.yaml
> > > > create mode 100644 drivers/gpu/drm/bridge/imx/imx8mp-hdmi-pvi.c
> > > > create mode 100644 drivers/gpu/drm/bridge/imx/imx8mp-hdmi-tx.c
> > > > create mode 100644 drivers/phy/freescale/phy-fsl-samsung-hdmi.c
> >
> > --
> > Regards,
> >
> > Laurent Pinchart