From patchwork Mon Nov 12 12:31:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 150827 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp3084887ljp; Mon, 12 Nov 2018 04:31:29 -0800 (PST) X-Google-Smtp-Source: AJdET5ddoPnzf+9lNdffnliiT0Hf6lAFcuVyXkwke90xrY+d9kUBH9F6c0WDUY+e+/J1C/BB3dtB X-Received: by 2002:a62:4251:: with SMTP id p78-v6mr738579pfa.72.1542025889626; Mon, 12 Nov 2018 04:31:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542025889; cv=none; d=google.com; s=arc-20160816; b=RTfpsmc+gzUvjookeDsVQ5MpaXoqNa6ODUCPOP8kmuzpSvNd9UyBrmIXWx1SoZf0F6 2np4Mlt1VS+u5J5D9k0Wr9yqZy4JbjO6XnDq9mVj6fkUuuAA/ZYRNChB9GTkTXjNmOQ7 k8N6dGNsrqDkSTHjhUl9ZxvyZv2Sz+OITWvws463AHa6tdkhN0/i6y+VWMVNE/ahCgR5 6u79V9Z6pfAl80D/spBq3+9eaAOWbxdQg96WvUf4i/5Imh3x/qCuSDfvPlmg2+hhqo6V hKirOV77l5Wfbz0F4gVi/BvrEnfS5hjhV7LVzH2tYOyR6boCg2DP6xuAVbHy4pp3e8mr v8Mg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:references:in-reply-to:message-id:date:subject :to:from:delivered-to; bh=EMt/+gJAbqONiw69unGnBMd5d0k5Tudk5K0nOIlTOo4=; b=QYcdrK/BnTKLLUWp9gV++4XTKVUlfxBudq1uBj8h0K8zzzUiLy22/q8fV0Cj088fDa Ti4aOI2EK+0rHvwdB0HTjzSBSSvdMPZ3hEh8d9wWpx87s1Eb6cWTNDWClrqyHFsCT4PB uYwztSfWxZaECfAUmWDauh32oTqueVZAazwY1NTyyQm3jIH/5T2OhgvBJXc2Fm1GwQkh I4LhVyDD7g1RtHZxeM8dMPj8ksEBjkFVBbPyHbkuIWFgGms26Yj+xPki94jKAjBrN/kU E3UcxXvXe0DLDFGIhlL4jud2uJnYgQKr3+WHR2EDgTX1h2NtRIxrEwNZsU+4uCvgwX1D rzMg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 2610:10:20:722:a800:ff:fe36:1795 as permitted sender) smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from gabe.freedesktop.org (gabe.freedesktop.org. [2610:10:20:722:a800:ff:fe36:1795]) by mx.google.com with ESMTPS id v184-v6si19464838pfv.249.2018.11.12.04.31.28 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 12 Nov 2018 04:31:29 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 2610:10:20:722:a800:ff:fe36:1795 as permitted sender) client-ip=2610:10:20:722:a800:ff:fe36:1795; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 2610:10:20:722:a800:ff:fe36:1795 as permitted sender) smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 4ED0A89C1F; Mon, 12 Nov 2018 12:31:27 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lf1-x142.google.com (mail-lf1-x142.google.com [IPv6:2a00:1450:4864:20::142]) by gabe.freedesktop.org (Postfix) with ESMTPS id BA8BE89C17 for ; Mon, 12 Nov 2018 12:31:25 +0000 (UTC) Received: by mail-lf1-x142.google.com with SMTP id l10so2415482lfh.9 for ; Mon, 12 Nov 2018 04:31:25 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=QOuH5u6L6ECxdl5g1C/JsGZXpp/yRwsLno03faNlCKY=; b=RK8ifgdqwoqs8bDnP/yVdjqzq+KtVAaViQTmvS8YpkMnYI5fJQGRzyNkvqIrlz8LIf 0ISwWsQKz5CIqtuILNcS2LhGcaKioXy49Rt+xzWpV2EdNemLPoOme/UcdWwAxuUqCRhz QrZFyzTKvv7c9R+fHkUebTWg7mdwBLlx+w2BZi5phtG/X9k2qFVEZ5zLA7sOOalV8Xs5 2XV24KX13GqypcVJnp4yTtmRWVyITxMVnAdMw2YHccuSy38LFfI8xINwF6p1n/EuXptN 5PvTkbnzsAWeK3Dtesnz6ZggIxRoF/dmmg98RmvAJaBH54puVNWuDSYjKM52nep2L2Tv Vbgw== X-Gm-Message-State: AGRZ1gJLl2VYWi4og2oAJsVU2Xg5E+ljr/E+Fe4kf8izCWJLIn7zoKqz hBUVZt9Tn+mplt3WYKiuwi6SgU6E4Ta2RA== X-Received: by 2002:a19:54d7:: with SMTP id b84mr464934lfl.131.1542025883872; Mon, 12 Nov 2018 04:31:23 -0800 (PST) Received: from genomnajs.ideon.se ([85.235.10.227]) by smtp.gmail.com with ESMTPSA id z9sm2908710lfj.79.2018.11.12.04.31.22 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 12 Nov 2018 04:31:22 -0800 (PST) From: Linus Walleij To: Sudeep Holla , Lorenzo Pieralisi , linux-arm-kernel@lists.infradead.org Subject: [PATCH 1/3 v6] ARM: dts: Modernize the Vexpress PL111 integration Date: Mon, 12 Nov 2018 13:31:13 +0100 Message-Id: <20181112123115.6176-2-linus.walleij@linaro.org> X-Mailer: git-send-email 2.17.2 In-Reply-To: <20181112123115.6176-1-linus.walleij@linaro.org> References: <20181112123115.6176-1-linus.walleij@linaro.org> X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Liviu Dudau , dri-devel@lists.freedesktop.org, Mali DP Maintainers , Robin Murphy MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" The Versatile Express was submitted with the actual display bridges unconnected (but defined in the device tree) and mock "panels" encoded in the device tree node of the PL111 controller. This doesn't even remotely describe the actual Versatile Express hardware. Exploit the SiI9022 bridge by connecting the PL111 pads to it, making it use EDID or fallback values to drive the monitor. The also has to use the reserved memory through the CMA pool rather than by open coding a memory region and remapping it explicitly in the driver. To achieve this, a reserved-memory node must exist in the root of the device tree, so we need to pull that out of the motherboard .dtsi include files, and push it into each top-level device tree instead. We do the same manouver for all the Versatile Express boards, taking into account the different location of the video RAM depending on which chip select is used on each platform. This plays nicely with the new PL111 DRM driver and follows the standard ways of assigning bridges and memory pools for graphics. Cc: Sudeep Holla Cc: Lorenzo Pieralisi Cc: Liviu Dudau Cc: Mali DP Maintainers Cc: Robin Murphy Signed-off-by: Linus Walleij --- ChangeLog v5->v6: - Change the panel in the RTSMv8 to the simple panel "arm,rtsmv8-panel" simply. ChangeLog v4->v5: - Fix up the RTSMv8 AEM VE by using the new simple VGA panel I invented in the DRI simple panel. - NOTE: This patch depends at runtime on the DRM simple panel patch "drm/panel: simple: Support simple VGA panels" ChangeLog v3->v4: - Fix the ARM and ARM64 shared vexpress-v2m-rc1.dtsi file address-cells etc so that the ports do not give DTC warnings anymore. - Fixed up the CA53 DTS: use the right chip select base at 0x18000000. - Fixed up the Real-Time Systems Models Virtual Executive RTSMv8 AEM VE: - Added the I2C interface (whether implemented in the emulator or not) - Fixed the chip select of the memory node to the right memory base 0x18000000. - Add right address-cells and size-cells to the vexpress-v2m.dtsi dvi port as well. - Create two endpoints for the motherboard and the core tile in the vexpress-v2m.dtsi. This is just used by the CA9 VExpress. Tested on both QEMU and the actual hardware with the DRM driver. This removes the last warnings from the DTC. ChangeLog v2->v3: - Add some reg = <0>; to the ports to make the DTC happy. - Add reserved memory node to arch/arm64/boot/dts/arm/vexpress-v2f-1xv7-ca53x2.dts as well. ChangeLog v1->v2: - Fix up the memory address for the -rs1 tiles to 0x18000000 - Drop a bunch of extraneous reg props from the DVI adapter --- arch/arm/boot/dts/vexpress-v2m-rs1.dtsi | 49 +++++---------- arch/arm/boot/dts/vexpress-v2m.dtsi | 63 +++++++++---------- arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts | 14 +++++ arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts | 14 +++++ arch/arm/boot/dts/vexpress-v2p-ca5s.dts | 14 +++++ arch/arm/boot/dts/vexpress-v2p-ca9.dts | 43 ++++++------- arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts | 23 +++++++ .../boot/dts/arm/rtsm_ve-motherboard.dtsi | 37 ++--------- .../boot/dts/arm/vexpress-v2f-1xv7-ca53x2.dts | 14 +++++ 9 files changed, 150 insertions(+), 121 deletions(-) diff --git a/arch/arm/boot/dts/vexpress-v2m-rs1.dtsi b/arch/arm/boot/dts/vexpress-v2m-rs1.dtsi index 4488c8fe213a..a9569d15de41 100644 --- a/arch/arm/boot/dts/vexpress-v2m-rs1.dtsi +++ b/arch/arm/boot/dts/vexpress-v2m-rs1.dtsi @@ -43,11 +43,6 @@ bank-width = <4>; }; - v2m_video_ram: vram@2,00000000 { - compatible = "arm,vexpress-vram"; - reg = <2 0x00000000 0x00800000>; - }; - ethernet@2,02000000 { compatible = "smsc,lan9118", "smsc,lan9115"; reg = <2 0x02000000 0x10000>; @@ -223,13 +218,24 @@ v2m_i2c_dvi: i2c@160000 { compatible = "arm,versatile-i2c"; reg = <0x160000 0x1000>; - #address-cells = <1>; #size-cells = <0>; dvi-transmitter@39 { compatible = "sil,sii9022-tpi", "sil,sii9022"; reg = <0x39>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + dvi_bridge_in: endpoint { + remote-endpoint = <&clcd_pads>; + }; + }; + }; }; dvi-transmitter@60 { @@ -260,37 +266,16 @@ interrupts = <14>; clocks = <&v2m_oscclk1>, <&smbclk>; clock-names = "clcdclk", "apb_pclk"; - memory-region = <&v2m_video_ram>; - max-memory-bandwidth = <50350000>; /* 16bpp @ 25.175MHz */ + /* 800x600 16bpp @36MHz works fine */ + max-memory-bandwidth = <54000000>; + memory-region = <&vram>; port { - v2m_clcd_pads: endpoint { - remote-endpoint = <&v2m_clcd_panel>; + clcd_pads: endpoint { + remote-endpoint = <&dvi_bridge_in>; arm,pl11x,tft-r0g0b0-pads = <0 8 16>; }; }; - - panel { - compatible = "panel-dpi"; - - port { - v2m_clcd_panel: endpoint { - remote-endpoint = <&v2m_clcd_pads>; - }; - }; - - panel-timing { - clock-frequency = <25175000>; - hactive = <640>; - hback-porch = <40>; - hfront-porch = <24>; - hsync-len = <96>; - vactive = <480>; - vback-porch = <32>; - vfront-porch = <11>; - vsync-len = <2>; - }; - }; }; }; diff --git a/arch/arm/boot/dts/vexpress-v2m.dtsi b/arch/arm/boot/dts/vexpress-v2m.dtsi index 4db42f6326a3..fd42e1194179 100644 --- a/arch/arm/boot/dts/vexpress-v2m.dtsi +++ b/arch/arm/boot/dts/vexpress-v2m.dtsi @@ -43,11 +43,6 @@ bank-width = <4>; }; - v2m_video_ram: vram@3,00000000 { - compatible = "arm,vexpress-vram"; - reg = <3 0x00000000 0x00800000>; - }; - ethernet@3,02000000 { compatible = "smsc,lan9118", "smsc,lan9115"; reg = <3 0x02000000 0x10000>; @@ -223,13 +218,37 @@ v2m_i2c_dvi: i2c@16000 { compatible = "arm,versatile-i2c"; reg = <0x16000 0x1000>; - #address-cells = <1>; #size-cells = <0>; dvi-transmitter@39 { compatible = "sil,sii9022-tpi", "sil,sii9022"; reg = <0x39>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + /* + * Both the core tile and the motherboard routes their output + * pads to this transmitter. The motherboard system controller + * can select one of them as input using a mux register in + * "arm,vexpress-muxfpga". The Vexpress with the CA9 core tile is + * the only platform with this specific set-up. + */ + port@0 { + reg = <0>; + dvi_bridge_in_ct: endpoint { + remote-endpoint = <&clcd_pads_ct>; + }; + }; + port@1 { + reg = <1>; + dvi_bridge_in_mb: endpoint { + remote-endpoint = <&clcd_pads_mb>; + }; + }; + }; }; dvi-transmitter@60 { @@ -253,6 +272,7 @@ reg-shift = <2>; }; + clcd@1f000 { compatible = "arm,pl111", "arm,primecell"; reg = <0x1f000 0x1000>; @@ -260,37 +280,16 @@ interrupts = <14>; clocks = <&v2m_oscclk1>, <&smbclk>; clock-names = "clcdclk", "apb_pclk"; - memory-region = <&v2m_video_ram>; - max-memory-bandwidth = <50350000>; /* 16bpp @ 25.175MHz */ + /* 800x600 16bpp @36MHz works fine */ + max-memory-bandwidth = <54000000>; + memory-region = <&vram>; port { - v2m_clcd_pads: endpoint { - remote-endpoint = <&v2m_clcd_panel>; + clcd_pads_mb: endpoint { + remote-endpoint = <&dvi_bridge_in_mb>; arm,pl11x,tft-r0g0b0-pads = <0 8 16>; }; }; - - panel { - compatible = "panel-dpi"; - - port { - v2m_clcd_panel: endpoint { - remote-endpoint = <&v2m_clcd_pads>; - }; - }; - - panel-timing { - clock-frequency = <25175000>; - hactive = <640>; - hback-porch = <40>; - hfront-porch = <24>; - hsync-len = <96>; - vactive = <480>; - vback-porch = <32>; - vfront-porch = <11>; - vsync-len = <2>; - }; - }; }; }; diff --git a/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts b/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts index 3971427a105b..0dc4277d5f8b 100644 --- a/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts +++ b/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts @@ -53,6 +53,20 @@ reg = <0 0x80000000 0 0x40000000>; }; + reserved-memory { + #address-cells = <2>; + #size-cells = <2>; + ranges; + + /* Chipselect 2 is physically at 0x18000000 */ + vram: vram@18000000 { + /* 8 MB of designated video RAM */ + compatible = "shared-dma-pool"; + reg = <0 0x18000000 0 0x00800000>; + no-map; + }; + }; + hdlcd@2b000000 { compatible = "arm,hdlcd"; reg = <0 0x2b000000 0 0x1000>; diff --git a/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts b/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts index ac6b90e9d806..a5136b1adaa2 100644 --- a/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts +++ b/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts @@ -104,6 +104,20 @@ reg = <0 0x80000000 0 0x40000000>; }; + reserved-memory { + #address-cells = <2>; + #size-cells = <2>; + ranges; + + /* Chipselect 2 is physically at 0x18000000 */ + vram: vram@18000000 { + /* 8 MB of designated video RAM */ + compatible = "shared-dma-pool"; + reg = <0 0x18000000 0 0x00800000>; + no-map; + }; + }; + wdt@2a490000 { compatible = "arm,sp805", "arm,primecell"; reg = <0 0x2a490000 0 0x1000>; diff --git a/arch/arm/boot/dts/vexpress-v2p-ca5s.dts b/arch/arm/boot/dts/vexpress-v2p-ca5s.dts index e5b4a7570a01..d5b47d526f9e 100644 --- a/arch/arm/boot/dts/vexpress-v2p-ca5s.dts +++ b/arch/arm/boot/dts/vexpress-v2p-ca5s.dts @@ -55,6 +55,20 @@ reg = <0x80000000 0x40000000>; }; + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + /* Chipselect 2 is physically at 0x18000000 */ + vram: vram@18000000 { + /* 8 MB of designated video RAM */ + compatible = "shared-dma-pool"; + reg = <0x18000000 0x00800000>; + no-map; + }; + }; + hdlcd@2a110000 { compatible = "arm,hdlcd"; reg = <0x2a110000 0x1000>; diff --git a/arch/arm/boot/dts/vexpress-v2p-ca9.dts b/arch/arm/boot/dts/vexpress-v2p-ca9.dts index 7ec3dac1f61d..7f019e0eee84 100644 --- a/arch/arm/boot/dts/vexpress-v2p-ca9.dts +++ b/arch/arm/boot/dts/vexpress-v2p-ca9.dts @@ -69,6 +69,20 @@ reg = <0x60000000 0x40000000>; }; + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + /* Chipselect 3 is physically at 0x4c000000 */ + vram: vram@4c000000 { + /* 8 MB of designated video RAM */ + compatible = "shared-dma-pool"; + reg = <0x4c000000 0x00800000>; + no-map; + }; + }; + clcd@10020000 { compatible = "arm,pl111", "arm,primecell"; reg = <0x10020000 0x1000>; @@ -76,36 +90,15 @@ interrupts = <0 44 4>; clocks = <&oscclk1>, <&oscclk2>; clock-names = "clcdclk", "apb_pclk"; - max-memory-bandwidth = <130000000>; /* 16bpp @ 63.5MHz */ + /* 1024x768 16bpp @65MHz */ + max-memory-bandwidth = <95000000>; port { - clcd_pads: endpoint { - remote-endpoint = <&clcd_panel>; + clcd_pads_ct: endpoint { + remote-endpoint = <&dvi_bridge_in_ct>; arm,pl11x,tft-r0g0b0-pads = <0 8 16>; }; }; - - panel { - compatible = "panel-dpi"; - - port { - clcd_panel: endpoint { - remote-endpoint = <&clcd_pads>; - }; - }; - - panel-timing { - clock-frequency = <63500127>; - hactive = <1024>; - hback-porch = <152>; - hfront-porch = <48>; - hsync-len = <104>; - vactive = <768>; - vback-porch = <23>; - vfront-porch = <3>; - vsync-len = <4>; - }; - }; }; memory-controller@100e0000 { diff --git a/arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts b/arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts index 602f63f72c37..fe4fda473c0a 100644 --- a/arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts +++ b/arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts @@ -78,6 +78,20 @@ <0x00000008 0x80000000 0 0x80000000>; }; + reserved-memory { + #address-cells = <2>; + #size-cells = <2>; + ranges; + + /* Chipselect 2,00000000 is physically at 0x18000000 */ + vram: vram@18000000 { + /* 8 MB of designated video RAM */ + compatible = "shared-dma-pool"; + reg = <0x00000000 0x18000000 0 0x00800000>; + no-map; + }; + }; + gic: interrupt-controller@2c001000 { compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; #interrupt-cells = <3>; @@ -107,6 +121,15 @@ <0 63 4>; }; + panel { + compatible = "arm,rtsm-display"; + port { + panel_in: endpoint { + remote-endpoint = <&clcd_pads>; + }; + }; + }; + smb@8000000 { compatible = "simple-bus"; diff --git a/arch/arm64/boot/dts/arm/rtsm_ve-motherboard.dtsi b/arch/arm64/boot/dts/arm/rtsm_ve-motherboard.dtsi index d2dbc3f39263..b25f3cbd3da8 100644 --- a/arch/arm64/boot/dts/arm/rtsm_ve-motherboard.dtsi +++ b/arch/arm64/boot/dts/arm/rtsm_ve-motherboard.dtsi @@ -24,11 +24,6 @@ bank-width = <4>; }; - v2m_video_ram: vram@2,00000000 { - compatible = "arm,vexpress-vram"; - reg = <2 0x00000000 0x00800000>; - }; - ethernet@2,02000000 { compatible = "smsc,lan91c111"; reg = <2 0x02000000 0x10000>; @@ -187,38 +182,16 @@ interrupts = <14>; clocks = <&v2m_oscclk1>, <&v2m_clk24mhz>; clock-names = "clcdclk", "apb_pclk"; - arm,pl11x,framebuffer = <0x18000000 0x00180000>; - memory-region = <&v2m_video_ram>; - max-memory-bandwidth = <130000000>; /* 16bpp @ 63.5MHz */ + /* 800x600 16bpp @36MHz works fine */ + max-memory-bandwidth = <54000000>; + memory-region = <&vram>; port { - v2m_clcd_pads: endpoint { - remote-endpoint = <&v2m_clcd_panel>; + clcd_pads: endpoint { + remote-endpoint = <&panel_in>; arm,pl11x,tft-r0g0b0-pads = <0 8 16>; }; }; - - panel { - compatible = "panel-dpi"; - - port { - v2m_clcd_panel: endpoint { - remote-endpoint = <&v2m_clcd_pads>; - }; - }; - - panel-timing { - clock-frequency = <63500127>; - hactive = <1024>; - hback-porch = <152>; - hfront-porch = <48>; - hsync-len = <104>; - vactive = <768>; - vback-porch = <23>; - vfront-porch = <3>; - vsync-len = <4>; - }; - }; }; virtio-block@130000 { diff --git a/arch/arm64/boot/dts/arm/vexpress-v2f-1xv7-ca53x2.dts b/arch/arm64/boot/dts/arm/vexpress-v2f-1xv7-ca53x2.dts index 38880380e0fa..8981c3d2ff18 100644 --- a/arch/arm64/boot/dts/arm/vexpress-v2f-1xv7-ca53x2.dts +++ b/arch/arm64/boot/dts/arm/vexpress-v2f-1xv7-ca53x2.dts @@ -65,6 +65,20 @@ reg = <0 0x80000000 0 0x80000000>; /* 2GB @ 2GB */ }; + reserved-memory { + #address-cells = <2>; + #size-cells = <2>; + ranges; + + /* Chipselect 2 is physically at 0x18000000 */ + vram: vram@18000000 { + /* 8 MB of designated video RAM */ + compatible = "shared-dma-pool"; + reg = <0 0x18000000 0 0x00800000>; + no-map; + }; + }; + gic: interrupt-controller@2c001000 { compatible = "arm,gic-400"; #interrupt-cells = <3>; From patchwork Mon Nov 12 12:31:14 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 150828 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp3084926ljp; Mon, 12 Nov 2018 04:31:32 -0800 (PST) X-Google-Smtp-Source: AJdET5feLva/XQ1ERJgfXfc4MTKDUPCnVpr58+T7tZMGT7jQbhJwH4PYcOm0xAi6KgQQwesg4LpY X-Received: by 2002:a62:d084:: with SMTP id p126-v6mr742981pfg.147.1542025891825; Mon, 12 Nov 2018 04:31:31 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542025891; cv=none; d=google.com; s=arc-20160816; b=QvARHb0Duakvxwu2dJKtvv/d8opfwOD/kpfYayTtGQ1eyT7909cGnff5sIOquAADJb WwoT2QOt97pWG8iL9Rmknx822QvSHFrw1X7ozC0bspdnAP977GjsPgMAJVV6dH+trmGi kuYWNhaWd3bXR+7X0pYAfcixObUXzs62YjvJUDNbWQbbAEh22iO8Mqa+7uplxChTfgh9 5MfA9S27LUElfGwl853tZyfabKjeHLRtKN8I8AXuXaGimqAFYa33j8Il//KbK6Dqj3LS 2guERd2VdDrpf0ddp4Zc4ZHfiHIAYeqnUqC2FcHPWpyEl02/ZKNTAZF5eSsJfancREGd 6/gQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:references:in-reply-to:message-id:date:subject :to:from:delivered-to; bh=2o/RafFn9CZiGYrCQaLPjKe2Sp1S5MnqfXlIrct5VuI=; b=zSd6ojvv331GLUfN04pFTxCqkQJzoLP+1Evog4ymcX9kOPTvAhVcj+DLLCHougJLyW LmLeU1Gtdo5VFnZYYiNYL5X289Ml0Pf4Jbx0WJfPSpO5VV8ZwzTrl5innjlapaOBlmqn Zw8smcXntclX8AP1yY4d1WE+SBrOi+LAeptOb57egPatUxkcTv+1u+oSJsUmFeeWYSK4 JrfBeImWAQnNwicvxgQsOVFB7uDYyIpEpGzXNuOiu4UmCvUOjIrgjXa/K2qUjsgoVDJ3 b7SEYYSkefIjX98I0RQngj/6KNchc3XINecCQm2R0vDKxQW7+xtNXzRtwGD70T9AZB5J 4vqg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 131.252.210.177 as permitted sender) smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from gabe.freedesktop.org (gabe.freedesktop.org. [131.252.210.177]) by mx.google.com with ESMTPS id x32si16389395pgk.309.2018.11.12.04.31.31 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 12 Nov 2018 04:31:31 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 131.252.210.177 as permitted sender) client-ip=131.252.210.177; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 131.252.210.177 as permitted sender) smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 8BA7D89D7D; Mon, 12 Nov 2018 12:31:30 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lf1-x141.google.com (mail-lf1-x141.google.com [IPv6:2a00:1450:4864:20::141]) by gabe.freedesktop.org (Postfix) with ESMTPS id 28CAC89D7D for ; Mon, 12 Nov 2018 12:31:28 +0000 (UTC) Received: by mail-lf1-x141.google.com with SMTP id z13so6018721lfe.11 for ; Mon, 12 Nov 2018 04:31:28 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=M6jteyHdbO+FsYgm23BEJ7fVVWc4tSulVw2Tc/9O6No=; b=s0mlJF7BmTVD+mMaUwmC/zw2qzHjbHfFDt2IVXknBLyeXcxfDdT10Ns0yemhAnExaH r5uqE8EvOBTDNkz2lZ7hf2KYUocPezGYYJ+XZnan6vat9l36tW66266RPr6g8qZ+heY+ pIUIn2cjlBdI0rV+sRIHU6zvrE3Pay3FxTKmun3oiMqUgnk+Kuc3BzepV7VwWtPbGi22 qq4elnGkniBk7WEvFr4mja6ZycTl/DTm6IXzeQQFxyngqLlmRFF2PeZ83YgstPCIYylu jwBuvcr1RSi+rx25tNuhIH7UIjB9NwdhemEl761q9Shly/FrJ2CMEPH6tBEvdqj7bh7C HhCw== X-Gm-Message-State: AGRZ1gLX3+poiyLwYMfISWFOdg12+tSaXdhxC0kbsm7qQP274xV+w+4T 1AiuC8qf5QDEhoLoQm5TEfqsNw== X-Received: by 2002:a19:a28e:: with SMTP id l136mr518109lfe.87.1542025886461; Mon, 12 Nov 2018 04:31:26 -0800 (PST) Received: from genomnajs.ideon.se ([85.235.10.227]) by smtp.gmail.com with ESMTPSA id z9sm2908710lfj.79.2018.11.12.04.31.25 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 12 Nov 2018 04:31:25 -0800 (PST) From: Linus Walleij To: Sudeep Holla , Lorenzo Pieralisi , linux-arm-kernel@lists.infradead.org Subject: [PATCH 2/3 v6] ARM: defconfig: Update the vexpress defconfig Date: Mon, 12 Nov 2018 13:31:14 +0100 Message-Id: <20181112123115.6176-3-linus.walleij@linaro.org> X-Mailer: git-send-email 2.17.2 In-Reply-To: <20181112123115.6176-1-linus.walleij@linaro.org> References: <20181112123115.6176-1-linus.walleij@linaro.org> X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Liviu Dudau , dri-devel@lists.freedesktop.org MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Update the Versatile Express defconfig to match the Kconfig changes in the kernel. Cc: Sudeep Holla Cc: Lorenzo Pieralisi Signed-off-by: Linus Walleij --- ChangeLog v5->v6: - Resending ChangeLog v4->v5: - Resending ChangeLog v3->v4: - Resending ChangeLog v1->v3: - Rebased --- arch/arm/configs/vexpress_defconfig | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/arch/arm/configs/vexpress_defconfig b/arch/arm/configs/vexpress_defconfig index edae1c58fe80..226fe4bfb487 100644 --- a/arch/arm/configs/vexpress_defconfig +++ b/arch/arm/configs/vexpress_defconfig @@ -21,20 +21,17 @@ CONFIG_MODULE_UNLOAD=y CONFIG_ARCH_VEXPRESS=y CONFIG_ARCH_VEXPRESS_DCSCB=y CONFIG_ARCH_VEXPRESS_TC2_PM=y -# CONFIG_SWP_EMULATE is not set CONFIG_SMP=y CONFIG_HAVE_ARM_ARCH_TIMER=y CONFIG_MCPM=y CONFIG_VMSPLIT_2G=y CONFIG_NR_CPUS=8 CONFIG_ARM_PSCI=y -CONFIG_AEABI=y CONFIG_CMA=y CONFIG_ZBOOT_ROM_TEXT=0x0 CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_CMDLINE="console=ttyAMA0" CONFIG_CPU_IDLE=y -CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y CONFIG_VFP=y CONFIG_NEON=y # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set @@ -61,7 +58,6 @@ CONFIG_MTD_PHYSMAP=y CONFIG_MTD_PHYSMAP_OF=y CONFIG_MTD_PLATRAM=y CONFIG_MTD_UBI=y -CONFIG_PROC_DEVICETREE=y CONFIG_VIRTIO_BLK=y # CONFIG_SCSI_PROC_FS is not set CONFIG_BLK_DEV_SD=y @@ -85,7 +81,6 @@ CONFIG_HW_RANDOM_VIRTIO=y CONFIG_I2C=y CONFIG_I2C_VERSATILE=y CONFIG_SENSORS_VEXPRESS=y -CONFIG_REGULATOR=y CONFIG_REGULATOR_VEXPRESS=y CONFIG_FB=y CONFIG_FB_ARMCLCD=y @@ -95,8 +90,6 @@ CONFIG_LOGO=y # CONFIG_LOGO_LINUX_VGA16 is not set CONFIG_SOUND=y CONFIG_SND=y -CONFIG_SND_MIXER_OSS=y -CONFIG_SND_PCM_OSS=y # CONFIG_SND_DRIVERS is not set CONFIG_SND_ARMAACI=y CONFIG_HID_DRAGONRISE=y @@ -133,9 +126,6 @@ CONFIG_VIRTIO_MMIO=y CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y CONFIG_EXT2_FS=y CONFIG_EXT3_FS=y -# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set -# CONFIG_EXT3_FS_XATTR is not set -CONFIG_EXT4_FS=y CONFIG_VFAT_FS=y CONFIG_TMPFS=y CONFIG_JFFS2_FS=y @@ -149,11 +139,9 @@ CONFIG_9P_FS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y CONFIG_DEBUG_INFO=y -CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_KERNEL=y CONFIG_DETECT_HUNG_TASK=y # CONFIG_SCHED_DEBUG is not set CONFIG_DEBUG_USER=y -# CONFIG_CRYPTO_ANSI_CPRNG is not set # CONFIG_CRYPTO_HW is not set From patchwork Mon Nov 12 12:31:15 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 150829 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp3084957ljp; Mon, 12 Nov 2018 04:31:33 -0800 (PST) X-Google-Smtp-Source: AJdET5ey61GH9fdWJ0n5vajDll7BAe/XlzZfRoTx2CNLy7zzNtgdWTXRvbyYeNPax8tPiyTJRXZx X-Received: by 2002:a62:8915:: with SMTP id v21-v6mr721303pfd.137.1542025893781; Mon, 12 Nov 2018 04:31:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542025893; cv=none; d=google.com; s=arc-20160816; b=tfv/FYUcq7CYSNIU/bj5mlVA3xIR0d5Im2DJfEZZLsBVKvXiMDDF+mFRjTU6eBG4+O y/rQjO8XAdPC7IYQjKnSYsKP107TNT8+T8iIcSEkIgWGI7xtB+Is9iLVRGNymkgVXy1n kxDHvrR+zujh6HjWhKbbinWgEM6Yq/mBktFt9eDdm48Izv4V17e5IHfxJWFPcRcL1tVp lWAtkbH5KkZx33DNrkjsLQAbKeGZ3WB7DliFAEHBgktqXx0mXj32YL/1vG6s/ksN3BzW leBDXgN2IWClB3uUuW3nB7hctl34UTi5Fj870BJVAxC1ToxF7lwgRiMa/WfxVZdg4eFc +fgQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:references:in-reply-to:message-id:date:subject :to:from:delivered-to; bh=UqIVRp2hSvBhbHGwkSWgxTjceFsZhSAoJ5T25KMp1V0=; b=OgDW3leTVwma1t/SoO+El+oMcVYhi4f+eY1Wz7nSmUdyecySWfLBAp5FBZaWQDUIBH NQjmZbe9Qj/yQJIJEE46ohnTVRh2CZsZ9N1lZdorqwbk1bRn7NwlCpalxZb7S1pg1S+u bsBoJRiikDHj9vWKBKsQuCtNyvoaYGSw0Y9GSoixr4ezFIg/P+mbe4G3xLcozrfNr7l5 BUioB0qeNJpQbotGbahp2KCReX3gc7PSLy6WCjhQUIkUYwtnPR4KV9VyZLUDyM5pOrHr YanhH3C8bT/6kc3jjZC5psSYgFUPhNOLu9RdMmbIHzBO81Yp+3wPKOKcjxMoavuvMFPG 7RRQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 2610:10:20:722:a800:ff:fe36:1795 as permitted sender) smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from gabe.freedesktop.org (gabe.freedesktop.org. [2610:10:20:722:a800:ff:fe36:1795]) by mx.google.com with ESMTPS id q14si16422862pgq.197.2018.11.12.04.31.33 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 12 Nov 2018 04:31:33 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 2610:10:20:722:a800:ff:fe36:1795 as permitted sender) client-ip=2610:10:20:722:a800:ff:fe36:1795; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 2610:10:20:722:a800:ff:fe36:1795 as permitted sender) smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 3B75889F0B; Mon, 12 Nov 2018 12:31:32 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lf1-x141.google.com (mail-lf1-x141.google.com [IPv6:2a00:1450:4864:20::141]) by gabe.freedesktop.org (Postfix) with ESMTPS id F315F89D99 for ; Mon, 12 Nov 2018 12:31:30 +0000 (UTC) Received: by mail-lf1-x141.google.com with SMTP id v5so6032490lfe.7 for ; Mon, 12 Nov 2018 04:31:30 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=+SYSUwCGma/lcVtPtuOUIUx5etXSAjVClqgIOrmQ/FE=; b=DJQrbzv6/PJOxEQlV/JI2lHrApszg+3R18d9vylY7EHRrQstpMVmijLsnWQS9k/sQ2 RCXUJKYuwtHNISs7OQxbwpdTvt2D2c9JNoq/YUvrOXw+Nh3q8uxwzkkez28PbKznQ8Tv qzJIHd1IpkFyRBtoOohKrgaGdN26IhqYjbNqD51pLytaQ14U5P2h3DDsJX9ltccIo8mj pSViNEnnhYimiGSqkcAGVt9Bk6ofhGNuwCXRN2C0LkpjY+HOQMXeWacbCGEHe/mcl3HZ xQnQ1rVIkqE+rKgFB0JgqUz7Q5UmaRyKPkUYUjOw9AEp201DppHiVUvU8xsC7l8u65wa w1nQ== X-Gm-Message-State: AGRZ1gKSiALa4N5hVqHYGZfb9+L+l+OIdhWTux8xw/m4u8x/Ds8PxrCi Z89CV/tAGU3WvUxpjn833/chZg== X-Received: by 2002:a19:5394:: with SMTP id h20mr510880lfl.75.1542025889325; Mon, 12 Nov 2018 04:31:29 -0800 (PST) Received: from genomnajs.ideon.se ([85.235.10.227]) by smtp.gmail.com with ESMTPSA id z9sm2908710lfj.79.2018.11.12.04.31.27 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 12 Nov 2018 04:31:28 -0800 (PST) From: Linus Walleij To: Sudeep Holla , Lorenzo Pieralisi , linux-arm-kernel@lists.infradead.org Subject: [PATCH 3/3 v6] ARM: defconfig: Enable the PL111 DRM driver on vexpress Date: Mon, 12 Nov 2018 13:31:15 +0100 Message-Id: <20181112123115.6176-4-linus.walleij@linaro.org> X-Mailer: git-send-email 2.17.2 In-Reply-To: <20181112123115.6176-1-linus.walleij@linaro.org> References: <20181112123115.6176-1-linus.walleij@linaro.org> X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Liviu Dudau , dri-devel@lists.freedesktop.org MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" This updates the Versatile defconfig to use the new P111 DRM driver that is merged in the DRM subsystem. We deactivate the old CLCD driver and activate the Pl111 DRM driver and the SiI9022 HDMI bridge. We activate DMA memory allocation using CMA so that the special graphics memory for the on-board CLCD can be used. Cc: Sudeep Holla Cc: Lorenzo Pieralisi Signed-off-by: Linus Walleij --- ChangeLog v5->v6: - Resending ChangeLog v4->v5: - Resending ChangeLog v3->v4: - Resending ChangeLog v1->v3: - Rebased --- arch/arm/configs/vexpress_defconfig | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/arch/arm/configs/vexpress_defconfig b/arch/arm/configs/vexpress_defconfig index 226fe4bfb487..392ed3b3613c 100644 --- a/arch/arm/configs/vexpress_defconfig +++ b/arch/arm/configs/vexpress_defconfig @@ -48,6 +48,7 @@ CONFIG_NET_9P=y CONFIG_NET_9P_VIRTIO=y CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" CONFIG_DEVTMPFS=y +CONFIG_DMA_CMA=y CONFIG_MTD=y CONFIG_MTD_CMDLINE_PARTS=y CONFIG_MTD_BLOCK=y @@ -78,13 +79,16 @@ CONFIG_SERIAL_AMBA_PL011_CONSOLE=y CONFIG_VIRTIO_CONSOLE=y CONFIG_HW_RANDOM=y CONFIG_HW_RANDOM_VIRTIO=y -CONFIG_I2C=y CONFIG_I2C_VERSATILE=y CONFIG_SENSORS_VEXPRESS=y CONFIG_REGULATOR_VEXPRESS=y -CONFIG_FB=y -CONFIG_FB_ARMCLCD=y -CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_DRM=y +CONFIG_DRM_PANEL_SIMPLE=y +CONFIG_DRM_SII902X=y +CONFIG_DRM_PL111=y +CONFIG_FB_MODE_HELPERS=y +CONFIG_BACKLIGHT_LCD_SUPPORT=y +CONFIG_BACKLIGHT_CLASS_DEVICE=y CONFIG_LOGO=y # CONFIG_LOGO_LINUX_MONO is not set # CONFIG_LOGO_LINUX_VGA16 is not set