From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 507DF18F2C4; Wed, 5 Jun 2024 07:42:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717573374; cv=none; b=OP6mayzKsk/jJLcHX3TuYgOkJDZZb3z0b7ikrjHLEPwPQUZaWODz30stQ0KsH8oJfh0MVdkNmrdZP2nBn9t1oPsqCmKh5ZIRMkRfgFCX/LI+ujm5MMSe4tAlBOb3Q/x/jpREuMtTTErNLqowECb/tYfuEEnPuqgCHnzSZk5IBUs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717573374; c=relaxed/simple; bh=HM7m/U7N3NDvThcmwy49Jtde3MbVuHJZ4vKRZbduAu0=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=MA6iIfK51IjmC5nj+laDfz98JX+H9BGW6Em/jmxE3Qc+af5WbtRjYqwcq+inWXC6tMyc1otjTrSgue9E9TNKCHJD8zbhnOncNyjKVaU4ZFXaamKW25OWqW5QeLI5QhLnAv6dcw+rwviSdt9IQN2ozWjThHyqPw8EAgKyXXO8zjM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=NwD0PToe; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="NwD0PToe" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C64E9C4AF09; Wed, 5 Jun 2024 07:42:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1717573373; bh=HM7m/U7N3NDvThcmwy49Jtde3MbVuHJZ4vKRZbduAu0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=NwD0PToe3JkMcXF0JbT1Y6kuJoKVzuKGay0y3G2dv6eyIbRdeDMxiGR8jq+iS2uY4 rlBhDbQBNXu5GseWNh+RhwQJXDsebtZEZ9bXjUlV7PADrX8SwpD/LUMztRrVGQIJMw WiveEApcQ5wG859qo+9m23XGpKVO/bL6Wgyb+uxhVKgzEG2CS7FD9Wn3/D/VaEFntL AR9+4L1+qd6la7JMwOodCBYFQkCjHqva9FDCSX94ohLICE3hA2jg3O6WwRqqWyMb3S JGQXfllIQ9XgdobS6SL0HLHRHR2V2y/ffhRPY0GyMOtHGsynBjuJ8HoPGirCipk/aQ nqeFZDP1LdRdA== Date: Wed, 5 Jun 2024 13:12:40 +0530 From: Manivannan Sadhasivam To: Niklas Cassel Cc: Jingoo Han , Manivannan Sadhasivam , Bjorn Helgaas , Lorenzo Pieralisi , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Kishon Vijay Abraham I , Arnd Bergmann , Damien Le Moal , Jon Lin , Shawn Lin , Simon Xue , linux-pci@vger.kernel.org, devicetree@vger.kernel.org, linux-rockchip@lists.infradead.org Subject: Re: [PATCH v4 06/13] dt-bindings: rockchip: Add DesignWare based PCIe Endpoint controller Message-ID: <20240605074240.GH5085@thinkpad> References: <20240529-rockchip-pcie-ep-v1-v4-0-3dc00fe21a78@kernel.org> <20240529-rockchip-pcie-ep-v1-v4-6-3dc00fe21a78@kernel.org> Precedence: bulk X-Mailing-List: linux-pci@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20240529-rockchip-pcie-ep-v1-v4-6-3dc00fe21a78@kernel.org> On Wed, May 29, 2024 at 10:29:00AM +0200, Niklas Cassel wrote: > Document DT bindings for PCIe Endpoint controller found in Rockchip SoCs. > > Signed-off-by: Niklas Cassel Couple of nitpicks below. With those fixed, Reviewed-by: Manivannan Sadhasivam > Reviewed-by: Rob Herring (Arm) > --- > .../bindings/pci/rockchip-dw-pcie-common.yaml | 14 ++++ > .../bindings/pci/rockchip-dw-pcie-ep.yaml | 95 ++++++++++++++++++++++ > 2 files changed, 109 insertions(+) > > diff --git a/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-common.yaml b/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-common.yaml > index ec5e6a3d048e..cc9adfc7611c 100644 > --- a/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-common.yaml > +++ b/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-common.yaml > @@ -39,6 +39,7 @@ properties: > - const: ref > > interrupts: > + minItems: 5 > items: > - description: > Combined system interrupt, which is used to signal the following > @@ -63,14 +64,27 @@ properties: > interrupts - aer_rc_err, aer_rc_err_msi, rx_cpl_timeout, > tx_cpl_timeout, cor_err_sent, nf_err_sent, f_err_sent, cor_err_rx, > nf_err_rx, f_err_rx, radm_qoverflow > + - description: > + eDMA write channel 0 interrupt > + - description: > + eDMA write channel 1 interrupt > + - description: > + eDMA read channel 0 interrupt > + - description: > + eDMA read channel 1 interrupt > > interrupt-names: > + minItems: 5 > items: > - const: sys > - const: pmc > - const: msg > - const: legacy > - const: err > + - const: dma0 > + - const: dma1 > + - const: dma2 > + - const: dma3 > > num-lanes: true > > diff --git a/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-ep.yaml b/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-ep.yaml > new file mode 100644 > index 000000000000..e0c8668afc01 > --- /dev/null > +++ b/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-ep.yaml > @@ -0,0 +1,95 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/pci/rockchip-dw-pcie-ep.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: DesignWare based PCIe Endpoint controller on Rockchip SoCs > + > +maintainers: > + - Niklas Cassel > + > +description: |+ > + RK3588 SoC PCIe Endpoint controller is based on the Synopsys DesignWare > + PCIe IP and thus inherits all the common properties defined in > + snps,dw-pcie-ep.yaml. > + > +allOf: > + - $ref: /schemas/pci/snps,dw-pcie-ep.yaml# > + - $ref: /schemas/pci/rockchip-dw-pcie-common.yaml# > + > +properties: > + compatible: > + enum: > + - rockchip,rk3568-pcie-ep > + - rockchip,rk3588-pcie-ep > + > + reg: > + items: > + - description: Data Bus Interface (DBI) registers > + - description: Data Bus Interface (DBI) shadow registers > + - description: Rockchip designed configuration registers > + - description: Memory region used to map remote RC address space > + - description: Address Translation Unit (ATU) registers Nit: Internal Address Translation Unit (iATU) > + > + reg-names: > + items: > + - const: dbi > + - const: dbi2 > + - const: apb > + - const: addr_space > + - const: atu > + > +required: > + - interrupts > + - interrupt-names > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include > + #include > + #include > + #include > + #include > + > + bus { Even though 'bus' node is also used in many bindings, I prefer 'soc' since it fits better IMO. > + #address-cells = <2>; > + #size-cells = <2>; > + > + pcie3x4_ep: pcie-ep@fe150000 { > + compatible = "rockchip,rk3588-pcie-ep"; > + clocks = <&cru ACLK_PCIE_4L_MSTR>, <&cru ACLK_PCIE_4L_SLV>, > + <&cru ACLK_PCIE_4L_DBI>, <&cru PCLK_PCIE_4L>, > + <&cru CLK_PCIE_AUX0>, <&cru CLK_PCIE4L_PIPE>; > + clock-names = "aclk_mst", "aclk_slv", > + "aclk_dbi", "pclk", > + "aux", "pipe"; > + interrupts = , > + , > + , > + , > + , > + , > + , > + , > + ; > + interrupt-names = "sys", "pmc", "msg", "legacy", "err", > + "dma0", "dma1", "dma2", "dma3"; > + max-link-speed = <3>; > + num-lanes = <4>; > + phys = <&pcie30phy>; > + phy-names = "pcie-phy"; > + power-domains = <&power RK3588_PD_PCIE>; > + reg = <0xa 0x40000000 0x0 0x00100000>, > + <0xa 0x40100000 0x0 0x00100000>, > + <0x0 0xfe150000 0x0 0x00010000>, > + <0x9 0x00000000 0x0 0x40000000>, > + <0xa 0x40300000 0x0 0x00100000>; > + reg-names = "dbi", "dbi2", "apb", "addr_space", "atu"; Can you move 'reg' and 'reg-names' below 'compatible' to align with common convention? - Mani > + resets = <&cru SRST_PCIE0_POWER_UP>, <&cru SRST_P_PCIE0>; > + reset-names = "pwr", "pipe"; > + }; > + }; > +... > > -- > 2.45.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 BBC62C25B76 for ; Wed, 5 Jun 2024 07:43:01 +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=HR0p9HJNj/mpIl/BG+ldRUy0RCsk3EittyMgnF/UuhY=; b=zt+Jng1tXM0n3z LhcSiyynkGndXRho9fLgsg8+5RiMJ99ulQYrH91kKm7faJsxCspZ1RQAAOJwEkUYaj92CWKruiP3w XOxwR/pJ7ClvEFOARXuECrCxOn4T6+IVtNNZAcjxkOpQvtPMYjA6wrRoszyuBB8jFvsFyUw9PYS+f jC9xJG8IeIS+X5Uzw32Aa490XqPibb8MSXXmMfPsFbj53v+sGPrsDfBCJMQiffuXC2PctyS8tI4Co i/4ANYXTu+liIIGfREm5hWdCkJ5vIUIf1KfpItk+5EGsaW1HTaoXr1Siu4dRM+TY7CwUH2kGnTo48 TUXU7CeuRVbu5gMVMb5A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1sElIP-000000052BO-1TZu; Wed, 05 Jun 2024 07:42:57 +0000 Received: from dfw.source.kernel.org ([2604:1380:4641:c500::1]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1sElIM-000000052Ai-44MT for linux-rockchip@lists.infradead.org; Wed, 05 Jun 2024 07:42:56 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 336E561681; Wed, 5 Jun 2024 07:42:54 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C64E9C4AF09; Wed, 5 Jun 2024 07:42:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1717573373; bh=HM7m/U7N3NDvThcmwy49Jtde3MbVuHJZ4vKRZbduAu0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=NwD0PToe3JkMcXF0JbT1Y6kuJoKVzuKGay0y3G2dv6eyIbRdeDMxiGR8jq+iS2uY4 rlBhDbQBNXu5GseWNh+RhwQJXDsebtZEZ9bXjUlV7PADrX8SwpD/LUMztRrVGQIJMw WiveEApcQ5wG859qo+9m23XGpKVO/bL6Wgyb+uxhVKgzEG2CS7FD9Wn3/D/VaEFntL AR9+4L1+qd6la7JMwOodCBYFQkCjHqva9FDCSX94ohLICE3hA2jg3O6WwRqqWyMb3S JGQXfllIQ9XgdobS6SL0HLHRHR2V2y/ffhRPY0GyMOtHGsynBjuJ8HoPGirCipk/aQ nqeFZDP1LdRdA== Date: Wed, 5 Jun 2024 13:12:40 +0530 From: Manivannan Sadhasivam To: Niklas Cassel Cc: Jingoo Han , Manivannan Sadhasivam , Bjorn Helgaas , Lorenzo Pieralisi , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Kishon Vijay Abraham I , Arnd Bergmann , Damien Le Moal , Jon Lin , Shawn Lin , Simon Xue , linux-pci@vger.kernel.org, devicetree@vger.kernel.org, linux-rockchip@lists.infradead.org Subject: Re: [PATCH v4 06/13] dt-bindings: rockchip: Add DesignWare based PCIe Endpoint controller Message-ID: <20240605074240.GH5085@thinkpad> References: <20240529-rockchip-pcie-ep-v1-v4-0-3dc00fe21a78@kernel.org> <20240529-rockchip-pcie-ep-v1-v4-6-3dc00fe21a78@kernel.org> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20240529-rockchip-pcie-ep-v1-v4-6-3dc00fe21a78@kernel.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240605_004255_142963_6B05430B X-CRM114-Status: GOOD ( 18.62 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org T24gV2VkLCBNYXkgMjksIDIwMjQgYXQgMTA6Mjk6MDBBTSArMDIwMCwgTmlrbGFzIENhc3NlbCB3 cm90ZToKPiBEb2N1bWVudCBEVCBiaW5kaW5ncyBmb3IgUENJZSBFbmRwb2ludCBjb250cm9sbGVy IGZvdW5kIGluIFJvY2tjaGlwIFNvQ3MuCj4gCj4gU2lnbmVkLW9mZi1ieTogTmlrbGFzIENhc3Nl bCA8Y2Fzc2VsQGtlcm5lbC5vcmc+CgpDb3VwbGUgb2Ygbml0cGlja3MgYmVsb3cuIFdpdGggdGhv c2UgZml4ZWQsCgpSZXZpZXdlZC1ieTogTWFuaXZhbm5hbiBTYWRoYXNpdmFtIDxtYW5pdmFubmFu LnNhZGhhc2l2YW1AbGluYXJvLm9yZz4KCj4gUmV2aWV3ZWQtYnk6IFJvYiBIZXJyaW5nIChBcm0p IDxyb2JoQGtlcm5lbC5vcmc+Cj4gLS0tCj4gIC4uLi9iaW5kaW5ncy9wY2kvcm9ja2NoaXAtZHct cGNpZS1jb21tb24ueWFtbCAgICAgIHwgMTQgKysrKwo+ICAuLi4vYmluZGluZ3MvcGNpL3JvY2tj aGlwLWR3LXBjaWUtZXAueWFtbCAgICAgICAgICB8IDk1ICsrKysrKysrKysrKysrKysrKysrKysK PiAgMiBmaWxlcyBjaGFuZ2VkLCAxMDkgaW5zZXJ0aW9ucygrKQo+IAo+IGRpZmYgLS1naXQgYS9E b2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvcGNpL3JvY2tjaGlwLWR3LXBjaWUtY29t bW9uLnlhbWwgYi9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvcGNpL3JvY2tjaGlw LWR3LXBjaWUtY29tbW9uLnlhbWwKPiBpbmRleCBlYzVlNmEzZDA0OGUuLmNjOWFkZmM3NjExYyAx MDA2NDQKPiAtLS0gYS9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvcGNpL3JvY2tj aGlwLWR3LXBjaWUtY29tbW9uLnlhbWwKPiArKysgYi9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUv YmluZGluZ3MvcGNpL3JvY2tjaGlwLWR3LXBjaWUtY29tbW9uLnlhbWwKPiBAQCAtMzksNiArMzks NyBAQCBwcm9wZXJ0aWVzOgo+ICAgICAgICAtIGNvbnN0OiByZWYKPiAgCj4gICAgaW50ZXJydXB0 czoKPiArICAgIG1pbkl0ZW1zOiA1Cj4gICAgICBpdGVtczoKPiAgICAgICAgLSBkZXNjcmlwdGlv bjoKPiAgICAgICAgICAgIENvbWJpbmVkIHN5c3RlbSBpbnRlcnJ1cHQsIHdoaWNoIGlzIHVzZWQg dG8gc2lnbmFsIHRoZSBmb2xsb3dpbmcKPiBAQCAtNjMsMTQgKzY0LDI3IEBAIHByb3BlcnRpZXM6 Cj4gICAgICAgICAgICBpbnRlcnJ1cHRzIC0gYWVyX3JjX2VyciwgYWVyX3JjX2Vycl9tc2ksIHJ4 X2NwbF90aW1lb3V0LAo+ICAgICAgICAgICAgdHhfY3BsX3RpbWVvdXQsIGNvcl9lcnJfc2VudCwg bmZfZXJyX3NlbnQsIGZfZXJyX3NlbnQsIGNvcl9lcnJfcngsCj4gICAgICAgICAgICBuZl9lcnJf cngsIGZfZXJyX3J4LCByYWRtX3FvdmVyZmxvdwo+ICsgICAgICAtIGRlc2NyaXB0aW9uOgo+ICsg ICAgICAgICAgZURNQSB3cml0ZSBjaGFubmVsIDAgaW50ZXJydXB0Cj4gKyAgICAgIC0gZGVzY3Jp cHRpb246Cj4gKyAgICAgICAgICBlRE1BIHdyaXRlIGNoYW5uZWwgMSBpbnRlcnJ1cHQKPiArICAg ICAgLSBkZXNjcmlwdGlvbjoKPiArICAgICAgICAgIGVETUEgcmVhZCBjaGFubmVsIDAgaW50ZXJy dXB0Cj4gKyAgICAgIC0gZGVzY3JpcHRpb246Cj4gKyAgICAgICAgICBlRE1BIHJlYWQgY2hhbm5l bCAxIGludGVycnVwdAo+ICAKPiAgICBpbnRlcnJ1cHQtbmFtZXM6Cj4gKyAgICBtaW5JdGVtczog NQo+ICAgICAgaXRlbXM6Cj4gICAgICAgIC0gY29uc3Q6IHN5cwo+ICAgICAgICAtIGNvbnN0OiBw bWMKPiAgICAgICAgLSBjb25zdDogbXNnCj4gICAgICAgIC0gY29uc3Q6IGxlZ2FjeQo+ICAgICAg ICAtIGNvbnN0OiBlcnIKPiArICAgICAgLSBjb25zdDogZG1hMAo+ICsgICAgICAtIGNvbnN0OiBk bWExCj4gKyAgICAgIC0gY29uc3Q6IGRtYTIKPiArICAgICAgLSBjb25zdDogZG1hMwo+ICAKPiAg ICBudW0tbGFuZXM6IHRydWUKPiAgCj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZGV2aWNl dHJlZS9iaW5kaW5ncy9wY2kvcm9ja2NoaXAtZHctcGNpZS1lcC55YW1sIGIvRG9jdW1lbnRhdGlv bi9kZXZpY2V0cmVlL2JpbmRpbmdzL3BjaS9yb2NrY2hpcC1kdy1wY2llLWVwLnlhbWwKPiBuZXcg ZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAwMDAwMC4uZTBjODY2OGFmYzAxCj4gLS0t IC9kZXYvbnVsbAo+ICsrKyBiL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9wY2kv cm9ja2NoaXAtZHctcGNpZS1lcC55YW1sCj4gQEAgLTAsMCArMSw5NSBAQAo+ICsjIFNQRFgtTGlj ZW5zZS1JZGVudGlmaWVyOiAoR1BMLTIuMC1vbmx5IE9SIEJTRC0yLUNsYXVzZSkKPiArJVlBTUwg MS4yCj4gKy0tLQo+ICskaWQ6IGh0dHA6Ly9kZXZpY2V0cmVlLm9yZy9zY2hlbWFzL3BjaS9yb2Nr Y2hpcC1kdy1wY2llLWVwLnlhbWwjCj4gKyRzY2hlbWE6IGh0dHA6Ly9kZXZpY2V0cmVlLm9yZy9t ZXRhLXNjaGVtYXMvY29yZS55YW1sIwo+ICsKPiArdGl0bGU6IERlc2lnbldhcmUgYmFzZWQgUENJ ZSBFbmRwb2ludCBjb250cm9sbGVyIG9uIFJvY2tjaGlwIFNvQ3MKPiArCj4gK21haW50YWluZXJz Ogo+ICsgIC0gTmlrbGFzIENhc3NlbCA8Y2Fzc2VsQGtlcm5lbC5vcmc+Cj4gKwo+ICtkZXNjcmlw dGlvbjogfCsKPiArICBSSzM1ODggU29DIFBDSWUgRW5kcG9pbnQgY29udHJvbGxlciBpcyBiYXNl ZCBvbiB0aGUgU3lub3BzeXMgRGVzaWduV2FyZQo+ICsgIFBDSWUgSVAgYW5kIHRodXMgaW5oZXJp dHMgYWxsIHRoZSBjb21tb24gcHJvcGVydGllcyBkZWZpbmVkIGluCj4gKyAgc25wcyxkdy1wY2ll LWVwLnlhbWwuCj4gKwo+ICthbGxPZjoKPiArICAtICRyZWY6IC9zY2hlbWFzL3BjaS9zbnBzLGR3 LXBjaWUtZXAueWFtbCMKPiArICAtICRyZWY6IC9zY2hlbWFzL3BjaS9yb2NrY2hpcC1kdy1wY2ll LWNvbW1vbi55YW1sIwo+ICsKPiArcHJvcGVydGllczoKPiArICBjb21wYXRpYmxlOgo+ICsgICAg ZW51bToKPiArICAgICAgLSByb2NrY2hpcCxyazM1NjgtcGNpZS1lcAo+ICsgICAgICAtIHJvY2tj aGlwLHJrMzU4OC1wY2llLWVwCj4gKwo+ICsgIHJlZzoKPiArICAgIGl0ZW1zOgo+ICsgICAgICAt IGRlc2NyaXB0aW9uOiBEYXRhIEJ1cyBJbnRlcmZhY2UgKERCSSkgcmVnaXN0ZXJzCj4gKyAgICAg IC0gZGVzY3JpcHRpb246IERhdGEgQnVzIEludGVyZmFjZSAoREJJKSBzaGFkb3cgcmVnaXN0ZXJz Cj4gKyAgICAgIC0gZGVzY3JpcHRpb246IFJvY2tjaGlwIGRlc2lnbmVkIGNvbmZpZ3VyYXRpb24g cmVnaXN0ZXJzCj4gKyAgICAgIC0gZGVzY3JpcHRpb246IE1lbW9yeSByZWdpb24gdXNlZCB0byBt YXAgcmVtb3RlIFJDIGFkZHJlc3Mgc3BhY2UKPiArICAgICAgLSBkZXNjcmlwdGlvbjogQWRkcmVz cyBUcmFuc2xhdGlvbiBVbml0IChBVFUpIHJlZ2lzdGVycwoKTml0OiBJbnRlcm5hbCBBZGRyZXNz IFRyYW5zbGF0aW9uIFVuaXQgKGlBVFUpCgo+ICsKPiArICByZWctbmFtZXM6Cj4gKyAgICBpdGVt czoKPiArICAgICAgLSBjb25zdDogZGJpCj4gKyAgICAgIC0gY29uc3Q6IGRiaTIKPiArICAgICAg LSBjb25zdDogYXBiCj4gKyAgICAgIC0gY29uc3Q6IGFkZHJfc3BhY2UKPiArICAgICAgLSBjb25z dDogYXR1Cj4gKwo+ICtyZXF1aXJlZDoKPiArICAtIGludGVycnVwdHMKPiArICAtIGludGVycnVw dC1uYW1lcwo+ICsKPiArdW5ldmFsdWF0ZWRQcm9wZXJ0aWVzOiBmYWxzZQo+ICsKPiArZXhhbXBs ZXM6Cj4gKyAgLSB8Cj4gKyAgICAjaW5jbHVkZSA8ZHQtYmluZGluZ3MvY2xvY2svcm9ja2NoaXAs cmszNTg4LWNydS5oPgo+ICsgICAgI2luY2x1ZGUgPGR0LWJpbmRpbmdzL2ludGVycnVwdC1jb250 cm9sbGVyL2FybS1naWMuaD4KPiArICAgICNpbmNsdWRlIDxkdC1iaW5kaW5ncy9pbnRlcnJ1cHQt Y29udHJvbGxlci9pcnEuaD4KPiArICAgICNpbmNsdWRlIDxkdC1iaW5kaW5ncy9wb3dlci9yazM1 ODgtcG93ZXIuaD4KPiArICAgICNpbmNsdWRlIDxkdC1iaW5kaW5ncy9yZXNldC9yb2NrY2hpcCxy azM1ODgtY3J1Lmg+Cj4gKwo+ICsgICAgYnVzIHsKCkV2ZW4gdGhvdWdoICdidXMnIG5vZGUgaXMg YWxzbyB1c2VkIGluIG1hbnkgYmluZGluZ3MsIEkgcHJlZmVyICdzb2MnIHNpbmNlIGl0CmZpdHMg YmV0dGVyIElNTy4KCj4gKyAgICAgICAgI2FkZHJlc3MtY2VsbHMgPSA8Mj47Cj4gKyAgICAgICAg I3NpemUtY2VsbHMgPSA8Mj47Cj4gKwo+ICsgICAgICAgIHBjaWUzeDRfZXA6IHBjaWUtZXBAZmUx NTAwMDAgewo+ICsgICAgICAgICAgICBjb21wYXRpYmxlID0gInJvY2tjaGlwLHJrMzU4OC1wY2ll LWVwIjsKPiArICAgICAgICAgICAgY2xvY2tzID0gPCZjcnUgQUNMS19QQ0lFXzRMX01TVFI+LCA8 JmNydSBBQ0xLX1BDSUVfNExfU0xWPiwKPiArICAgICAgICAgICAgICAgICAgICAgPCZjcnUgQUNM S19QQ0lFXzRMX0RCST4sIDwmY3J1IFBDTEtfUENJRV80TD4sCj4gKyAgICAgICAgICAgICAgICAg ICAgIDwmY3J1IENMS19QQ0lFX0FVWDA+LCA8JmNydSBDTEtfUENJRTRMX1BJUEU+Owo+ICsgICAg ICAgICAgICBjbG9jay1uYW1lcyA9ICJhY2xrX21zdCIsICJhY2xrX3NsdiIsCj4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgImFjbGtfZGJpIiwgInBjbGsiLAo+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICJhdXgiLCAicGlwZSI7Cj4gKyAgICAgICAgICAgIGludGVycnVwdHMgPSA8R0lD X1NQSSAyNjMgSVJRX1RZUEVfTEVWRUxfSElHSCAwPiwKPiArICAgICAgICAgICAgICAgICAgICAg ICAgIDxHSUNfU1BJIDI2MiBJUlFfVFlQRV9MRVZFTF9ISUdIIDA+LAo+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgPEdJQ19TUEkgMjYxIElSUV9UWVBFX0xFVkVMX0hJR0ggMD4sCj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICA8R0lDX1NQSSAyNjAgSVJRX1RZUEVfTEVWRUxfSElHSCAwPiwK PiArICAgICAgICAgICAgICAgICAgICAgICAgIDxHSUNfU1BJIDI1OSBJUlFfVFlQRV9MRVZFTF9I SUdIIDA+LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgPEdJQ19TUEkgMjcxIElSUV9UWVBF X0xFVkVMX0hJR0ggMD4sCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICA8R0lDX1NQSSAyNzIg SVJRX1RZUEVfTEVWRUxfSElHSCAwPiwKPiArICAgICAgICAgICAgICAgICAgICAgICAgIDxHSUNf U1BJIDI2OSBJUlFfVFlQRV9MRVZFTF9ISUdIIDA+LAo+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgPEdJQ19TUEkgMjcwIElSUV9UWVBFX0xFVkVMX0hJR0ggMD47Cj4gKyAgICAgICAgICAgIGlu dGVycnVwdC1uYW1lcyA9ICJzeXMiLCAicG1jIiwgIm1zZyIsICJsZWdhY3kiLCAiZXJyIiwKPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRtYTAiLCAiZG1hMSIsICJkbWEyIiwgImRt YTMiOwo+ICsgICAgICAgICAgICBtYXgtbGluay1zcGVlZCA9IDwzPjsKPiArICAgICAgICAgICAg bnVtLWxhbmVzID0gPDQ+Owo+ICsgICAgICAgICAgICBwaHlzID0gPCZwY2llMzBwaHk+Owo+ICsg ICAgICAgICAgICBwaHktbmFtZXMgPSAicGNpZS1waHkiOwo+ICsgICAgICAgICAgICBwb3dlci1k b21haW5zID0gPCZwb3dlciBSSzM1ODhfUERfUENJRT47Cj4gKyAgICAgICAgICAgIHJlZyA9IDww eGEgMHg0MDAwMDAwMCAweDAgMHgwMDEwMDAwMD4sCj4gKyAgICAgICAgICAgICAgICAgIDwweGEg MHg0MDEwMDAwMCAweDAgMHgwMDEwMDAwMD4sCj4gKyAgICAgICAgICAgICAgICAgIDwweDAgMHhm ZTE1MDAwMCAweDAgMHgwMDAxMDAwMD4sCj4gKyAgICAgICAgICAgICAgICAgIDwweDkgMHgwMDAw MDAwMCAweDAgMHg0MDAwMDAwMD4sCj4gKyAgICAgICAgICAgICAgICAgIDwweGEgMHg0MDMwMDAw MCAweDAgMHgwMDEwMDAwMD47Cj4gKyAgICAgICAgICAgIHJlZy1uYW1lcyA9ICJkYmkiLCAiZGJp MiIsICJhcGIiLCAiYWRkcl9zcGFjZSIsICJhdHUiOwoKQ2FuIHlvdSBtb3ZlICdyZWcnIGFuZCAn cmVnLW5hbWVzJyBiZWxvdyAnY29tcGF0aWJsZScgdG8gYWxpZ24gd2l0aCBjb21tb24KY29udmVu dGlvbj8KCi0gTWFuaQoKPiArICAgICAgICAgICAgcmVzZXRzID0gPCZjcnUgU1JTVF9QQ0lFMF9Q T1dFUl9VUD4sIDwmY3J1IFNSU1RfUF9QQ0lFMD47Cj4gKyAgICAgICAgICAgIHJlc2V0LW5hbWVz ID0gInB3ciIsICJwaXBlIjsKPiArICAgICAgICB9Owo+ICsgICAgfTsKPiArLi4uCj4gCj4gLS0g Cj4gMi40NS4xCj4gCgotLSAK4K6u4K6j4K6/4K614K6j4K+N4K6j4K6p4K+NIOCumuCupOCuvuCu muCuv+CuteCuruCvjQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KTGludXgtcm9ja2NoaXAgbWFpbGluZyBsaXN0CkxpbnV4LXJvY2tjaGlwQGxpc3RzLmlu ZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9s aW51eC1yb2NrY2hpcAo=