system-arm: Move display node into a shared DTS file
authorGiacomo Travaglini <giacomo.travaglini@arm.com>
Mon, 4 Jan 2021 13:04:09 +0000 (13:04 +0000)
committerGiacomo Travaglini <giacomo.travaglini@arm.com>
Mon, 25 Jan 2021 16:32:48 +0000 (16:32 +0000)
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 <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/38795
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
system/arm/dt/armv7.dts
system/arm/dt/armv8.dts
system/arm/dt/armv8_big_little.dts
system/arm/dt/platforms/display.dtsi [new file with mode: 0644]
system/arm/dt/platforms/vexpress_gem5_v1.dtsi
system/arm/dt/platforms/vexpress_gem5_v2.dtsi

index adfd96873635512e6a6aed170016d278988618c8..f6f21a1c403fe3b7951d62448af0401698c45a96 100644 (file)
                #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>;
-               };
-       };
 };
index a4007b9477d0bcb8f312bfa9baef81b947368494..42c6ef654f3d280d7b14926aadbd553ace0ef4b9 100644 (file)
                #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>;
-               };
-       };
 };
index 63c90ec6c05b8333f1c63dc5a8addffda83bc778..9d1e7acfd9875f259d1058eecbbaeafa3faa12b6 100644 (file)
                #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 (file)
index 0000000..16a029a
--- /dev/null
@@ -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>;
+               };
+       };
+};
index 91e82c0ea11542370b585f2b8525f31fcaa04664..efca66db3e21895544910513e47cec32fb2c77dc 100644 (file)
@@ -43,3 +43,5 @@
                status = "disabled";
        };
 };
+
+/include/ "display.dtsi"
index 6c4dddceb60d956c02145900df096d044cfec22b..6775727582901688c0dbce6403f30b39a1cd4f49 100644 (file)
@@ -42,3 +42,5 @@
                status = "disabled";
        };
 };
+
+/include/ "display.dtsi"