From mboxrd@z Thu Jan 1 00:00:00 1970 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 711C7CD6113 for ; Mon, 9 Oct 2023 17:17:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1377348AbjJIRR5 (ORCPT ); Mon, 9 Oct 2023 13:17:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46890 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1377277AbjJIRR4 (ORCPT ); Mon, 9 Oct 2023 13:17:56 -0400 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5D4F8AF; Mon, 9 Oct 2023 10:17:53 -0700 (PDT) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A225AC433C7; Mon, 9 Oct 2023 17:17:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1696871873; bh=I2CqfpW+7rJT51XxTDy4/99F+BBs6j5la8HhfMmDYG0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=dILau7xpGTyhEqgp1wj91xacT0IEjGgVwMlraH9WRIJa8rLhzW5iopRZwm1cerz9+ u8uDxM9uEMUnK2RNu41kVIZQ4K83W9t5kk4Suj5XTJ/cGIqsEYutpLz2LMjO96itnn caVyuKiCIkSdeoG77zH7Yc2cDkpbbJM2Jcu4TGHuWG5GrsqHTVQdcgf9SwoQI6WCvb JGH7ERC4oTRX5n1b2ROfr2Y6gNELPI2cLwS/3WVdGPL2SY+Hmo7t//PUSXEcLmh2/Z dhtiIpPp8pRJNYeTUQ4yys4ydDkd3UeTSMC4SZcF4tbou52tixH+oMHvOH0RYwG9bx TBwVYeVDig70w== Date: Mon, 9 Oct 2023 22:47:35 +0530 From: Manivannan Sadhasivam To: Nitheesh Sekar Cc: agross@kernel.org, andersson@kernel.org, konrad.dybcio@linaro.org, lpieralisi@kernel.org, kw@linux.com, robh@kernel.org, bhelgaas@google.com, krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org, vkoul@kernel.org, kishon@kernel.org, mani@kernel.org, p.zabel@pengutronix.de, quic_srichara@quicinc.com, quic_varada@quicinc.com, quic_ipkumar@quicinc.com, linux-arm-msm@vger.kernel.org, linux-pci@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-phy@lists.infradead.org Subject: Re: [PATCH 5/6] arm64: dts: qcom: ipq5018: Add PCIe related nodes Message-ID: <20231009171735.GB31623@thinkpad> References: <20231003120846.28626-1-quic_nsekar@quicinc.com> <20231003120846.28626-6-quic_nsekar@quicinc.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20231003120846.28626-6-quic_nsekar@quicinc.com> Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org On Tue, Oct 03, 2023 at 05:38:45PM +0530, Nitheesh Sekar wrote: > Add phy and controller nodes for PCIe_x2 and PCIe_x1. > PCIe_x2 is 2-lane Gen2 and PCIe_x1 is 1-lane Gen2. > > Signed-off-by: Nitheesh Sekar > --- > arch/arm64/boot/dts/qcom/ipq5018.dtsi | 186 +++++++++++++++++++++++++- > 1 file changed, 184 insertions(+), 2 deletions(-) > > diff --git a/arch/arm64/boot/dts/qcom/ipq5018.dtsi b/arch/arm64/boot/dts/qcom/ipq5018.dtsi > index 38ffdc3cbdcd..0818fdd1e693 100644 > --- a/arch/arm64/boot/dts/qcom/ipq5018.dtsi > +++ b/arch/arm64/boot/dts/qcom/ipq5018.dtsi > @@ -8,6 +8,7 @@ > #include > #include > #include > +#include > > / { > interrupt-parent = <&intc>; > @@ -94,6 +95,38 @@ > #size-cells = <1>; > ranges = <0 0 0 0xffffffff>; > > + pcie_x1phy: phy@7e000{ > + compatible = "qcom,ipq5018-uniphy-pcie-gen2x1"; > + reg = <0x0007e000 0x800>; > + #phy-cells = <0>; > + #clock-cells = <0>; > + clocks = <&gcc GCC_PCIE1_PIPE_CLK>; > + clock-names = "pipe_clk"; > + clock-output-names = "pcie1_pipe_clk"; > + assigned-clocks = <&gcc GCC_PCIE1_PIPE_CLK>; > + assigned-clock-rates = <125000000>; > + resets = <&gcc GCC_PCIE1_PHY_BCR>, > + <&gcc GCC_PCIE1PHY_PHY_BCR>; > + reset-names = "phy", "phy_phy"; > + status = "disabled"; > + }; > + > + pcie_x2phy: phy@86000{ > + compatible = "qcom,ipq5018-uniphy-pcie-gen2x2"; > + reg = <0x00086000 0x800>; > + #phy-cells = <0>; > + #clock-cells = <0>; > + clocks = <&gcc GCC_PCIE0_PIPE_CLK>; > + clock-names = "pipe_clk"; > + clock-output-names = "pcie0_pipe_clk"; > + assigned-clocks = <&gcc GCC_PCIE0_PIPE_CLK>; > + assigned-clock-rates = <125000000>; > + resets = <&gcc GCC_PCIE0_PHY_BCR>, > + <&gcc GCC_PCIE0PHY_PHY_BCR>; > + reset-names = "phy", "phy_phy"; > + status = "disabled"; > + }; > + > tlmm: pinctrl@1000000 { > compatible = "qcom,ipq5018-tlmm"; > reg = <0x01000000 0x300000>; > @@ -117,8 +150,8 @@ > reg = <0x01800000 0x80000>; > clocks = <&xo_board_clk>, > <&sleep_clk>, > - <0>, > - <0>, > + <&pcie_x2phy>, > + <&pcie_x1phy>, > <0>, > <0>, > <0>, > @@ -246,6 +279,155 @@ > status = "disabled"; > }; > }; > + > + pcie_x1: pci@80000000 { > + compatible = "qcom,pcie-ipq5018"; > + reg = <0x80000000 0xf1d > + 0x80000F20 0xa8 > + 0x80001000 0x1000 > + 0x78000 0x3000 > + 0x80100000 0x1000>; > + reg-names = "dbi", "elbi", "atu", "parf", "config"; > + device_type = "pci"; > + linux,pci-domain = <0>; > + bus-range = <0x00 0xff>; > + num-lanes = <1>; > + max-link-speed = <2>; > + #address-cells = <3>; > + #size-cells = <2>; > + > + phys = <&pcie_x1phy>; > + phy-names ="pciephy"; > + > + ranges = <0x81000000 0 0x80200000 0x80200000 Why do you need "relocatable" flag? Same question for other range also. > + 0 0x00100000 /* downstream I/O */ > + 0x82000000 0 0x80300000 0x80300000 > + 0 0x10000000>; /* non-prefetchable memory */ > + Don't you need "dma-coherent" to specify the devices as cache coherent? I assume all the recent PCIe generations are cache coherent. - Mani > + #interrupt-cells = <1>; > + interrupt-map-mask = <0 0 0 0x7>; > + interrupt-map = <0 0 0 1 &intc 0 142 > + IRQ_TYPE_LEVEL_HIGH>, /* int_a */ > + <0 0 0 2 &intc 0 143 > + IRQ_TYPE_LEVEL_HIGH>, /* int_b */ > + <0 0 0 3 &intc 0 144 > + IRQ_TYPE_LEVEL_HIGH>, /* int_c */ > + <0 0 0 4 &intc 0 145 > + IRQ_TYPE_LEVEL_HIGH>; /* int_d */ > + > + interrupts = ; > + interrupt-names = "global_irq"; > + > + clocks = <&gcc GCC_SYS_NOC_PCIE1_AXI_CLK>, > + <&gcc GCC_PCIE1_AXI_M_CLK>, > + <&gcc GCC_PCIE1_AXI_S_CLK>, > + <&gcc GCC_PCIE1_AHB_CLK>, > + <&gcc GCC_PCIE1_AUX_CLK>, > + <&gcc GCC_PCIE1_AXI_S_BRIDGE_CLK>; > + > + clock-names = "iface", > + "axi_m", > + "axi_s", > + "ahb", > + "aux", > + "axi_bridge"; > + > + resets = <&gcc GCC_PCIE1_PIPE_ARES>, > + <&gcc GCC_PCIE1_SLEEP_ARES>, > + <&gcc GCC_PCIE1_CORE_STICKY_ARES>, > + <&gcc GCC_PCIE1_AXI_MASTER_ARES>, > + <&gcc GCC_PCIE1_AXI_SLAVE_ARES>, > + <&gcc GCC_PCIE1_AHB_ARES>, > + <&gcc GCC_PCIE1_AXI_MASTER_STICKY_ARES>, > + <&gcc GCC_PCIE1_AXI_SLAVE_STICKY_ARES>; > + > + reset-names = "pipe", > + "sleep", > + "sticky", > + "axi_m", > + "axi_s", > + "ahb", > + "axi_m_sticky", > + "axi_s_sticky"; > + > + msi-map = <0x0 &v2m0 0x0 0xff8>; > + status = "disabled"; > + }; > + > + pcie_x2: pci@a0000000 { > + compatible = "qcom,pcie-ipq5018"; > + reg = <0xa0000000 0xf1d > + 0xa0000F20 0xa8 > + 0xa0001000 0x1000 > + 0x80000 0x3000 > + 0xa0100000 0x1000>; > + reg-names = "dbi", "elbi", "atu", "parf", "config"; > + device_type = "pci"; > + linux,pci-domain = <1>; > + bus-range = <0x00 0xff>; > + num-lanes = <2>; > + max-link-speed = <2>; > + #address-cells = <3>; > + #size-cells = <2>; > + > + phys = <&pcie_x2phy>; > + phy-names ="pciephy"; > + > + ranges = <0x81000000 0 0xa0200000 0xa0200000 > + 0 0x00100000 /* downstream I/O */ > + 0x82000000 0 0xa0300000 0xa0300000 > + 0 0x10000000>; /* non-prefetchable memory */ > + > + #interrupt-cells = <1>; > + interrupt-map-mask = <0 0 0 0x7>; > + interrupt-map = <0 0 0 1 &intc 0 75 > + IRQ_TYPE_LEVEL_HIGH>, /* int_a */ > + <0 0 0 2 &intc 0 78 > + IRQ_TYPE_LEVEL_HIGH>, /* int_b */ > + <0 0 0 3 &intc 0 79 > + IRQ_TYPE_LEVEL_HIGH>, /* int_c */ > + <0 0 0 4 &intc 0 83 > + IRQ_TYPE_LEVEL_HIGH>; /* int_d */ > + > + interrupts = ; > + interrupt-names = "global_irq"; > + > + clocks = <&gcc GCC_SYS_NOC_PCIE0_AXI_CLK>, > + <&gcc GCC_PCIE0_AXI_M_CLK>, > + <&gcc GCC_PCIE0_AXI_S_CLK>, > + <&gcc GCC_PCIE0_AHB_CLK>, > + <&gcc GCC_PCIE0_AUX_CLK>, > + <&gcc GCC_PCIE0_AXI_S_BRIDGE_CLK>; > + > + clock-names = "iface", > + "axi_m", > + "axi_s", > + "ahb", > + "aux", > + "axi_bridge"; > + > + resets = <&gcc GCC_PCIE0_PIPE_ARES>, > + <&gcc GCC_PCIE0_SLEEP_ARES>, > + <&gcc GCC_PCIE0_CORE_STICKY_ARES>, > + <&gcc GCC_PCIE0_AXI_MASTER_ARES>, > + <&gcc GCC_PCIE0_AXI_SLAVE_ARES>, > + <&gcc GCC_PCIE0_AHB_ARES>, > + <&gcc GCC_PCIE0_AXI_MASTER_STICKY_ARES>, > + <&gcc GCC_PCIE0_AXI_SLAVE_STICKY_ARES>; > + > + reset-names = "pipe", > + "sleep", > + "sticky", > + "axi_m", > + "axi_s", > + "ahb", > + "axi_m_sticky", > + "axi_s_sticky"; > + > + msi-map = <0x0 &v2m0 0x0 0xff8>; > + status = "disabled"; > + }; > + > }; > > timer { > -- > 2.17.1 > -- மணிவண்ணன் சதாசிவம் From mboxrd@z Thu Jan 1 00:00:00 1970 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 09712CD6115 for ; Mon, 9 Oct 2023 17:18:00 +0000 (UTC) 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:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=AJhp4pJRK6oTXSN+FyGJjklnJIPdBjA01Cl0RckMD1w=; b=cfIgeX9ruhcyzu f5eP0SAdrJ/O2zmuiyH8cruLToqNcMwB+YjQC65a++NcaEQarRJcVAlGhl2JfoCEhXebba7a+BIWL cCAZ6WxDOL3pbkG9NKImW44T/jrl0TfRvxN9ZyXVkT1rPP5GgFPiyaseamDBaDxq+uUM1yD7qYWKJ MsN4rShNOMpCg9rcjEEWAHIUsQnEFaJUQbju8oizfHoL5t1nxcGqDxvf3iRvAjwnzrvLtf/uTGSOX Yma5ttGUTyvat2YM/3tjzJFHwySYCzNKXDeDENmjLLz0w5qL15lJVUkBaWD/rPwrArkHImCd5X/Ii gcFcq12ApV2yrtXkQeSQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qpttH-00BGoT-2A; Mon, 09 Oct 2023 17:17:59 +0000 Received: from dfw.source.kernel.org ([139.178.84.217]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qpttE-00BGn0-26 for linux-phy@lists.infradead.org; Mon, 09 Oct 2023 17:17:58 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 506D76124E; Mon, 9 Oct 2023 17:17:53 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A225AC433C7; Mon, 9 Oct 2023 17:17:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1696871873; bh=I2CqfpW+7rJT51XxTDy4/99F+BBs6j5la8HhfMmDYG0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=dILau7xpGTyhEqgp1wj91xacT0IEjGgVwMlraH9WRIJa8rLhzW5iopRZwm1cerz9+ u8uDxM9uEMUnK2RNu41kVIZQ4K83W9t5kk4Suj5XTJ/cGIqsEYutpLz2LMjO96itnn caVyuKiCIkSdeoG77zH7Yc2cDkpbbJM2Jcu4TGHuWG5GrsqHTVQdcgf9SwoQI6WCvb JGH7ERC4oTRX5n1b2ROfr2Y6gNELPI2cLwS/3WVdGPL2SY+Hmo7t//PUSXEcLmh2/Z dhtiIpPp8pRJNYeTUQ4yys4ydDkd3UeTSMC4SZcF4tbou52tixH+oMHvOH0RYwG9bx TBwVYeVDig70w== Date: Mon, 9 Oct 2023 22:47:35 +0530 From: Manivannan Sadhasivam To: Nitheesh Sekar Cc: agross@kernel.org, andersson@kernel.org, konrad.dybcio@linaro.org, lpieralisi@kernel.org, kw@linux.com, robh@kernel.org, bhelgaas@google.com, krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org, vkoul@kernel.org, kishon@kernel.org, mani@kernel.org, p.zabel@pengutronix.de, quic_srichara@quicinc.com, quic_varada@quicinc.com, quic_ipkumar@quicinc.com, linux-arm-msm@vger.kernel.org, linux-pci@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-phy@lists.infradead.org Subject: Re: [PATCH 5/6] arm64: dts: qcom: ipq5018: Add PCIe related nodes Message-ID: <20231009171735.GB31623@thinkpad> References: <20231003120846.28626-1-quic_nsekar@quicinc.com> <20231003120846.28626-6-quic_nsekar@quicinc.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20231003120846.28626-6-quic_nsekar@quicinc.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231009_101756_796891_F51E88D8 X-CRM114-Status: GOOD ( 15.99 ) X-BeenThere: linux-phy@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux Phy Mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-phy" Errors-To: linux-phy-bounces+linux-phy=archiver.kernel.org@lists.infradead.org T24gVHVlLCBPY3QgMDMsIDIwMjMgYXQgMDU6Mzg6NDVQTSArMDUzMCwgTml0aGVlc2ggU2VrYXIg d3JvdGU6Cj4gQWRkIHBoeSBhbmQgY29udHJvbGxlciBub2RlcyBmb3IgUENJZV94MiBhbmQgUENJ ZV94MS4KPiBQQ0llX3gyIGlzIDItbGFuZSBHZW4yIGFuZCBQQ0llX3gxIGlzIDEtbGFuZSBHZW4y Lgo+IAo+IFNpZ25lZC1vZmYtYnk6IE5pdGhlZXNoIFNla2FyIDxxdWljX25zZWthckBxdWljaW5j LmNvbT4KPiAtLS0KPiAgYXJjaC9hcm02NC9ib290L2R0cy9xY29tL2lwcTUwMTguZHRzaSB8IDE4 NiArKysrKysrKysrKysrKysrKysrKysrKysrLQo+ICAxIGZpbGUgY2hhbmdlZCwgMTg0IGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtNjQvYm9v dC9kdHMvcWNvbS9pcHE1MDE4LmR0c2kgYi9hcmNoL2FybTY0L2Jvb3QvZHRzL3Fjb20vaXBxNTAx OC5kdHNpCj4gaW5kZXggMzhmZmRjM2NiZGNkLi4wODE4ZmRkMWU2OTMgMTAwNjQ0Cj4gLS0tIGEv YXJjaC9hcm02NC9ib290L2R0cy9xY29tL2lwcTUwMTguZHRzaQo+ICsrKyBiL2FyY2gvYXJtNjQv Ym9vdC9kdHMvcWNvbS9pcHE1MDE4LmR0c2kKPiBAQCAtOCw2ICs4LDcgQEAKPiAgI2luY2x1ZGUg PGR0LWJpbmRpbmdzL2ludGVycnVwdC1jb250cm9sbGVyL2FybS1naWMuaD4KPiAgI2luY2x1ZGUg PGR0LWJpbmRpbmdzL2Nsb2NrL3Fjb20sZ2NjLWlwcTUwMTguaD4KPiAgI2luY2x1ZGUgPGR0LWJp bmRpbmdzL3Jlc2V0L3Fjb20sZ2NjLWlwcTUwMTguaD4KPiArI2luY2x1ZGUgPGR0LWJpbmRpbmdz L2dwaW8vZ3Bpby5oPgo+ICAKPiAgLyB7Cj4gIAlpbnRlcnJ1cHQtcGFyZW50ID0gPCZpbnRjPjsK PiBAQCAtOTQsNiArOTUsMzggQEAKPiAgCQkjc2l6ZS1jZWxscyA9IDwxPjsKPiAgCQlyYW5nZXMg PSA8MCAwIDAgMHhmZmZmZmZmZj47Cj4gIAo+ICsJCXBjaWVfeDFwaHk6IHBoeUA3ZTAwMHsKPiAr CQkJY29tcGF0aWJsZSA9ICJxY29tLGlwcTUwMTgtdW5pcGh5LXBjaWUtZ2VuMngxIjsKPiArCQkJ cmVnID0gPDB4MDAwN2UwMDAgMHg4MDA+Owo+ICsJCQkjcGh5LWNlbGxzID0gPDA+Owo+ICsJCQkj Y2xvY2stY2VsbHMgPSA8MD47Cj4gKwkJCWNsb2NrcyA9IDwmZ2NjIEdDQ19QQ0lFMV9QSVBFX0NM Sz47Cj4gKwkJCWNsb2NrLW5hbWVzID0gInBpcGVfY2xrIjsKPiArCQkJY2xvY2stb3V0cHV0LW5h bWVzID0gInBjaWUxX3BpcGVfY2xrIjsKPiArCQkJYXNzaWduZWQtY2xvY2tzID0gPCZnY2MgR0ND X1BDSUUxX1BJUEVfQ0xLPjsKPiArCQkJYXNzaWduZWQtY2xvY2stcmF0ZXMgPSA8MTI1MDAwMDAw PjsKPiArCQkJcmVzZXRzID0gPCZnY2MgR0NDX1BDSUUxX1BIWV9CQ1I+LAo+ICsJCQkJIDwmZ2Nj IEdDQ19QQ0lFMVBIWV9QSFlfQkNSPjsKPiArCQkJcmVzZXQtbmFtZXMgPSAicGh5IiwgInBoeV9w aHkiOwo+ICsJCQlzdGF0dXMgPSAiZGlzYWJsZWQiOwo+ICsJCX07Cj4gKwo+ICsJCXBjaWVfeDJw aHk6IHBoeUA4NjAwMHsKPiArCQkJY29tcGF0aWJsZSA9ICJxY29tLGlwcTUwMTgtdW5pcGh5LXBj aWUtZ2VuMngyIjsKPiArCQkJcmVnID0gPDB4MDAwODYwMDAgMHg4MDA+Owo+ICsJCQkjcGh5LWNl bGxzID0gPDA+Owo+ICsJCQkjY2xvY2stY2VsbHMgPSA8MD47Cj4gKwkJCWNsb2NrcyA9IDwmZ2Nj IEdDQ19QQ0lFMF9QSVBFX0NMSz47Cj4gKwkJCWNsb2NrLW5hbWVzID0gInBpcGVfY2xrIjsKPiAr CQkJY2xvY2stb3V0cHV0LW5hbWVzID0gInBjaWUwX3BpcGVfY2xrIjsKPiArCQkJYXNzaWduZWQt Y2xvY2tzID0gPCZnY2MgR0NDX1BDSUUwX1BJUEVfQ0xLPjsKPiArCQkJYXNzaWduZWQtY2xvY2st cmF0ZXMgPSA8MTI1MDAwMDAwPjsKPiArCQkJcmVzZXRzID0gPCZnY2MgR0NDX1BDSUUwX1BIWV9C Q1I+LAo+ICsJCQkJIDwmZ2NjIEdDQ19QQ0lFMFBIWV9QSFlfQkNSPjsKPiArCQkJcmVzZXQtbmFt ZXMgPSAicGh5IiwgInBoeV9waHkiOwo+ICsJCQlzdGF0dXMgPSAiZGlzYWJsZWQiOwo+ICsJCX07 Cj4gKwo+ICAJCXRsbW06IHBpbmN0cmxAMTAwMDAwMCB7Cj4gIAkJCWNvbXBhdGlibGUgPSAicWNv bSxpcHE1MDE4LXRsbW0iOwo+ICAJCQlyZWcgPSA8MHgwMTAwMDAwMCAweDMwMDAwMD47Cj4gQEAg LTExNyw4ICsxNTAsOCBAQAo+ICAJCQlyZWcgPSA8MHgwMTgwMDAwMCAweDgwMDAwPjsKPiAgCQkJ Y2xvY2tzID0gPCZ4b19ib2FyZF9jbGs+LAo+ICAJCQkJIDwmc2xlZXBfY2xrPiwKPiAtCQkJCSA8 MD4sCj4gLQkJCQkgPDA+LAo+ICsJCQkJIDwmcGNpZV94MnBoeT4sCj4gKwkJCQkgPCZwY2llX3gx cGh5PiwKPiAgCQkJCSA8MD4sCj4gIAkJCQkgPDA+LAo+ICAJCQkJIDwwPiwKPiBAQCAtMjQ2LDYg KzI3OSwxNTUgQEAKPiAgCQkJCXN0YXR1cyA9ICJkaXNhYmxlZCI7Cj4gIAkJCX07Cj4gIAkJfTsK PiArCj4gKwkJcGNpZV94MTogcGNpQDgwMDAwMDAwIHsKPiArCQkJY29tcGF0aWJsZSA9ICJxY29t LHBjaWUtaXBxNTAxOCI7Cj4gKwkJCXJlZyA9ICA8MHg4MDAwMDAwMCAweGYxZAo+ICsJCQkJMHg4 MDAwMEYyMCAweGE4Cj4gKwkJCQkweDgwMDAxMDAwIDB4MTAwMAo+ICsJCQkJMHg3ODAwMCAweDMw MDAKPiArCQkJCTB4ODAxMDAwMDAgMHgxMDAwPjsKPiArCQkJcmVnLW5hbWVzID0gImRiaSIsICJl bGJpIiwgImF0dSIsICJwYXJmIiwgImNvbmZpZyI7Cj4gKwkJCWRldmljZV90eXBlID0gInBjaSI7 Cj4gKwkJCWxpbnV4LHBjaS1kb21haW4gPSA8MD47Cj4gKwkJCWJ1cy1yYW5nZSA9IDwweDAwIDB4 ZmY+Owo+ICsJCQludW0tbGFuZXMgPSA8MT47Cj4gKwkJCW1heC1saW5rLXNwZWVkID0gPDI+Owo+ ICsJCQkjYWRkcmVzcy1jZWxscyA9IDwzPjsKPiArCQkJI3NpemUtY2VsbHMgPSA8Mj47Cj4gKwo+ ICsJCQlwaHlzID0gPCZwY2llX3gxcGh5PjsKPiArCQkJcGh5LW5hbWVzID0icGNpZXBoeSI7Cj4g Kwo+ICsJCQlyYW5nZXMgPSA8MHg4MTAwMDAwMCAwIDB4ODAyMDAwMDAgMHg4MDIwMDAwMAoKV2h5 IGRvIHlvdSBuZWVkICJyZWxvY2F0YWJsZSIgZmxhZz8gU2FtZSBxdWVzdGlvbiBmb3Igb3RoZXIg cmFuZ2UgYWxzby4KCj4gKwkJCQkgIDAgMHgwMDEwMDAwMCAgIC8qIGRvd25zdHJlYW0gSS9PICov Cj4gKwkJCQkgIDB4ODIwMDAwMDAgMCAweDgwMzAwMDAwIDB4ODAzMDAwMDAKPiArCQkJCSAgMCAw eDEwMDAwMDAwPjsgLyogbm9uLXByZWZldGNoYWJsZSBtZW1vcnkgKi8KPiArCgpEb24ndCB5b3Ug bmVlZCAiZG1hLWNvaGVyZW50IiB0byBzcGVjaWZ5IHRoZSBkZXZpY2VzIGFzIGNhY2hlIGNvaGVy ZW50PyBJIGFzc3VtZQphbGwgdGhlIHJlY2VudCBQQ0llIGdlbmVyYXRpb25zIGFyZSBjYWNoZSBj b2hlcmVudC4KCi0gTWFuaQoKPiArCQkJI2ludGVycnVwdC1jZWxscyA9IDwxPjsKPiArCQkJaW50 ZXJydXB0LW1hcC1tYXNrID0gPDAgMCAwIDB4Nz47Cj4gKwkJCWludGVycnVwdC1tYXAgPSA8MCAw IDAgMSAmaW50YyAwIDE0Mgo+ICsJCQkJCSBJUlFfVFlQRV9MRVZFTF9ISUdIPiwgLyogaW50X2Eg Ki8KPiArCQkJCQk8MCAwIDAgMiAmaW50YyAwIDE0Mwo+ICsJCQkJCSBJUlFfVFlQRV9MRVZFTF9I SUdIPiwgLyogaW50X2IgKi8KPiArCQkJCQk8MCAwIDAgMyAmaW50YyAwIDE0NAo+ICsJCQkJCSBJ UlFfVFlQRV9MRVZFTF9ISUdIPiwgLyogaW50X2MgKi8KPiArCQkJCQk8MCAwIDAgNCAmaW50YyAw IDE0NQo+ICsJCQkJCSBJUlFfVFlQRV9MRVZFTF9ISUdIPjsgLyogaW50X2QgKi8KPiArCj4gKwkJ CWludGVycnVwdHMgPSA8R0lDX1NQSSAxMTkgSVJRX1RZUEVfTEVWRUxfSElHSD47Cj4gKwkJCWlu dGVycnVwdC1uYW1lcyA9ICJnbG9iYWxfaXJxIjsKPiArCj4gKwkJCWNsb2NrcyA9IDwmZ2NjIEdD Q19TWVNfTk9DX1BDSUUxX0FYSV9DTEs+LAo+ICsJCQkJIDwmZ2NjIEdDQ19QQ0lFMV9BWElfTV9D TEs+LAo+ICsJCQkJIDwmZ2NjIEdDQ19QQ0lFMV9BWElfU19DTEs+LAo+ICsJCQkJIDwmZ2NjIEdD Q19QQ0lFMV9BSEJfQ0xLPiwKPiArCQkJCSA8JmdjYyBHQ0NfUENJRTFfQVVYX0NMSz4sCj4gKwkJ CQkgPCZnY2MgR0NDX1BDSUUxX0FYSV9TX0JSSURHRV9DTEs+Owo+ICsKPiArCQkJY2xvY2stbmFt ZXMgPSAiaWZhY2UiLAo+ICsJCQkJICAgICAgImF4aV9tIiwKPiArCQkJCSAgICAgICJheGlfcyIs Cj4gKwkJCQkgICAgICAiYWhiIiwKPiArCQkJCSAgICAgICJhdXgiLAo+ICsJCQkJICAgICAgImF4 aV9icmlkZ2UiOwo+ICsKPiArCQkJcmVzZXRzID0gPCZnY2MgR0NDX1BDSUUxX1BJUEVfQVJFUz4s Cj4gKwkJCQkgPCZnY2MgR0NDX1BDSUUxX1NMRUVQX0FSRVM+LAo+ICsJCQkJIDwmZ2NjIEdDQ19Q Q0lFMV9DT1JFX1NUSUNLWV9BUkVTPiwKPiArCQkJCSA8JmdjYyBHQ0NfUENJRTFfQVhJX01BU1RF Ul9BUkVTPiwKPiArCQkJCSA8JmdjYyBHQ0NfUENJRTFfQVhJX1NMQVZFX0FSRVM+LAo+ICsJCQkJ IDwmZ2NjIEdDQ19QQ0lFMV9BSEJfQVJFUz4sCj4gKwkJCQkgPCZnY2MgR0NDX1BDSUUxX0FYSV9N QVNURVJfU1RJQ0tZX0FSRVM+LAo+ICsJCQkJIDwmZ2NjIEdDQ19QQ0lFMV9BWElfU0xBVkVfU1RJ Q0tZX0FSRVM+Owo+ICsKPiArCQkJcmVzZXQtbmFtZXMgPSAicGlwZSIsCj4gKwkJCQkgICAgICAi c2xlZXAiLAo+ICsJCQkJICAgICAgInN0aWNreSIsCj4gKwkJCQkgICAgICAiYXhpX20iLAo+ICsJ CQkJICAgICAgImF4aV9zIiwKPiArCQkJCSAgICAgICJhaGIiLAo+ICsJCQkJICAgICAgImF4aV9t X3N0aWNreSIsCj4gKwkJCQkgICAgICAiYXhpX3Nfc3RpY2t5IjsKPiArCj4gKwkJCW1zaS1tYXAg PSA8MHgwICZ2Mm0wIDB4MCAweGZmOD47Cj4gKwkJCXN0YXR1cyA9ICJkaXNhYmxlZCI7Cj4gKwkJ fTsKPiArCj4gKwkJcGNpZV94MjogcGNpQGEwMDAwMDAwIHsKPiArCQkJY29tcGF0aWJsZSA9ICJx Y29tLHBjaWUtaXBxNTAxOCI7Cj4gKwkJCXJlZyA9ICA8MHhhMDAwMDAwMCAweGYxZAo+ICsJCQkJ MHhhMDAwMEYyMCAweGE4Cj4gKwkJCQkweGEwMDAxMDAwIDB4MTAwMAo+ICsJCQkJMHg4MDAwMCAw eDMwMDAKPiArCQkJCTB4YTAxMDAwMDAgMHgxMDAwPjsKPiArCQkJcmVnLW5hbWVzID0gImRiaSIs ICJlbGJpIiwgImF0dSIsICJwYXJmIiwgImNvbmZpZyI7Cj4gKwkJCWRldmljZV90eXBlID0gInBj aSI7Cj4gKwkJCWxpbnV4LHBjaS1kb21haW4gPSA8MT47Cj4gKwkJCWJ1cy1yYW5nZSA9IDwweDAw IDB4ZmY+Owo+ICsJCQludW0tbGFuZXMgPSA8Mj47Cj4gKwkJCW1heC1saW5rLXNwZWVkID0gPDI+ Owo+ICsJCQkjYWRkcmVzcy1jZWxscyA9IDwzPjsKPiArCQkJI3NpemUtY2VsbHMgPSA8Mj47Cj4g Kwo+ICsJCQlwaHlzID0gPCZwY2llX3gycGh5PjsKPiArCQkJcGh5LW5hbWVzID0icGNpZXBoeSI7 Cj4gKwo+ICsJCQlyYW5nZXMgPSA8MHg4MTAwMDAwMCAwIDB4YTAyMDAwMDAgMHhhMDIwMDAwMAo+ ICsJCQkJICAwIDB4MDAxMDAwMDAgICAvKiBkb3duc3RyZWFtIEkvTyAqLwo+ICsJCQkJICAweDgy MDAwMDAwIDAgMHhhMDMwMDAwMCAweGEwMzAwMDAwCj4gKwkJCQkgIDAgMHgxMDAwMDAwMD47IC8q IG5vbi1wcmVmZXRjaGFibGUgbWVtb3J5ICovCj4gKwo+ICsJCQkjaW50ZXJydXB0LWNlbGxzID0g PDE+Owo+ICsJCQlpbnRlcnJ1cHQtbWFwLW1hc2sgPSA8MCAwIDAgMHg3PjsKPiArCQkJaW50ZXJy dXB0LW1hcCA9IDwwIDAgMCAxICZpbnRjIDAgNzUKPiArCQkJCQkgSVJRX1RZUEVfTEVWRUxfSElH SD4sIC8qIGludF9hICovCj4gKwkJCQkJPDAgMCAwIDIgJmludGMgMCA3OAo+ICsJCQkJCSBJUlFf VFlQRV9MRVZFTF9ISUdIPiwgLyogaW50X2IgKi8KPiArCQkJCQk8MCAwIDAgMyAmaW50YyAwIDc5 Cj4gKwkJCQkJIElSUV9UWVBFX0xFVkVMX0hJR0g+LCAvKiBpbnRfYyAqLwo+ICsJCQkJCTwwIDAg MCA0ICZpbnRjIDAgODMKPiArCQkJCQkgSVJRX1RZUEVfTEVWRUxfSElHSD47IC8qIGludF9kICov Cj4gKwo+ICsJCQlpbnRlcnJ1cHRzID0gPEdJQ19TUEkgNTEgSVJRX1RZUEVfTEVWRUxfSElHSD47 Cj4gKwkJCWludGVycnVwdC1uYW1lcyA9ICJnbG9iYWxfaXJxIjsKPiArCj4gKwkJCWNsb2NrcyA9 IDwmZ2NjIEdDQ19TWVNfTk9DX1BDSUUwX0FYSV9DTEs+LAo+ICsJCQkJIDwmZ2NjIEdDQ19QQ0lF MF9BWElfTV9DTEs+LAo+ICsJCQkJIDwmZ2NjIEdDQ19QQ0lFMF9BWElfU19DTEs+LAo+ICsJCQkJ IDwmZ2NjIEdDQ19QQ0lFMF9BSEJfQ0xLPiwKPiArCQkJCSA8JmdjYyBHQ0NfUENJRTBfQVVYX0NM Sz4sCj4gKwkJCQkgPCZnY2MgR0NDX1BDSUUwX0FYSV9TX0JSSURHRV9DTEs+Owo+ICsKPiArCQkJ Y2xvY2stbmFtZXMgPSAiaWZhY2UiLAo+ICsJCQkJICAgICAgImF4aV9tIiwKPiArCQkJCSAgICAg ICJheGlfcyIsCj4gKwkJCQkgICAgICAiYWhiIiwKPiArCQkJCSAgICAgICJhdXgiLAo+ICsJCQkJ ICAgICAgImF4aV9icmlkZ2UiOwo+ICsKPiArCQkJcmVzZXRzID0gPCZnY2MgR0NDX1BDSUUwX1BJ UEVfQVJFUz4sCj4gKwkJCQkgPCZnY2MgR0NDX1BDSUUwX1NMRUVQX0FSRVM+LAo+ICsJCQkJIDwm Z2NjIEdDQ19QQ0lFMF9DT1JFX1NUSUNLWV9BUkVTPiwKPiArCQkJCSA8JmdjYyBHQ0NfUENJRTBf QVhJX01BU1RFUl9BUkVTPiwKPiArCQkJCSA8JmdjYyBHQ0NfUENJRTBfQVhJX1NMQVZFX0FSRVM+ LAo+ICsJCQkJIDwmZ2NjIEdDQ19QQ0lFMF9BSEJfQVJFUz4sCj4gKwkJCQkgPCZnY2MgR0NDX1BD SUUwX0FYSV9NQVNURVJfU1RJQ0tZX0FSRVM+LAo+ICsJCQkJIDwmZ2NjIEdDQ19QQ0lFMF9BWElf U0xBVkVfU1RJQ0tZX0FSRVM+Owo+ICsKPiArCQkJcmVzZXQtbmFtZXMgPSAicGlwZSIsCj4gKwkJ CQkgICAgICAic2xlZXAiLAo+ICsJCQkJICAgICAgInN0aWNreSIsCj4gKwkJCQkgICAgICAiYXhp X20iLAo+ICsJCQkJICAgICAgImF4aV9zIiwKPiArCQkJCSAgICAgICJhaGIiLAo+ICsJCQkJICAg ICAgImF4aV9tX3N0aWNreSIsCj4gKwkJCQkgICAgICAiYXhpX3Nfc3RpY2t5IjsKPiArCj4gKwkJ CW1zaS1tYXAgPSA8MHgwICZ2Mm0wIDB4MCAweGZmOD47Cj4gKwkJCXN0YXR1cyA9ICJkaXNhYmxl ZCI7Cj4gKwkJfTsKPiArCj4gIAl9Owo+ICAKPiAgCXRpbWVyIHsKPiAtLSAKPiAyLjE3LjEKPiAK Ci0tIArgrq7grqPgrr/grrXgrqPgr43grqPgrqngr40g4K6a4K6k4K6+4K6a4K6/4K614K6u4K+N CgotLSAKbGludXgtcGh5IG1haWxpbmcgbGlzdApsaW51eC1waHlAbGlzdHMuaW5mcmFkZWFkLm9y ZwpodHRwczovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1waHkK