From patchwork Mon Jul 16 09:25:56 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 141975 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp2190673ljj; Mon, 16 Jul 2018 02:26:37 -0700 (PDT) X-Google-Smtp-Source: AAOMgpf2qIOY1w4Ge2ycMjFwY99DpXQuo/P5aIBz8HLu/voUg8QPebRnEZ1jVCkrthrUWajg9m48 X-Received: by 2002:a65:4c02:: with SMTP id u2-v6mr15191759pgq.364.1531733197669; Mon, 16 Jul 2018 02:26:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1531733197; cv=none; d=google.com; s=arc-20160816; b=ikZDmxHOwNRNqqa8NHAr6y6CS/0YcALqGbZ2pDhM3traN0ujEoF6sskLjV51BeEp2C 6N83UcnOmku1+xBCnl229JxnfJR2o1CylJCBcLCLJTfuZivlGS3Hnm3FsnrOG1RQ4bME y//9jhSWAY6OhV87NZ3UKUJvD0VTGdIZEAmC1dbwucKd5A7BJ5wi2N0uPaiP1758otai A83bhG3bYNix9HePuGGKPe2qutPFz0QBfc+y9j1q8MWDLxyBetu7HspUMlu94Ghn/qvK mCxwRsdVlBSm+2JB56kwcTpejcy7j243TPqGkbD7iPLeYyq+ZocuXXKAVhBReHg7RAVc UcUA== 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:message-id:date:subject:to:from:delivered-to :arc-authentication-results; bh=gl/35eaUcjjptlv8lrDUQmbB16FPfvpjtaamINczOvU=; b=OgKGkHpWmFKMIDxPQrVraDu1zWgkSdlJ66U9nr+4ZBhVsdtKNO0dN0hA0S3Tberstm sNMAkkYe1jJ7fmFSsZBlWWdF9u14WdVR4uV8Xz6IXzTI+COSJ4ntl72pINBr6GrZyjtz rHRuPKr7ubL8T0wGjecWOv/eWiUH+uE2t3RMM3srQaxAEbHwT6znNkRjLnK8eP7euGBI tU/SV95DhNOcaZhUBqWDCEahx5dqpyU/yrBkNwr9cGog0US2GREftfzRDmhyMNi/M23B l+BzybRn1WbLZ4eTnhgfQnJMWI5IUEXVphWVFkfMM6mi3hUMebWHtfaL9cA7soG/zBry Z1Dw== 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 o4-v6si33151412pfh.168.2018.07.16.02.26.37 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 16 Jul 2018 02:26:37 -0700 (PDT) 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 198FE6E42E; Mon, 16 Jul 2018 09:26:06 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lf0-x243.google.com (mail-lf0-x243.google.com [IPv6:2a00:1450:4010:c07::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id 039506E42E for ; Mon, 16 Jul 2018 09:26:05 +0000 (UTC) Received: by mail-lf0-x243.google.com with SMTP id u14-v6so31724512lfu.0 for ; Mon, 16 Jul 2018 02:26:04 -0700 (PDT) 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; bh=E8cyXgkLOBd+1MzzitteTDTNPz4XpcCZnlWYtXR0yn0=; b=gZ7x8Swzinm583LfWdXszfUQ5+AoEa4nzZVvD9Tv061/EdKl71YML+qDk0A2EtGfEA UQSB3OWHQkQjGP0VTfTdmfuhaxLCHpU/9gP7CeJtPsvd28YoUC+Yl7L1/mhZ6ElnKshQ DEQ83SzuWa+34sDGikIMEjcTL4v+nDvR0e5zLTJMEcuXVlfqr7HGTWBLKwZpUP2MJjk8 SFyrxieX54FuEHcB4IIYGzUPGMQTy2pzPAUry2ESrsf+H59nE8x9sqWN7UcBzncCd1Id cAFWceNAaHPEQ2q7yagQZQdbtZJ1Ivx8TY+VOT7tOZ7qiSbuDhk5ve3xwIORVPVw9h5c i+7A== X-Gm-Message-State: AOUpUlHK6LjZHoYLPSNo020da5YMQJwZGP+DYbWB5BI6rM3WyNhD4uQe +8CFrrpXgHdPwzUoO99sloAIag== X-Received: by 2002:a19:9e8c:: with SMTP id h134-v6mr10602927lfe.63.1531733163313; Mon, 16 Jul 2018 02:26:03 -0700 (PDT) Received: from genomnajs.ideon.se ([85.235.10.227]) by smtp.gmail.com with ESMTPSA id q85-v6sm6619159lfg.20.2018.07.16.02.26.01 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 16 Jul 2018 02:26:01 -0700 (PDT) From: Linus Walleij To: Sudeep Holla , Lorenzo Pieralisi , linux-arm-kernel@lists.infradead.org Subject: [PATCH 1/3 v5] ARM: dts: Modernize the Vexpress PL111 integration Date: Mon, 16 Jul 2018 11:25:56 +0200 Message-Id: <20180716092558.10358-1-linus.walleij@linaro.org> X-Mailer: git-send-email 2.17.0 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 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 | 27 ++++++++ .../boot/dts/arm/rtsm_ve-motherboard.dtsi | 37 ++--------- .../boot/dts/arm/vexpress-v2f-1xv7-ca53x2.dts | 14 +++++ 9 files changed, 154 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..4d7bed15bf6f 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,19 @@ <0 63 4>; }; + /* + * The RTSM doesn't have a real panel, so let's pretend that the + * CLCD is connected to a VGA-type panel. + */ + panel { + compatible = "video-graphics-array"; + port { + vga_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..94212ce097ed 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 = <&vga_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 Jul 16 09:25:57 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 141976 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp2190713ljj; Mon, 16 Jul 2018 02:26:40 -0700 (PDT) X-Google-Smtp-Source: AAOMgpdXhiVuXnp9KLTZjGqV4rFBjghjeIXJWTw4H+2FMZGP9vqeivCLNljpJrsXQ3n1qaRijFBh X-Received: by 2002:a17:902:9a8a:: with SMTP id w10-v6mr15967780plp.333.1531733200707; Mon, 16 Jul 2018 02:26:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1531733200; cv=none; d=google.com; s=arc-20160816; b=lyf+FV3rutzzLH/QGJwjHcN1Tj3kHkLH9UdMAZ/sw+dVRGHhGFYuc1jpI1IZJ4pmWQ xZavdCHdH/GnjOz1TJmtDGLys25PkPBtX+WT1nkJyy7OCjAgpehL0horaJ4TZCoeX1Sh lAKjAS/nmyggBop0GyJX67PcbUehYGDlDLATzwWUVEvk0BmMnpLHIADzivWzYXKl0Tal eatkrD27fx4JtqD2tYerzPBoRbZut4tduEXB4fPgUUlJJHPC8vbqyL8fVBnIhciYg6sg b0b0IvTGJlOUJI6UGiADMivSpXFKINOpME4HnF1CXeHsr2LrHV8h+hZRzXm82/HIZV6h hhZg== 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:arc-authentication-results; bh=ngRSgffY0Qflq9jdSAQW1kJ8UFqWiu1nnjdBLzMj13A=; b=DJVFzpUchKHWYGLaBPdAeHU1SpmrCIb4Nvu5zeawyrYbwUX19YA+vKJShHmbTVLmrL YdCwcl/3YYbANSW3IzIY3kE53xOFFT30QFxSsEP237H8b6Rjc5cxzP/JR5g0aV7uYlkr sazKwvDqqjPv+k4rHe5K81Nx1zDd2N2Upz0kmxyJ2gyJk+jPtEqM2/njHACVMOxKgG7d r5d/ZsbUGQEoHbZJTit7SzuQ5jU2aKxP320p6ptUpIbWiQwhcj0c9NXmO6kj72cMQPBW FNLpP7zNZY0MQb6Ga4Qe+Zm8wBzNJI/itleyGYfjjTQuT7nPTgsxGVlxF31bHzPDgM8O 76Og== 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 i29-v6si28112136pgi.410.2018.07.16.02.26.40 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 16 Jul 2018 02:26:40 -0700 (PDT) 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 0203D6E433; Mon, 16 Jul 2018 09:26:09 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lj1-x241.google.com (mail-lj1-x241.google.com [IPv6:2a00:1450:4864:20::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 63CBB6E433 for ; Mon, 16 Jul 2018 09:26:07 +0000 (UTC) Received: by mail-lj1-x241.google.com with SMTP id l15-v6so9192291lji.6 for ; Mon, 16 Jul 2018 02:26:07 -0700 (PDT) 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=Y/v7lajvkzU8P9qvcfsOcvegOq4rJilPoyuIRwGiS0Q=; b=ofl5KNeBye3fJABAj+5lChMrQZdOD61pYJl5Jm8gFt+CWD+7KPGBMHkFuWS9jH/P/p /V33jW4p0PUZBuMZSn7hL8fLgL+ooe8emwNtkf6THVVPXes7qrbREaXMXOV4noUphWfx mXWQjaVjlPD9nxToPGAzKxYI9Yove7i1QZEyF1GgE7nLN9Q/gzmqolxLU07u8CBWg7va uG4GHvri4hXBwlH4So/Sxm6G2S8498FWVEP8vGRxMN44UVrOkheqQP1yPOw99OWAIcG0 ldZUzVirBgW5pQCZuoByIdveyOr/HzLWpYPAfWlY+UMxVMRjlO7h5+8eKBM7SpW4OH+Y w6eg== X-Gm-Message-State: AOUpUlFlpTkmHGWVHOMceDtxiRkuxZi2qCLdR3lKJw+Xp3IrlZZ3nCo9 xa12BtrTb0hCOxncRA6w8h7goA== X-Received: by 2002:a2e:9e17:: with SMTP id e23-v6mr5404641ljk.14.1531733165770; Mon, 16 Jul 2018 02:26:05 -0700 (PDT) Received: from genomnajs.ideon.se ([85.235.10.227]) by smtp.gmail.com with ESMTPSA id q85-v6sm6619159lfg.20.2018.07.16.02.26.04 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 16 Jul 2018 02:26:04 -0700 (PDT) From: Linus Walleij To: Sudeep Holla , Lorenzo Pieralisi , linux-arm-kernel@lists.infradead.org Subject: [PATCH 2/3 v5] ARM: defconfig: Update the vexpress defconfig Date: Mon, 16 Jul 2018 11:25:57 +0200 Message-Id: <20180716092558.10358-2-linus.walleij@linaro.org> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180716092558.10358-1-linus.walleij@linaro.org> References: <20180716092558.10358-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 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 Jul 16 09:25:58 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 141977 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp2190753ljj; Mon, 16 Jul 2018 02:26:43 -0700 (PDT) X-Google-Smtp-Source: AAOMgpdGXn9/0jLEEBIayqSDXt5iffgr7A/7vxiTHGxL/HJq3H9RhjnO5/EM9c+2jQECu/ds0aoO X-Received: by 2002:a63:b349:: with SMTP id x9-v6mr14827751pgt.337.1531733203447; Mon, 16 Jul 2018 02:26:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1531733203; cv=none; d=google.com; s=arc-20160816; b=Yd9wh44r+WgqxgMW3S4NQl99osbDKtAWiKo2tOU2rzxcMUdMXIeX8ksDWN/SYQoiJV YCNmM90PHtM05bxo39l/dwRazAy45VUYvef9YkEsLugH0ik8/hfdRjXL2QeJA/A3hl78 VZQUAXpAsLc4DQKZ7xoJGSeRwmiYzIeMyJQyF0mOM7pAi1OU7TtB+AvwX75oeq6yU3WX 7Rm3213kHedZNFbsXA7c9RYS5cGCWUntWDXnVToZTgGQyTBB//O2ZyZHvm8JsaQbb3Jz 03eAQwFjPjblQnGZeK3B04HTVVJLifHdm7QLLs8QYANM+jWG5yrT7ndl68enMsRvYLNw YZyA== 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:arc-authentication-results; bh=vDOMa02P1dJYJ4qSALnFIXoQz0sO7e6t1XrckTUwyIk=; b=IPTwyjS1qZ9NZrd0/gOppeqS+oLtksVrOIHGmjg+QW98plVJlWLQC3Z8ducAucDCvu bZAKK3eKBkAPM2/UQUm74HErUda26umqVd0CcpbTAMY7yLBcd+33yk/nzI2cY0KF3B0T M9Fq2kQITEYa0pBNT4nkF53dJzfcEmiwwqdeXPveec+kTM8oPl9Wr4/IZVoje6CEnRxA 1Kkh+H3Gr5zzZqPYuVFvcj8OHf3eN4tRxIBN3wN7de1LiV6g/5YLxSc8cLqcLklnHx+7 T9M1lXg0NunlHGLHSWxxIruYyFlarV610YUNV7nZ84b6tvsPxh5T9knXUOAhidxlaoS6 gpbQ== 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 l81-v6si33431726pfa.368.2018.07.16.02.26.43 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 16 Jul 2018 02:26:43 -0700 (PDT) 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 0F9166E436; Mon, 16 Jul 2018 09:26:12 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lj1-x242.google.com (mail-lj1-x242.google.com [IPv6:2a00:1450:4864:20::242]) by gabe.freedesktop.org (Postfix) with ESMTPS id A4FC86E434 for ; Mon, 16 Jul 2018 09:26:09 +0000 (UTC) Received: by mail-lj1-x242.google.com with SMTP id q127-v6so28722818ljq.11 for ; Mon, 16 Jul 2018 02:26:09 -0700 (PDT) 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=ClHsIlP7OZoMveK9JVs9CZOfdduzBrsTJUBqOX10Qts=; b=IA0i5rcmoeFnw/oGlZ217U2Cvb0LQEhYoaKlp2CZRzeLhjpTDNl86GN9DduWEcMOPV EyuHSlN+9mlJ00Ths66QnCfDcHP7f08d8bQ8+icDPloTRBWVX5vLJNwA+K/nty+sG1aF C8DP1q4hYDSCgN57TfHQkBwtzc1VHZQSyrQC2PZpyLqY4p14cGqxihX9/n//512vn+yh OLsgNuSDhThL8zBPKxSoRfj5tg9IZalObtyJUU4kZeYtuAdvm5eF+IvTun/bEOCHMRNH S8RdU13CvKZvm/Rx7S9V5G1cMhoHr9SpUFLP+eCeqMHsyATlFeMjadxYCXG3fAdRWFbm zvsA== X-Gm-Message-State: AOUpUlHAZlYkhGCr5anAlAUYJpKUaZ2+ZR04gwnpooCkFxhDF9P/8sOR tKB3aEKsccZxDN/cy0fDIpblT1Yc7sc= X-Received: by 2002:a2e:97c8:: with SMTP id m8-v6mr9243741ljj.52.1531733168127; Mon, 16 Jul 2018 02:26:08 -0700 (PDT) Received: from genomnajs.ideon.se ([85.235.10.227]) by smtp.gmail.com with ESMTPSA id q85-v6sm6619159lfg.20.2018.07.16.02.26.06 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 16 Jul 2018 02:26:06 -0700 (PDT) From: Linus Walleij To: Sudeep Holla , Lorenzo Pieralisi , linux-arm-kernel@lists.infradead.org Subject: [PATCH 3/3 v5] ARM: defconfig: Enable the PL111 DRM driver on vexpress Date: Mon, 16 Jul 2018 11:25:58 +0200 Message-Id: <20180716092558.10358-3-linus.walleij@linaro.org> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180716092558.10358-1-linus.walleij@linaro.org> References: <20180716092558.10358-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 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