From mboxrd@z Thu Jan 1 00:00:00 1970 From: khalasa@piap.pl (Krzysztof =?utf-8?Q?Ha=C5=82asa?=) Date: Tue, 08 Sep 2015 12:45:24 +0200 Subject: I.MX6 HDMI support in v4.2 In-Reply-To: <20150907112555.GS21084@n2100.arm.linux.org.uk> (Russell King's message of "Mon, 7 Sep 2015 12:25:55 +0100") References: <20150907112555.GS21084@n2100.arm.linux.org.uk> Message-ID: To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Trying to make some progress... I was missing the etnaviv DRM kernel driver. Now I have both IMX and etnaviv drivers, Linux v4.0-stable: git://git.pengutronix.de/git/lst/linux.git (etnaviv DRM driver) PLL5 DTS patch (enables HDMI with LVDS driver loaded): --- a/arch/arm/boot/dts/imx6q-gw54xx.dts +++ b/arch/arm/boot/dts/imx6q-gw54xx.dts @@ -21,3 +21,11 @@ &sata { status = "okay"; }; + +&clks { + assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>, + <&clks IMX6QDL_CLK_LDB_DI1_SEL>; + assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>, + <&clks IMX6QDL_CLK_PLL3_USB_OTG>; +}; + also had to apply: --- a/drivers/staging/etnaviv/Makefile +++ b/drivers/staging/etnaviv/Makefile @@ -11,7 +11,6 @@ etnaviv-y := \ etnaviv_gem_submit.o \ etnaviv_gpu.o \ etnaviv_iommu.o \ - etnaviv_iommu_v2.o \ etnaviv_mmu.o \ etnaviv_buffer.o X.org etc.: git://github.com/laanwj/etna_viv.git git://ftp.arm.linux.org.uk/~rmk/libdrm-armada.git/ git://ftp.arm.linux.org.uk/~rmk/xf86-video-armada.git unstable-devel (I can't use master branch of xf86-video-armada.git because it doesn't support etnaviv - does it?) X log (relevant(?) stuff only): [ 18919.848] (II) armada(0): hardware: imx-drm [ 18919.923] (--) armada(0): Vivante GC320 GPU revision 5007 (etnaviv) 2d PE2.0 [ 18919.925] (II) armada(0): [DRI2] Setup complete [ 18919.925] (II) armada(0): [DRI2] DRI driver: etnadrm [ 18919.925] (II) armada(0): direct rendering: DRI2 enabled [ 18919.925] (II) armada(0): RandR 1.2 enabled, ignore the following RandR disabled message. [ 18919.927] (==) armada(0): DPMS enabled [ 18919.927] (==) armada(0): hotplug detection enabled [ 18919.928] (II) armada(0): etnaviv: Xv: using YUY2 tiled format intermediate YUV target [ 18919.971] (EE) AIGLX error: dlopen of /lib/dri/etnadrm_dri.so failed (I don't have this yet) [ 18920.072] (II) armada(0): etnaviv: A8 target not supported If I try to use pengutronix/etnaviv-4.1-wip branch (etnaviv DRM - for v4.2), dmesg contains a lot of: [drm:etnaviv_ioctl_gem_submit [etnaviv]] *ERROR* cmdstream bo has flag ETNA_BO_CMDSTREAM not set and it doesn't work. I assume I shouldn't use it yet? Changing to pengutronix/etnaviv-for-upstream, it works - sort of. I now have two Xvideo adapters: Adaptor: 0 Name: Marvell Armada Overlay Video Port: 88 (which unfortunately doesn't work, the window is black, the XV attributes are set to minimums and I can't set them). Is it expected? Adaptor: 1 Name: Etnaviv Textured Video Port(s): 89 - 104 Name: XV_SYNC_TO_VBLANK Flags: XvGettable XvSettable Min value: 0 Max value: 1 Current value: 1 Name: XV_PIPE Flags: XvGettable XvSettable Min value: -1 Max value: 3 Current value: -1 Name: XV_ENCODING Flags: XvGettable XvSettable Min value: 0 Max value: 0 Current value: 0 This adapter works, though there are some image distortions (horizontal lines apparently caused by changes in color between frames). Any input? -- Krzysztof Halasa Industrial Research Institute for Automation and Measurements PIAP Al. Jerozolimskie 202, 02-486 Warsaw, Poland