From patchwork Thu Aug 13 01:29:04 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 253877 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.1 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6F9AAC433E1 for ; Thu, 13 Aug 2020 01:29:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 4540E2177B for ; Thu, 13 Aug 2020 01:29:38 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="nl/nkQNk" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726596AbgHMB3h (ORCPT ); Wed, 12 Aug 2020 21:29:37 -0400 Received: from perceval.ideasonboard.com ([213.167.242.64]:57532 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726126AbgHMB3h (ORCPT ); Wed, 12 Aug 2020 21:29:37 -0400 Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 90384B8F; Thu, 13 Aug 2020 03:29:31 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1597282172; bh=woAdLeaWut9Feii2mcbA91smYDm6yZyJzi1SuLCiPMU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=nl/nkQNkaUc3KpkMnAlsZvEhnpb5dZV4Qt65VSqq4zIFSmw6sk70NhCqsZVnTfVbd WPl+HjPcCR2xvDoAn49X0mE31aFx0AI+QtlQE6kZjzFYkGzLhe/Gs0tSvVYdOA0t5W 2wG3ZKVhxFkF4SE+B4K+P45EjAWTLzl4+XxOLNRs= From: Laurent Pinchart To: dri-devel@lists.freedesktop.org Cc: devicetree@vger.kernel.org, Marek Vasut , Stefan Agner , Rob Herring , Pengutronix Kernel Team , linux-arm-kernel@lists.infradead.org, =?utf-8?q?Guido_G=C3=BCn?= =?utf-8?q?ther?= Subject: [PATCH 2/8] dt-bindings: display: mxsfb: Add and fix compatible strings Date: Thu, 13 Aug 2020 04:29:04 +0300 Message-Id: <20200813012910.13576-3-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200813012910.13576-1-laurent.pinchart@ideasonboard.com> References: <20200813012910.13576-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Additional compatible strings have been added in DT source for the i.MX6SL, i.MX6SLL, i.MX6UL and i.MX7D without updating the bindings. Most of the upstream DT sources use the fsl,imx28-lcdif compatible string, which mostly predates the realization that the LCDIF in the i.MX6 and newer SoCs have extra features compared to the i.MX28. Update the bindings to add the missing compatible strings, with the correct fallback values. This fails to validate some of the upstream DT sources. Instead of adding the incorrect compatible fallback to the binding, the sources should be updated separately. Signed-off-by: Laurent Pinchart --- .../devicetree/bindings/display/mxsfb.yaml | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/Documentation/devicetree/bindings/display/mxsfb.yaml b/Documentation/devicetree/bindings/display/mxsfb.yaml index 202381ec5bb7..ec6533b1d4a3 100644 --- a/Documentation/devicetree/bindings/display/mxsfb.yaml +++ b/Documentation/devicetree/bindings/display/mxsfb.yaml @@ -15,11 +15,19 @@ description: | properties: compatible: - enum: - - fsl,imx23-lcdif - - fsl,imx28-lcdif - - fsl,imx6sx-lcdif - - fsl,imx8mq-lcdif + oneOf: + - enum: + - fsl,imx23-lcdif + - fsl,imx28-lcdif + - fsl,imx6sx-lcdif + - items: + - enum: + - fsl,imx6sl-lcdif + - fsl,imx6sll-lcdif + - fsl,imx6ul-lcdif + - fsl,imx7d-lcdif + - fsl,imx8mq-lcdif + - const: fsl,imx6sx-lcdif reg: maxItems: 1 From patchwork Thu Aug 13 01:29:07 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 253876 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.1 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5E74CC433E0 for ; Thu, 13 Aug 2020 01:29:42 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 3D49220771 for ; Thu, 13 Aug 2020 01:29:42 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="a8c1sfvv" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726600AbgHMB3l (ORCPT ); Wed, 12 Aug 2020 21:29:41 -0400 Received: from perceval.ideasonboard.com ([213.167.242.64]:57532 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726126AbgHMB3j (ORCPT ); Wed, 12 Aug 2020 21:29:39 -0400 Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id D51BD1254; Thu, 13 Aug 2020 03:29:33 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1597282174; bh=QdJFLCHW5z2JsRZf06aTR0tpLstR64R1LL4ZN49zT+c=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=a8c1sfvvkWsx2oE3Em+HqJ7PoqxoHzcqhojSCZ8Kl3lT1svLi7mUb+xNaNUfVh6nw eM/7+WIj/VSTaR9HuhyPgt5rLiAOFSi2FE0+DR6SH8UW9RpjaFloiPcQU5ollWbFil LKy2qDHKzb4E9fmqa6KpTACJC5NPGt71RGe0n8W4= From: Laurent Pinchart To: dri-devel@lists.freedesktop.org Cc: devicetree@vger.kernel.org, Marek Vasut , Stefan Agner , Rob Herring , Pengutronix Kernel Team , linux-arm-kernel@lists.infradead.org, =?utf-8?q?Guido_G=C3=BCn?= =?utf-8?q?ther?= Subject: [PATCH 5/8] ARM: dts: imx: Fix LCDIF compatible strings Date: Thu, 13 Aug 2020 04:29:07 +0300 Message-Id: <20200813012910.13576-6-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200813012910.13576-1-laurent.pinchart@ideasonboard.com> References: <20200813012910.13576-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org The LCDIF in the i.MX6 SoCs has additional features compared to the i.MX28. Replace the fsl,imx28-lcdif fallback compatible string with fsl,imx6sx-lcdif to reflect that. Signed-off-by: Laurent Pinchart --- arch/arm/boot/dts/imx6sl.dtsi | 2 +- arch/arm/boot/dts/imx6sll.dtsi | 2 +- arch/arm/boot/dts/imx6sx.dtsi | 4 ++-- arch/arm/boot/dts/imx6ul.dtsi | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/arm/boot/dts/imx6sl.dtsi b/arch/arm/boot/dts/imx6sl.dtsi index 911d8cf77f2c..deeb647ffc3f 100644 --- a/arch/arm/boot/dts/imx6sl.dtsi +++ b/arch/arm/boot/dts/imx6sl.dtsi @@ -769,7 +769,7 @@ epdc: epdc@20f4000 { }; lcdif: lcdif@20f8000 { - compatible = "fsl,imx6sl-lcdif", "fsl,imx28-lcdif"; + compatible = "fsl,imx6sl-lcdif", "fsl,imx6sx-lcdif"; reg = <0x020f8000 0x4000>; interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>; clocks = <&clks IMX6SL_CLK_LCDIF_PIX>, diff --git a/arch/arm/boot/dts/imx6sll.dtsi b/arch/arm/boot/dts/imx6sll.dtsi index edd3abb9a9f1..c51072bb43ba 100644 --- a/arch/arm/boot/dts/imx6sll.dtsi +++ b/arch/arm/boot/dts/imx6sll.dtsi @@ -644,7 +644,7 @@ pxp: pxp@20f0000 { }; lcdif: lcd-controller@20f8000 { - compatible = "fsl,imx6sll-lcdif", "fsl,imx28-lcdif"; + compatible = "fsl,imx6sll-lcdif", "fsl,imx6sx-lcdif"; reg = <0x020f8000 0x4000>; interrupts = ; clocks = <&clks IMX6SLL_CLK_LCDIF_PIX>, diff --git a/arch/arm/boot/dts/imx6sx.dtsi b/arch/arm/boot/dts/imx6sx.dtsi index 94e3df47d1ad..67da3a2d48ec 100644 --- a/arch/arm/boot/dts/imx6sx.dtsi +++ b/arch/arm/boot/dts/imx6sx.dtsi @@ -1241,7 +1241,7 @@ csi2: csi@221c000 { }; lcdif1: lcdif@2220000 { - compatible = "fsl,imx6sx-lcdif", "fsl,imx28-lcdif"; + compatible = "fsl,imx6sx-lcdif"; reg = <0x02220000 0x4000>; interrupts = ; clocks = <&clks IMX6SX_CLK_LCDIF1_PIX>, @@ -1253,7 +1253,7 @@ lcdif1: lcdif@2220000 { }; lcdif2: lcdif@2224000 { - compatible = "fsl,imx6sx-lcdif", "fsl,imx28-lcdif"; + compatible = "fsl,imx6sx-lcdif"; reg = <0x02224000 0x4000>; interrupts = ; clocks = <&clks IMX6SX_CLK_LCDIF2_PIX>, diff --git a/arch/arm/boot/dts/imx6ul.dtsi b/arch/arm/boot/dts/imx6ul.dtsi index 5379a03391bd..b16cce1680a9 100644 --- a/arch/arm/boot/dts/imx6ul.dtsi +++ b/arch/arm/boot/dts/imx6ul.dtsi @@ -978,7 +978,7 @@ csi: csi@21c4000 { }; lcdif: lcdif@21c8000 { - compatible = "fsl,imx6ul-lcdif", "fsl,imx28-lcdif"; + compatible = "fsl,imx6ul-lcdif", "fsl,imx6sx-lcdif"; reg = <0x021c8000 0x4000>; interrupts = ; clocks = <&clks IMX6UL_CLK_LCDIF_PIX>, From patchwork Thu Aug 13 01:29:08 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 253875 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.1 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F16E8C433E1 for ; Thu, 13 Aug 2020 01:29:43 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id C8A3520675 for ; Thu, 13 Aug 2020 01:29:43 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="hC8DF3IG" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726609AbgHMB3n (ORCPT ); Wed, 12 Aug 2020 21:29:43 -0400 Received: from perceval.ideasonboard.com ([213.167.242.64]:57532 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726518AbgHMB3n (ORCPT ); Wed, 12 Aug 2020 21:29:43 -0400 Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 9CF22186A; Thu, 13 Aug 2020 03:29:34 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1597282175; bh=MZn8mLN17DKncF4EzGPQOwmCiHKdGcl5P1OVLaGPHuo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hC8DF3IGTnkdKJuVftP62Dll0HeMlUKg7X9GIOiGpfhzYaiB3KlBE9h3d111eY1iy g9a3nK3STdDR5d/eZuVP2Iib8JH4PxeNNToKsBq6uq2eoIJ6FSffptsPdLSexBotle SNoCkdMosbhrmeDy0hspjo6zn5KATGBDfXI2M5/U= From: Laurent Pinchart To: dri-devel@lists.freedesktop.org Cc: devicetree@vger.kernel.org, Marek Vasut , Stefan Agner , Rob Herring , Pengutronix Kernel Team , linux-arm-kernel@lists.infradead.org, =?utf-8?q?Guido_G=C3=BCn?= =?utf-8?q?ther?= Subject: [PATCH 6/8] arm64: dts: imx8mq: Fix LCDIF compatible strings Date: Thu, 13 Aug 2020 04:29:08 +0300 Message-Id: <20200813012910.13576-7-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200813012910.13576-1-laurent.pinchart@ideasonboard.com> References: <20200813012910.13576-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org The LCDIF in the i.MX8 SoCs has additional features compared to the i.MX28. Replace the fsl,imx28-lcdif fallback compatible string with fsl,imx6sx-lcdif to reflect that. Signed-off-by: Laurent Pinchart --- arch/arm64/boot/dts/freescale/imx8mq.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/freescale/imx8mq.dtsi b/arch/arm64/boot/dts/freescale/imx8mq.dtsi index 978f8122c0d2..4731c3992179 100644 --- a/arch/arm64/boot/dts/freescale/imx8mq.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mq.dtsi @@ -506,7 +506,7 @@ sdma2: sdma@302c0000 { }; lcdif: lcd-controller@30320000 { - compatible = "fsl,imx8mq-lcdif", "fsl,imx28-lcdif"; + compatible = "fsl,imx8mq-lcdif", "fsl,imx6sx-lcdif"; reg = <0x30320000 0x10000>; interrupts = ; clocks = <&clk IMX8MQ_CLK_LCDIF_PIXEL>; From patchwork Thu Aug 13 01:29:10 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 253874 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.1 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0BDB7C433EA for ; Thu, 13 Aug 2020 01:29:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id DCDE220829 for ; Thu, 13 Aug 2020 01:29:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="dZzlVRMc" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726606AbgHMB3p (ORCPT ); Wed, 12 Aug 2020 21:29:45 -0400 Received: from perceval.ideasonboard.com ([213.167.242.64]:57532 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726611AbgHMB3o (ORCPT ); Wed, 12 Aug 2020 21:29:44 -0400 Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id B365618A7; Thu, 13 Aug 2020 03:29:37 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1597282178; bh=0MJXmtEOSfpT4GzXXxLVyhw31wcTrvCIzdjEpjQWjNk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dZzlVRMcHkAb4fmN8TC0XiOkuHDGuIQYiBNpK7YZNR+BQ3tfjp6Oq48krhKi4c1qO iEa8of+G1SEOwj4gn/q2d70+DZCQUtwp6eSzwyljt0VH5AxcEse7x4sKR7MCZc+aDc fjLRwPER1qBBPUv++hD6PfGhtFXgioZPZoPJxY6I= From: Laurent Pinchart To: dri-devel@lists.freedesktop.org Cc: devicetree@vger.kernel.org, Marek Vasut , Stefan Agner , Rob Herring , Pengutronix Kernel Team , linux-arm-kernel@lists.infradead.org, =?utf-8?q?Guido_G=C3=BCn?= =?utf-8?q?ther?= Subject: [PATCH 8/8] drm: mxsfb: Add support for the bus-width DT property Date: Thu, 13 Aug 2020 04:29:10 +0300 Message-Id: <20200813012910.13576-9-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200813012910.13576-1-laurent.pinchart@ideasonboard.com> References: <20200813012910.13576-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org A new bus-width DT property has been introduced in the bindings to allow overriding the bus width. Support it. Signed-off-by: Laurent Pinchart --- drivers/gpu/drm/mxsfb/mxsfb_drv.c | 26 ++++++++++++++++++++++++++ drivers/gpu/drm/mxsfb/mxsfb_drv.h | 2 ++ drivers/gpu/drm/mxsfb/mxsfb_kms.c | 8 ++++++-- 3 files changed, 34 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/mxsfb/mxsfb_drv.c b/drivers/gpu/drm/mxsfb/mxsfb_drv.c index 8c549c3931af..fab3aae8cf73 100644 --- a/drivers/gpu/drm/mxsfb/mxsfb_drv.c +++ b/drivers/gpu/drm/mxsfb/mxsfb_drv.c @@ -95,10 +95,36 @@ static int mxsfb_attach_bridge(struct mxsfb_drm_private *mxsfb) { struct drm_device *drm = mxsfb->drm; struct drm_connector_list_iter iter; + struct device_node *ep; struct drm_panel *panel; struct drm_bridge *bridge; + u32 bus_width = 0; int ret; + ep = of_graph_get_endpoint_by_regs(drm->dev->of_node, 0, 0); + if (!ep) + return -ENODEV; + + of_property_read_u32(ep, "bus-width", &bus_width); + of_node_put(ep); + + switch (bus_width) { + case 16: + mxsfb->bus_format = MEDIA_BUS_FMT_RGB565_1X16; + break; + case 18: + mxsfb->bus_format = MEDIA_BUS_FMT_RGB666_1X18; + break; + case 24: + mxsfb->bus_format = MEDIA_BUS_FMT_RGB888_1X24; + break; + case 0: + break; + default: + DRM_DEV_ERROR(drm->dev, "Invalid bus-width %u", bus_width); + return -ENODEV; + } + ret = drm_of_find_panel_or_bridge(drm->dev->of_node, 0, 0, &panel, &bridge); if (ret) diff --git a/drivers/gpu/drm/mxsfb/mxsfb_drv.h b/drivers/gpu/drm/mxsfb/mxsfb_drv.h index 399d23e91ed1..c4f7a8a0c891 100644 --- a/drivers/gpu/drm/mxsfb/mxsfb_drv.h +++ b/drivers/gpu/drm/mxsfb/mxsfb_drv.h @@ -32,6 +32,8 @@ struct mxsfb_drm_private { struct clk *clk_axi; struct clk *clk_disp_axi; + u32 bus_format; + struct drm_device *drm; struct { struct drm_plane primary; diff --git a/drivers/gpu/drm/mxsfb/mxsfb_kms.c b/drivers/gpu/drm/mxsfb/mxsfb_kms.c index b721b8b262ce..6d512f346918 100644 --- a/drivers/gpu/drm/mxsfb/mxsfb_kms.c +++ b/drivers/gpu/drm/mxsfb/mxsfb_kms.c @@ -50,11 +50,15 @@ static void mxsfb_set_formats(struct mxsfb_drm_private *mxsfb) { struct drm_device *drm = mxsfb->drm; const u32 format = mxsfb->crtc.primary->state->fb->format->format; - u32 bus_format = MEDIA_BUS_FMT_RGB888_1X24; + u32 bus_format; u32 ctrl, ctrl1; - if (mxsfb->connector->display_info.num_bus_formats) + if (mxsfb->bus_format) + bus_format = mxsfb->bus_format; + else if (mxsfb->connector->display_info.num_bus_formats) bus_format = mxsfb->connector->display_info.bus_formats[0]; + else + bus_format = MEDIA_BUS_FMT_RGB888_1X24; DRM_DEV_DEBUG_DRIVER(drm->dev, "Using bus_format: 0x%08X\n", bus_format);