From patchwork Sun Sep 26 12:05:16 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Kiszka X-Patchwork-Id: 12518263 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D8215C433EF for ; Sun, 26 Sep 2021 12:08:48 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9DF1E60462 for ; Sun, 26 Sep 2021 12:08:48 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 9DF1E60462 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=web.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=zQgWybqQuDWbJHL4F9JOHQQrzpJ10FuKDIiCPxtgZak=; b=LVAaM/WzTlH1Q1 NeJwMgPZzLeqTMPyCrdUmfLmtS/bcUVKZDGu7RKCo6MrKfOErcHhscG8DXLTpHHuCRUnb1UR0tysS GYZmMqIv2Et08shFpKR21TOBxxms7dykosMdC+S/UC4cqnBWzkH6HY3JbfwIXJhYQLG8YYTQ0/RWA cDv6wVGJ0pAdfAdFgo/z0MSSOvWvhdrK+S22iP66oXPHwb0dKsPIwpfRuJGbQ9DYjssNNcAzeSZsq uQX12D2BEyAHh3CzYr8fcWfXfk8ckYXPf6Cio6gFr8OBzTtQTujXhssWxGf/BuZlklfHrA4pzxHap dynURSqjTg5cuWj8f9kg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mUSvf-000VM4-0E; Sun, 26 Sep 2021 12:06:47 +0000 Received: from mout.web.de ([212.227.17.11]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mUSuT-000V24-0T for linux-arm-kernel@lists.infradead.org; Sun, 26 Sep 2021 12:05:37 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=web.de; s=dbaedf251592; t=1632657928; bh=+vHOWrkPb1sSZ91BYj3MQjUGez3FIoNWvLTaLDtzVUM=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=YmBY3GlrKZY01zBtdqkFi7aMax0BMy4RhMUU5vt3OdY1IG05D/s9T04dxNE10sPS5 B7rAzdhl0anUPdHEZQFg21TKVKgJNoPfR9WV4l7fayII4Z6SYSebJo94FZ0RdDl3Uc hBp3f7QfdV1mThV49Cfa6qSrYtLdw3FWuzphSQf4= X-UI-Sender-Class: c548c8c5-30a9-4db5-a2e7-cb6cb037b8f9 Received: from md1f2u6c.fritz.box ([94.217.148.121]) by smtp.web.de (mrweb101 [213.165.67.124]) with ESMTPSA (Nemesis) id 0M3Bhz-1mo3tI48Nr-00st09; Sun, 26 Sep 2021 14:05:28 +0200 From: Jan Kiszka To: Nishanth Menon , Tero Kristo , Rob Herring Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Bao Cheng Su , Chao Zeng Subject: [PATCH v5 5/6] arm64: dts: ti: iot2050: Prepare for adding 2nd-generation boards Date: Sun, 26 Sep 2021 14:05:16 +0200 Message-Id: <31fece05f9728a852c0632985c4fa537cced4ece.1632657917.git.jan.kiszka@web.de> X-Mailer: git-send-email 2.31.1 In-Reply-To: References: MIME-Version: 1.0 X-Provags-ID: V03:K1:gzXeEhXWwqZSo5abWKAopAKbgKhn+KlRVBMCAkFlsmUjgNFhCAJ 8Jb9KxIDNp5XMRMJ2hBmuDVdlRJ8mH0OzEMxAT0hs3ylx+l1ZDAH76jIzNfBkawv1eRZkFP D7WQoHf5yMqL5n33Vg5LA6e5gvdOMoDg7+XvyLBnUaQ6hE4mBE++avEdaxYL53Z/ObnLxwL KO4h9X8Dvm1qx0wdHZ0UA== X-UI-Out-Filterresults: notjunk:1;V03:K0:+kH0dlX3++I=:ZSTSvxd3QOFSKgwtrxAqa0 fsrjF3ayd0+C3a0wkcTU9uyo/0poQUEZQtuDBNARcXtqmkxncin5XFrqDjEy+JxjhO2Fe6jvu mvvHvxRs3Q/ToRI07ZGmVq2gn5aQW90TJneSch3Eq9mqTnsb8aj94erLuEOr/h0cCRmESz0R0 HxwmIj6u5Qhw8yJ9h948OI96Qgb+brBq072u0b6ICuKaO47jlNgyOhrjbVfkv23aXngUM2WSV ixMvDLTAy+m9PSZvwoWHOBR5UaODLasYcyW9NmH4fljp+2l6BegOulbuxQsvTPFAkkg8k1wwL ZgD1wVGEn56wAFUD7qguFCXv9juqy0h+elPPxiecIMN6eZQGUL0Zj6gTXNYLoQc6Q+iwsb+SC dWnwIjuyphBEtJ0XWba3cNqWV7CSKF6gsVpXz9E9O5iAQYd8emm5MWMP0WMleY9pJSuG1S6YP xIf710YwtAlncOylTf7WXrUBgSyMUV66ioOkQ8V83LpWwuxMJV5KHx0Zi5gIaw4IaixSRyrgu mK5gYAaTq2fGB7Nel8rqwJF1ld08pl16kLwxHjdjL2/s07+xNUPuyyhGof2rsddsyVADNo/bx LmtbUmshefQMZ/pXtYgXFlHl3RyNJZnQwnfnsren77QOBK/+wDKOPn9g52JG3VwzziRnBLTd5 QXCehTYLc+tV5VegxM3YJmtzHwIDPS+wGXz59B1+5pSxUMF19SwA2CLK5Sif5aO8Y3oN++fPI 1/dLHYT+cuV1Fi4d2F4yB/R628zjcnvAXZ/6+Qg7ZJBhanQgBX8RHgGdmohf5QT/z+SwIbrcr tk5QhhMYZhogK2jrFcWC+tIKJvpmtzobW34x8HAVfcqi3Nm86JD6Rhelwe/JNMevwhzPa2llM QODkTN9WteVUxT4JNc03BKykNuxkh+y11XEZB2IjHTKBHSHMXrGs/SkPwzYU5EXTG0tlYkukZ MDRAYExdddWt9wZg8K/FpLhftgyDouCVUSM7LGLgnL8Tct8EgqXrOPkoalA2zR4gJCLF+y+p6 x7ecHJHr+dyQo81o0kKQavPBOyTvFtEnO/Sc2p5trgCUT+fRao/NwRNg5UwSbT53Jt0GG2e8A bfCm68DVkY3cvs= X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210926_050533_454942_4367C759 X-CRM114-Status: GOOD ( 14.94 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Jan Kiszka The current IOT2050 devices are Product Generation 1 (PG1), using SR1.0 AM65x silicon. Upcoming PG2 devices will use SR2.x SoCs and will therefore need separate device trees. Prepare for that by factoring out common bits that will be shared across both generations. At this chance, drop a link to the product homepage to in the top-level dts files. Also fix a typo in my email address in some headers. Signed-off-by: Jan Kiszka --- .../dts/ti/k3-am65-iot2050-common-pg1.dtsi | 46 +++++++++++++++ .../boot/dts/ti/k3-am65-iot2050-common.dtsi | 35 +----------- ...ts => k3-am6528-iot2050-basic-common.dtsi} | 12 +--- .../boot/dts/ti/k3-am6528-iot2050-basic.dts | 56 +++---------------- ...=> k3-am6548-iot2050-advanced-common.dtsi} | 8 +-- .../dts/ti/k3-am6548-iot2050-advanced.dts | 50 +++-------------- 6 files changed, 67 insertions(+), 140 deletions(-) create mode 100644 arch/arm64/boot/dts/ti/k3-am65-iot2050-common-pg1.dtsi copy arch/arm64/boot/dts/ti/{k3-am6528-iot2050-basic.dts => k3-am6528-iot2050-basic-common.dtsi} (80%) copy arch/arm64/boot/dts/ti/{k3-am6548-iot2050-advanced.dts => k3-am6548-iot2050-advanced-common.dtsi} (85%) -- 2.31.1 diff --git a/arch/arm64/boot/dts/ti/k3-am65-iot2050-common-pg1.dtsi b/arch/arm64/boot/dts/ti/k3-am65-iot2050-common-pg1.dtsi new file mode 100644 index 000000000000..51f902fa35a7 --- /dev/null +++ b/arch/arm64/boot/dts/ti/k3-am65-iot2050-common-pg1.dtsi @@ -0,0 +1,46 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (c) Siemens AG, 2021 + * + * Authors: + * Jan Kiszka + * + * Common bits of the IOT2050 Basic and Advanced variants, PG1 + */ + +&dss { + assigned-clocks = <&k3_clks 67 2>; + assigned-clock-parents = <&k3_clks 67 5>; +}; + +&serdes0 { + status = "disabled"; +}; + +&sdhci1 { + no-1-8-v; +}; + +&tx_pru0_0 { + status = "disabled"; +}; + +&tx_pru0_1 { + status = "disabled"; +}; + +&tx_pru1_0 { + status = "disabled"; +}; + +&tx_pru1_1 { + status = "disabled"; +}; + +&tx_pru2_0 { + status = "disabled"; +}; + +&tx_pru2_1 { + status = "disabled"; +}; diff --git a/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi b/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi index b29537088289..65da226847f4 100644 --- a/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi +++ b/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi @@ -4,13 +4,11 @@ * * Authors: * Le Jin - * Jan Kiszka + * Jan Kiszka * - * Common bits of the IOT2050 Basic and Advanced variants + * Common bits of the IOT2050 Basic and Advanced variants, PG1 and PG2 */ -/dts-v1/; - #include "k3-am654.dtsi" #include @@ -557,7 +555,6 @@ &sdhci1 { pinctrl-0 = <&main_mmc1_pins_default>; ti,driver-strength-ohm = <50>; disable-wp; - no-1-8-v; }; &usb0 { @@ -631,10 +628,6 @@ dpi_out: endpoint { }; }; -&serdes0 { - status = "disabled"; -}; - &pcie0_rc { status = "disabled"; }; @@ -738,27 +731,3 @@ &icssg1_mdio { &icssg2_mdio { status = "disabled"; }; - -&tx_pru0_0 { - status = "disabled"; -}; - -&tx_pru0_1 { - status = "disabled"; -}; - -&tx_pru1_0 { - status = "disabled"; -}; - -&tx_pru1_1 { - status = "disabled"; -}; - -&tx_pru2_0 { - status = "disabled"; -}; - -&tx_pru2_1 { - status = "disabled"; -}; diff --git a/arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic.dts b/arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic-common.dtsi similarity index 80% copy from arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic.dts copy to arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic-common.dtsi index 94bb5dd39122..4a9bf7d7c07d 100644 --- a/arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic.dts +++ b/arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic-common.dtsi @@ -4,20 +4,14 @@ * * Authors: * Le Jin - * Jan Kiszka + * Jan Kiszka * - * AM6528-based (dual-core) IOT2050 Basic variant - * 1 GB RAM, no eMMC, main_uart0 on connector X30 + * Common bits of the IOT2050 Basic variant, PG1 and PG2 */ -/dts-v1/; - #include "k3-am65-iot2050-common.dtsi" / { - compatible = "siemens,iot2050-basic", "ti,am654"; - model = "SIMATIC IOT2050 Basic"; - memory@80000000 { device_type = "memory"; /* 1G RAM */ @@ -61,6 +55,6 @@ &main_uart0 { }; &mcu_r5fss0 { - /* lock-step mode not supported on this board */ + /* lock-step mode not supported on Basic boards */ ti,cluster-mode = <0>; }; diff --git a/arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic.dts b/arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic.dts index 94bb5dd39122..87928ff28214 100644 --- a/arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic.dts +++ b/arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic.dts @@ -4,63 +4,21 @@ * * Authors: * Le Jin - * Jan Kiszka + * Jan Kiszka * - * AM6528-based (dual-core) IOT2050 Basic variant + * AM6528-based (dual-core) IOT2050 Basic variant, Product Generation 1 * 1 GB RAM, no eMMC, main_uart0 on connector X30 + * + * Product homepage: + * https://new.siemens.com/global/en/products/automation/pc-based/iot-gateways/simatic-iot2050.html */ /dts-v1/; -#include "k3-am65-iot2050-common.dtsi" +#include "k3-am6528-iot2050-basic-common.dtsi" +#include "k3-am65-iot2050-common-pg1.dtsi" / { compatible = "siemens,iot2050-basic", "ti,am654"; model = "SIMATIC IOT2050 Basic"; - - memory@80000000 { - device_type = "memory"; - /* 1G RAM */ - reg = <0x00000000 0x80000000 0x00000000 0x40000000>; - }; - - cpus { - cpu-map { - /delete-node/ cluster1; - }; - /delete-node/ cpu@100; - /delete-node/ cpu@101; - }; - - /delete-node/ l2-cache1; -}; - -/* eMMC */ -&sdhci0 { - status = "disabled"; -}; - -&main_pmx0 { - main_uart0_pins_default: main-uart0-pins-default { - pinctrl-single,pins = < - AM65X_IOPAD(0x01e4, PIN_INPUT, 0) /* (AF11) UART0_RXD */ - AM65X_IOPAD(0x01e8, PIN_OUTPUT, 0) /* (AE11) UART0_TXD */ - AM65X_IOPAD(0x01ec, PIN_INPUT, 0) /* (AG11) UART0_CTSn */ - AM65X_IOPAD(0x01f0, PIN_OUTPUT, 0) /* (AD11) UART0_RTSn */ - AM65X_IOPAD(0x0188, PIN_INPUT, 1) /* (D25) UART0_DCDn */ - AM65X_IOPAD(0x018c, PIN_INPUT, 1) /* (B26) UART0_DSRn */ - AM65X_IOPAD(0x0190, PIN_OUTPUT, 1) /* (A24) UART0_DTRn */ - AM65X_IOPAD(0x0194, PIN_INPUT, 1) /* (E24) UART0_RIN */ - >; - }; -}; - -&main_uart0 { - pinctrl-names = "default"; - pinctrl-0 = <&main_uart0_pins_default>; -}; - -&mcu_r5fss0 { - /* lock-step mode not supported on this board */ - ti,cluster-mode = <0>; }; diff --git a/arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced.dts b/arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced-common.dtsi similarity index 85% copy from arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced.dts copy to arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced-common.dtsi index ec9617c13cdb..d25e8b26187f 100644 --- a/arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced.dts +++ b/arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced-common.dtsi @@ -4,10 +4,9 @@ * * Authors: * Le Jin - * Jan Kiszka + * Jan Kiszka * - * AM6548-based (quad-core) IOT2050 Advanced variant - * 2 GB RAM, 16 GB eMMC, USB-serial converter on connector X30 + * Common bits of the IOT2050 Advanced variant, PG1 and PG2 */ /dts-v1/; @@ -15,9 +14,6 @@ #include "k3-am65-iot2050-common.dtsi" / { - compatible = "siemens,iot2050-advanced", "ti,am654"; - model = "SIMATIC IOT2050 Advanced"; - memory@80000000 { device_type = "memory"; /* 2G RAM */ diff --git a/arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced.dts b/arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced.dts index ec9617c13cdb..077f165bdc68 100644 --- a/arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced.dts +++ b/arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced.dts @@ -4,57 +4,21 @@ * * Authors: * Le Jin - * Jan Kiszka + * Jan Kiszka * - * AM6548-based (quad-core) IOT2050 Advanced variant + * AM6548-based (quad-core) IOT2050 Advanced variant, Product Generation 1 * 2 GB RAM, 16 GB eMMC, USB-serial converter on connector X30 + * + * Product homepage: + * https://new.siemens.com/global/en/products/automation/pc-based/iot-gateways/simatic-iot2050.html */ /dts-v1/; -#include "k3-am65-iot2050-common.dtsi" +#include "k3-am6548-iot2050-advanced-common.dtsi" +#include "k3-am65-iot2050-common-pg1.dtsi" / { compatible = "siemens,iot2050-advanced", "ti,am654"; model = "SIMATIC IOT2050 Advanced"; - - memory@80000000 { - device_type = "memory"; - /* 2G RAM */ - reg = <0x00000000 0x80000000 0x00000000 0x80000000>; - }; -}; - -&main_pmx0 { - main_mmc0_pins_default: main-mmc0-pins-default { - pinctrl-single,pins = < - AM65X_IOPAD(0x01a8, PIN_INPUT_PULLDOWN, 0) /* (B25) MMC0_CLK */ - AM65X_IOPAD(0x01ac, PIN_INPUT_PULLUP, 0) /* (B27) MMC0_CMD */ - AM65X_IOPAD(0x01a4, PIN_INPUT_PULLUP, 0) /* (A26) MMC0_DAT0 */ - AM65X_IOPAD(0x01a0, PIN_INPUT_PULLUP, 0) /* (E25) MMC0_DAT1 */ - AM65X_IOPAD(0x019c, PIN_INPUT_PULLUP, 0) /* (C26) MMC0_DAT2 */ - AM65X_IOPAD(0x0198, PIN_INPUT_PULLUP, 0) /* (A25) MMC0_DAT3 */ - AM65X_IOPAD(0x0194, PIN_INPUT_PULLUP, 0) /* (E24) MMC0_DAT4 */ - AM65X_IOPAD(0x0190, PIN_INPUT_PULLUP, 0) /* (A24) MMC0_DAT5 */ - AM65X_IOPAD(0x018c, PIN_INPUT_PULLUP, 0) /* (B26) MMC0_DAT6 */ - AM65X_IOPAD(0x0188, PIN_INPUT_PULLUP, 0) /* (D25) MMC0_DAT7 */ - AM65X_IOPAD(0x01b8, PIN_OUTPUT_PULLUP, 7) /* (B23) MMC0_SDWP */ - AM65X_IOPAD(0x01b4, PIN_INPUT_PULLUP, 0) /* (A23) MMC0_SDCD */ - AM65X_IOPAD(0x01b0, PIN_INPUT, 0) /* (C25) MMC0_DS */ - >; - }; -}; - -/* eMMC */ -&sdhci0 { - pinctrl-names = "default"; - pinctrl-0 = <&main_mmc0_pins_default>; - bus-width = <8>; - non-removable; - ti,driver-strength-ohm = <50>; - disable-wp; -}; - -&main_uart0 { - status = "disabled"; };