From 6b355f69a32e78a3260bff7389a1f33030ee1d18 Mon Sep 17 00:00:00 2001 From: Giacomo Travaglini Date: Mon, 4 Jan 2021 13:04:09 +0000 Subject: [PATCH] system-arm: Move display node into a shared DTS file armv7, armv8, armv8_big_little DTS files are reusing the same encoder node; moreover those should really be cpu specific files. For these reasons, and to make it possible to craft a final DTS without defining a display phandle, we move the shared code into a display DTS include file Change-Id: I4f756807292e492a743bb9ab9ec511011125a436 Signed-off-by: Giacomo Travaglini Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/38795 Reviewed-by: Andreas Sandberg Maintainer: Andreas Sandberg Tested-by: kokoro --- system/arm/dt/armv7.dts | 36 ---------- system/arm/dt/armv8.dts | 36 ---------- system/arm/dt/armv8_big_little.dts | 38 ----------- system/arm/dt/platforms/display.dtsi | 65 +++++++++++++++++++ system/arm/dt/platforms/vexpress_gem5_v1.dtsi | 2 + system/arm/dt/platforms/vexpress_gem5_v2.dtsi | 2 + 6 files changed, 69 insertions(+), 110 deletions(-) create mode 100644 system/arm/dt/platforms/display.dtsi diff --git a/system/arm/dt/armv7.dts b/system/arm/dt/armv7.dts index adfd96873..f6f21a1c4 100644 --- a/system/arm/dt/armv7.dts +++ b/system/arm/dt/armv7.dts @@ -102,40 +102,4 @@ #error Unsupported number of CPUs #endif }; - - virt-encoder { - compatible = "drm,virtual-encoder"; - port { - dp0_virt_input: endpoint@0 { - remote-endpoint = <&dp0_output>; - }; - }; - - display-timings { - native-mode = <&timing0>; - - timing0: timing_1080p60 { - /* 1920x1080-60 */ - clock-frequency = <148500000>; - hactive = <1920>; - vactive = <1080>; - hfront-porch = <148>; - hback-porch = <88>; - hsync-len = <44>; - vfront-porch = <36>; - vback-porch = <4>; - vsync-len = <5>; - }; - }; - }; -}; - -&dp0 { - status = "ok"; - - port { - dp0_output: endpoint@0 { - remote-endpoint = <&dp0_virt_input>; - }; - }; }; diff --git a/system/arm/dt/armv8.dts b/system/arm/dt/armv8.dts index a4007b947..42c6ef654 100644 --- a/system/arm/dt/armv8.dts +++ b/system/arm/dt/armv8.dts @@ -106,40 +106,4 @@ #error Unsupported number of CPUs #endif }; - - virt-encoder { - compatible = "drm,virtual-encoder"; - port { - dp0_virt_input: endpoint@0 { - remote-endpoint = <&dp0_output>; - }; - }; - - display-timings { - native-mode = <&timing0>; - - timing0: timing_1080p60 { - /* 1920x1080-60 */ - clock-frequency = <148500000>; - hactive = <1920>; - vactive = <1080>; - hfront-porch = <148>; - hback-porch = <88>; - hsync-len = <44>; - vfront-porch = <36>; - vback-porch = <4>; - vsync-len = <5>; - }; - }; - }; -}; - -&dp0 { - status = "ok"; - - port { - dp0_output: endpoint@0 { - remote-endpoint = <&dp0_virt_input>; - }; - }; }; diff --git a/system/arm/dt/armv8_big_little.dts b/system/arm/dt/armv8_big_little.dts index 63c90ec6c..9d1e7acfd 100644 --- a/system/arm/dt/armv8_big_little.dts +++ b/system/arm/dt/armv8_big_little.dts @@ -103,42 +103,4 @@ #error Missing configuration section #endif }; - - virt-encoder { - compatible = "drm,virtual-encoder"; - port { - dp0_virt_input: endpoint@0 { - remote-endpoint = <&dp0_output>; - }; - }; - - display-timings { - native-mode = <&timing0>; - - timing0: timing_1080p60 { - /* 1920x1080-60 */ - clock-frequency = <148500000>; - hactive = <1920>; - vactive = <1080>; - hfront-porch = <148>; - hback-porch = <88>; - hsync-len = <44>; - vfront-porch = <36>; - vback-porch = <4>; - vsync-len = <5>; - }; - }; - }; }; - -&dp0 { - status = "ok"; - - port { - dp0_output: endpoint@0 { - remote-endpoint = <&dp0_virt_input>; - }; - }; -}; - - diff --git a/system/arm/dt/platforms/display.dtsi b/system/arm/dt/platforms/display.dtsi new file mode 100644 index 000000000..16a029a46 --- /dev/null +++ b/system/arm/dt/platforms/display.dtsi @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2015-2016, 2019, 2021 ARM Limited + * All rights reserved + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer; + * redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution; + * neither the name of the copyright holders nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/ { + virt-encoder { + compatible = "drm,virtual-encoder"; + port { + dp0_virt_input: endpoint@0 { + remote-endpoint = <&dp0_output>; + }; + }; + + display-timings { + native-mode = <&timing0>; + + timing0: timing_1080p60 { + /* 1920x1080-60 */ + clock-frequency = <148500000>; + hactive = <1920>; + vactive = <1080>; + hfront-porch = <148>; + hback-porch = <88>; + hsync-len = <44>; + vfront-porch = <36>; + vback-porch = <4>; + vsync-len = <5>; + }; + }; + }; +}; + +&dp0 { + status = "ok"; + + port { + dp0_output: endpoint@0 { + remote-endpoint = <&dp0_virt_input>; + }; + }; +}; diff --git a/system/arm/dt/platforms/vexpress_gem5_v1.dtsi b/system/arm/dt/platforms/vexpress_gem5_v1.dtsi index 91e82c0ea..efca66db3 100644 --- a/system/arm/dt/platforms/vexpress_gem5_v1.dtsi +++ b/system/arm/dt/platforms/vexpress_gem5_v1.dtsi @@ -43,3 +43,5 @@ status = "disabled"; }; }; + +/include/ "display.dtsi" diff --git a/system/arm/dt/platforms/vexpress_gem5_v2.dtsi b/system/arm/dt/platforms/vexpress_gem5_v2.dtsi index 6c4dddceb..677572758 100644 --- a/system/arm/dt/platforms/vexpress_gem5_v2.dtsi +++ b/system/arm/dt/platforms/vexpress_gem5_v2.dtsi @@ -42,3 +42,5 @@ status = "disabled"; }; }; + +/include/ "display.dtsi" -- 2.30.2