From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-io1-f46.google.com (mail-io1-f46.google.com [209.85.166.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CBC3E46B8F for ; Sun, 17 Dec 2023 17:34:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="GK5Fwv3p" Received: by mail-io1-f46.google.com with SMTP id ca18e2360f4ac-7b7876fe9f0so112599239f.2 for ; Sun, 17 Dec 2023 09:34:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1702834497; x=1703439297; darn=lists.linux.dev; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=CpKSkkBtYtil8YsODktdMUzC93N2+NEa5cKCVj6f1J8=; b=GK5Fwv3pGpFk3xQL2c0/vIOK+ItB2t+7Or5hnZkmbFu75o8TxeMcX1S4T0FPlSQuwG LV51zsJphntiTqhiRhaVnipfKcTHrvLb722fLO9wppzHReR4junnmRjZgWOdFksGHy3x 7/zMWBvk2/Mlpt3Kr4TW/i04C1y2pE4U5p7yVMh2ZXQvGqptA0YgyJeq71agzfEmg6x6 2jelsHk3HVJRmbeqGTDFuruJi6rBc9JkHJOOux6IjBm+yuGzzgTlahWhxsd6HUhQEKhh j6+IQ56GV1zW4YYMrrsGJK8Yp94HACgOvvhbCL5uEhcRDD3TIbFw9HIqVjUT2GMNzDM9 3X6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702834497; x=1703439297; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=CpKSkkBtYtil8YsODktdMUzC93N2+NEa5cKCVj6f1J8=; b=TVKHWtB3X/aN0cc/P/ufkLNeq8ZM+6Ugy26ajKIgJKJ2BBtR0Yk/q2ddQXTHDwg1Kb wX25vYvJbryfZ3v02+vP2+6g4nbgCigJjWpgu+ChFMmPJBT5FHbNf9L/1KLD6qfkAVlE +X8bqitLzcbNF4dqs1BZ1xf45HAk8hIfEFhxu5RG+Wh6Um7aadxuZun5j8eM0SyU5qAo +Eb6Ifb+4hMLQ5u9gW5dUDjiMwha+9dljOvHXpv1FaYyeN2AsgFbkKXzLPAoyhT75pbp QAuTQ/GefwMCl5W11wgOi2wPqCjbfxY69VpuXi5p7UYJ8eR9GTNhU/ee4HysnHwGzNls C+ZA== X-Gm-Message-State: AOJu0YyFQtobIsaoRB1xuabiwxcvsHumBJ7YGfQjIN3l1VL5GwqoWMV/ 7N88HWjVAf6livO7AX2n9IXt X-Google-Smtp-Source: AGHT+IGHWdluX+d13fjmLz/ABghE6j6WwAmobyNjIu6qplVK/PaeUQ8SB784FrCWR5EvBvm3cuqloQ== X-Received: by 2002:a92:c54f:0:b0:35f:9d17:846e with SMTP id a15-20020a92c54f000000b0035f9d17846emr4967548ilj.31.1702834496885; Sun, 17 Dec 2023 09:34:56 -0800 (PST) Received: from thinkpad ([103.28.246.178]) by smtp.gmail.com with ESMTPSA id b21-20020a170902d31500b001d35516262esm1303557plc.158.2023.12.17.09.34.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 17 Dec 2023 09:34:56 -0800 (PST) Date: Sun, 17 Dec 2023 23:04:49 +0530 From: Manivannan Sadhasivam To: Frank Li Cc: krzysztof.kozlowski@linaro.org, bhelgaas@google.com, conor+dt@kernel.org, devicetree@vger.kernel.org, festevam@gmail.com, helgaas@kernel.org, hongxing.zhu@nxp.com, imx@lists.linux.dev, kernel@pengutronix.de, krzysztof.kozlowski+dt@linaro.org, kw@linux.com, l.stach@pengutronix.de, linux-arm-kernel@lists.infradead.org, linux-imx@nxp.com, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, lpieralisi@kernel.org, robh@kernel.org, s.hauer@pengutronix.de, shawnguo@kernel.org Subject: Re: [PATCH v4 03/15] PCI: imx6: Simplify reset handling by using by using *_FLAG_HAS_*_RESET Message-ID: <20231217173449.GE6748@thinkpad> References: <20231217051210.754832-1-Frank.Li@nxp.com> <20231217051210.754832-4-Frank.Li@nxp.com> Precedence: bulk X-Mailing-List: imx@lists.linux.dev 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: <20231217051210.754832-4-Frank.Li@nxp.com> On Sun, Dec 17, 2023 at 12:11:58AM -0500, Frank Li wrote: > Refactors the reset handling logic in the imx6 PCI driver by adding > IMX6_PCIE_FLAG_HAS_*_RESET bitmask define for drvdata::flags. > > The drvdata::flags and a bitmask ensures a cleaner and more scalable > switch-case structure for handling reset. > > Reviewed-by: Philipp Zabel > Signed-off-by: Frank Li One nitpick below. With that fixed, Reviewed-by: Manivannan Sadhasivam > --- > > Notes: > Change from v2 to v3: > - add Philipp's Reviewed-by tag > Change from v1 to v2: > - remove condition check before reset_control_(de)assert() because it is > none ops if a NULL pointer pass down. > - still keep condition check at probe to help identify dts file mismatch > problem. > > Change from v1 to v2: > - remove condition check before reset_control_(de)assert() because it is > none ops if a NULL pointer pass down. > - still keep condition check at probe to help identify dts file mismatch > problem. > > drivers/pci/controller/dwc/pci-imx6.c | 108 ++++++++++---------------- > 1 file changed, 41 insertions(+), 67 deletions(-) > > diff --git a/drivers/pci/controller/dwc/pci-imx6.c b/drivers/pci/controller/dwc/pci-imx6.c > index 91ba26a4b4c3d..c1fb38a2ebeb6 100644 > --- a/drivers/pci/controller/dwc/pci-imx6.c > +++ b/drivers/pci/controller/dwc/pci-imx6.c [...] > @@ -1441,31 +1407,39 @@ static const struct imx6_pcie_drvdata drvdata[] = { > }, > [IMX7D] = { > .variant = IMX7D, > - .flags = IMX6_PCIE_FLAG_SUPPORTS_SUSPEND, > + .flags = IMX6_PCIE_FLAG_SUPPORTS_SUSPEND | > + IMX6_PCIE_FLAG_HAS_APP_RESET | > + IMX6_PCIE_FLAG_HAS_PHY_RESET, > .gpr = "fsl,imx7d-iomuxc-gpr", > .clk_names = {IMX6_CLKS_NO_PHYDRV}, > }, > [IMX8MQ] = { > .variant = IMX8MQ, > + .flags = IMX6_PCIE_FLAG_HAS_APP_RESET | > + IMX6_PCIE_FLAG_HAS_PHY_RESET, > .gpr = "fsl,imx8mq-iomuxc-gpr", > .clk_names = {IMX6_CLKS_NO_PHYDRV, "pcie_aux"}, > }, > [IMX8MM] = { > .variant = IMX8MM, > .flags = IMX6_PCIE_FLAG_SUPPORTS_SUSPEND | > - IMX6_PCIE_FLAG_HAS_PHY, > + IMX6_PCIE_FLAG_HAS_PHY | > + IMX6_PCIE_FLAG_HAS_APP_RESET, > .gpr = "fsl,imx8mm-iomuxc-gpr", > .clk_names = {IMX6_CLKS_COMMON, "pcie_aux"}, > }, > [IMX8MP] = { > .variant = IMX8MP, > .flags = IMX6_PCIE_FLAG_SUPPORTS_SUSPEND | > - IMX6_PCIE_FLAG_HAS_PHY, > + IMX6_PCIE_FLAG_HAS_PHY | > + IMX6_PCIE_FLAG_HAS_APP_RESET, > .gpr = "fsl,imx8mp-iomuxc-gpr", > .clk_names = {IMX6_CLKS_COMMON, "pcie_aux"}, > }, > [IMX8MQ_EP] = { > .variant = IMX8MQ_EP, > + .flags = IMX6_PCIE_FLAG_HAS_PHY | This change is not part of this patch. - Mani -- மணிவண்ணன் சதாசிவம் 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 D4402C3DA6E for ; Sun, 17 Dec 2023 17:35:25 +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=k/piHp/ufZ+3PyV3ZtU49o4PDP0jSoK1ZGLYW04BiR4=; b=W/0vgCjTkUR42Q kbvZJhjymrHvB4LU1GyJJrFVpOL9jtHtvsVeOqwx7izDBTKO/AFBDun31wQEy8uApcESlb7HOro1c 8gRV9h6JpyDzqRSDGRZyfdWul/K1GJi0WhWqRkom4Q6jHSv0nKoYdcs3DEO5XosfxOVlbJMdcxAN0 AQxJ5lL0i9dkGVqBqv8dPNrGaEP4YT6YZsO8KtisBxmsbWe35jWNahit7QMp0vuY/1pwdJeLqwWjx vgrlrMhhUgp64NaCGp6fByPd1jC9NL47Mj0cLtuWZGjDC7zdOZGRziygPHCL1B40E3STGiZRvm7rH 7+nJJkWiWKzVFd+Z1Z5A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1rEv2d-008ETJ-2b; Sun, 17 Dec 2023 17:35:03 +0000 Received: from mail-io1-xd2e.google.com ([2607:f8b0:4864:20::d2e]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1rEv2b-008EQ0-0I for linux-arm-kernel@lists.infradead.org; Sun, 17 Dec 2023 17:35:02 +0000 Received: by mail-io1-xd2e.google.com with SMTP id ca18e2360f4ac-7b435966249so112911139f.0 for ; Sun, 17 Dec 2023 09:34:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1702834497; x=1703439297; darn=lists.infradead.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=CpKSkkBtYtil8YsODktdMUzC93N2+NEa5cKCVj6f1J8=; b=Mxz1wzfP0nqnyhDuJrI8dlXrSUSB3C9vPWEdCxpz2SXZyBA5XPvhGGxzodWMzB+5Ia SCvgadUX51LSw/GCwLv9nG6lhilMjftLoIvlsds9cVaEYyuaTNzi6enhWmzuhAlMyqPJ vUdogj9p6mUnqAK86wl0BtFmxBQ1nAU34OtkNMy3iEwviYS7wJB0CX1EUIA8JluyT+rp bfv9stFI1oX9j0HJrZyjeZZScWJ+vjTDt1CEkvyx0V2F5Xf84GFb9GjlR4XazyFHVyL4 78M46I+HbVku1eIbrr6MPWCboJrnVYQuQAW+NAvgUmuxwZn4Y049vurpeIbcbAS5I4SJ L4+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702834497; x=1703439297; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=CpKSkkBtYtil8YsODktdMUzC93N2+NEa5cKCVj6f1J8=; b=sDeWQw/TBT8cGrWLL9VIen8C1jVFUY4Y6nu5cYu+JHilVRB+REaYeJDiCOFrFUi1Nw 7otPZKr1d0EfOQZFHKDhjLqNTPYSKkg+Cavq2j6oRRgDEuC3W7jOAAyz5M4rtHbkQNQX gxTRxe7AQo387DDm8x9hwOCtwLFTxTSfY/lmFqDLV95LqU00iaESaj4MTnqe503sgXjo JtBZ0GxxGk9B37ButzW5FcbCzqSPRUdstEUim/qFAaA1d9hW1wgbhWLlCkKSWglGuSG9 eaRRcyxczBgButhIZYvhFjVx/OKKios44jaXGgHNH8z3P1wdI0gnAxmFpUnPZBaeQNbn ZMEw== X-Gm-Message-State: AOJu0YyCj8tDUqQcCnW5PIkXFeTqGV3YrXnF6PFuTo4Tw3YfbDGSniW7 ik1Q+r3auqFn8k2euXvNRSPX X-Google-Smtp-Source: AGHT+IGHWdluX+d13fjmLz/ABghE6j6WwAmobyNjIu6qplVK/PaeUQ8SB784FrCWR5EvBvm3cuqloQ== X-Received: by 2002:a92:c54f:0:b0:35f:9d17:846e with SMTP id a15-20020a92c54f000000b0035f9d17846emr4967548ilj.31.1702834496885; Sun, 17 Dec 2023 09:34:56 -0800 (PST) Received: from thinkpad ([103.28.246.178]) by smtp.gmail.com with ESMTPSA id b21-20020a170902d31500b001d35516262esm1303557plc.158.2023.12.17.09.34.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 17 Dec 2023 09:34:56 -0800 (PST) Date: Sun, 17 Dec 2023 23:04:49 +0530 From: Manivannan Sadhasivam To: Frank Li Cc: krzysztof.kozlowski@linaro.org, bhelgaas@google.com, conor+dt@kernel.org, devicetree@vger.kernel.org, festevam@gmail.com, helgaas@kernel.org, hongxing.zhu@nxp.com, imx@lists.linux.dev, kernel@pengutronix.de, krzysztof.kozlowski+dt@linaro.org, kw@linux.com, l.stach@pengutronix.de, linux-arm-kernel@lists.infradead.org, linux-imx@nxp.com, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, lpieralisi@kernel.org, robh@kernel.org, s.hauer@pengutronix.de, shawnguo@kernel.org Subject: Re: [PATCH v4 03/15] PCI: imx6: Simplify reset handling by using by using *_FLAG_HAS_*_RESET Message-ID: <20231217173449.GE6748@thinkpad> References: <20231217051210.754832-1-Frank.Li@nxp.com> <20231217051210.754832-4-Frank.Li@nxp.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20231217051210.754832-4-Frank.Li@nxp.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231217_093501_142790_B22B3EF3 X-CRM114-Status: GOOD ( 17.83 ) 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: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gU3VuLCBEZWMgMTcsIDIwMjMgYXQgMTI6MTE6NThBTSAtMDUwMCwgRnJhbmsgTGkgd3JvdGU6 Cj4gUmVmYWN0b3JzIHRoZSByZXNldCBoYW5kbGluZyBsb2dpYyBpbiB0aGUgaW14NiBQQ0kgZHJp dmVyIGJ5IGFkZGluZwo+IElNWDZfUENJRV9GTEFHX0hBU18qX1JFU0VUIGJpdG1hc2sgZGVmaW5l IGZvciBkcnZkYXRhOjpmbGFncy4KPiAKPiBUaGUgZHJ2ZGF0YTo6ZmxhZ3MgYW5kIGEgYml0bWFz ayBlbnN1cmVzIGEgY2xlYW5lciBhbmQgbW9yZSBzY2FsYWJsZQo+IHN3aXRjaC1jYXNlIHN0cnVj dHVyZSBmb3IgaGFuZGxpbmcgcmVzZXQuCj4gCj4gUmV2aWV3ZWQtYnk6IFBoaWxpcHAgWmFiZWwg PHAuemFiZWxAcGVuZ3V0cm9uaXguZGU+Cj4gU2lnbmVkLW9mZi1ieTogRnJhbmsgTGkgPEZyYW5r LkxpQG54cC5jb20+CgpPbmUgbml0cGljayBiZWxvdy4gV2l0aCB0aGF0IGZpeGVkLAoKUmV2aWV3 ZWQtYnk6IE1hbml2YW5uYW4gU2FkaGFzaXZhbSA8bWFuaXZhbm5hbi5zYWRoYXNpdmFtQGxpbmFy by5vcmc+Cgo+IC0tLQo+IAo+IE5vdGVzOgo+ICAgICBDaGFuZ2UgZnJvbSB2MiB0byB2MzoKPiAg ICAgLSBhZGQgUGhpbGlwcCdzIFJldmlld2VkLWJ5IHRhZwo+ICAgICBDaGFuZ2UgZnJvbSB2MSB0 byB2MjoKPiAgICAgLSByZW1vdmUgY29uZGl0aW9uIGNoZWNrIGJlZm9yZSByZXNldF9jb250cm9s XyhkZSlhc3NlcnQoKSBiZWNhdXNlIGl0IGlzCj4gICAgICAgbm9uZSBvcHMgaWYgYSBOVUxMIHBv aW50ZXIgcGFzcyBkb3duLgo+ICAgICAtIHN0aWxsIGtlZXAgY29uZGl0aW9uIGNoZWNrIGF0IHBy b2JlIHRvIGhlbHAgaWRlbnRpZnkgZHRzIGZpbGUgbWlzbWF0Y2gKPiAgICAgICBwcm9ibGVtLgo+ ICAgICAKPiAgICAgQ2hhbmdlIGZyb20gdjEgdG8gdjI6Cj4gICAgIC0gcmVtb3ZlIGNvbmRpdGlv biBjaGVjayBiZWZvcmUgcmVzZXRfY29udHJvbF8oZGUpYXNzZXJ0KCkgYmVjYXVzZSBpdCBpcwo+ ICAgICAgIG5vbmUgb3BzIGlmIGEgTlVMTCBwb2ludGVyIHBhc3MgZG93bi4KPiAgICAgLSBzdGls bCBrZWVwIGNvbmRpdGlvbiBjaGVjayBhdCBwcm9iZSB0byBoZWxwIGlkZW50aWZ5IGR0cyBmaWxl IG1pc21hdGNoCj4gICAgICAgcHJvYmxlbS4KPiAKPiAgZHJpdmVycy9wY2kvY29udHJvbGxlci9k d2MvcGNpLWlteDYuYyB8IDEwOCArKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQo+ICAxIGZpbGUg Y2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwgNjcgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIvZHdjL3BjaS1pbXg2LmMgYi9kcml2ZXJzL3BjaS9j b250cm9sbGVyL2R3Yy9wY2ktaW14Ni5jCj4gaW5kZXggOTFiYTI2YTRiNGMzZC4uYzFmYjM4YTJl YmViNiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL2R3Yy9wY2ktaW14Ni5j Cj4gKysrIGIvZHJpdmVycy9wY2kvY29udHJvbGxlci9kd2MvcGNpLWlteDYuYwoKWy4uLl0KCj4g QEAgLTE0NDEsMzEgKzE0MDcsMzkgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbXg2X3BjaWVfZHJ2 ZGF0YSBkcnZkYXRhW10gPSB7Cj4gIAl9LAo+ICAJW0lNWDdEXSA9IHsKPiAgCQkudmFyaWFudCA9 IElNWDdELAo+IC0JCS5mbGFncyA9IElNWDZfUENJRV9GTEFHX1NVUFBPUlRTX1NVU1BFTkQsCj4g KwkJLmZsYWdzID0gSU1YNl9QQ0lFX0ZMQUdfU1VQUE9SVFNfU1VTUEVORCB8Cj4gKwkJCSBJTVg2 X1BDSUVfRkxBR19IQVNfQVBQX1JFU0VUIHwKPiArCQkJIElNWDZfUENJRV9GTEFHX0hBU19QSFlf UkVTRVQsCj4gIAkJLmdwciA9ICJmc2wsaW14N2QtaW9tdXhjLWdwciIsCj4gIAkJLmNsa19uYW1l cyA9IHtJTVg2X0NMS1NfTk9fUEhZRFJWfSwKPiAgCX0sCj4gIAlbSU1YOE1RXSA9IHsKPiAgCQku dmFyaWFudCA9IElNWDhNUSwKPiArCQkuZmxhZ3MgPSBJTVg2X1BDSUVfRkxBR19IQVNfQVBQX1JF U0VUIHwKPiArCQkJIElNWDZfUENJRV9GTEFHX0hBU19QSFlfUkVTRVQsCj4gIAkJLmdwciA9ICJm c2wsaW14OG1xLWlvbXV4Yy1ncHIiLAo+ICAJCS5jbGtfbmFtZXMgPSB7SU1YNl9DTEtTX05PX1BI WURSViwgInBjaWVfYXV4In0sCj4gIAl9LAo+ICAJW0lNWDhNTV0gPSB7Cj4gIAkJLnZhcmlhbnQg PSBJTVg4TU0sCj4gIAkJLmZsYWdzID0gSU1YNl9QQ0lFX0ZMQUdfU1VQUE9SVFNfU1VTUEVORCB8 Cj4gLQkJCSBJTVg2X1BDSUVfRkxBR19IQVNfUEhZLAo+ICsJCQkgSU1YNl9QQ0lFX0ZMQUdfSEFT X1BIWSB8Cj4gKwkJCSBJTVg2X1BDSUVfRkxBR19IQVNfQVBQX1JFU0VULAo+ICAJCS5ncHIgPSAi ZnNsLGlteDhtbS1pb211eGMtZ3ByIiwKPiAgCQkuY2xrX25hbWVzID0ge0lNWDZfQ0xLU19DT01N T04sICJwY2llX2F1eCJ9LAo+ICAJfSwKPiAgCVtJTVg4TVBdID0gewo+ICAJCS52YXJpYW50ID0g SU1YOE1QLAo+ICAJCS5mbGFncyA9IElNWDZfUENJRV9GTEFHX1NVUFBPUlRTX1NVU1BFTkQgfAo+ IC0JCQkgSU1YNl9QQ0lFX0ZMQUdfSEFTX1BIWSwKPiArCQkJIElNWDZfUENJRV9GTEFHX0hBU19Q SFkgfAo+ICsJCQkgSU1YNl9QQ0lFX0ZMQUdfSEFTX0FQUF9SRVNFVCwKPiAgCQkuZ3ByID0gImZz bCxpbXg4bXAtaW9tdXhjLWdwciIsCj4gIAkJLmNsa19uYW1lcyA9IHtJTVg2X0NMS1NfQ09NTU9O LCAicGNpZV9hdXgifSwKPiAgCX0sCj4gIAlbSU1YOE1RX0VQXSA9IHsKPiAgCQkudmFyaWFudCA9 IElNWDhNUV9FUCwKPiArCQkuZmxhZ3MgPSBJTVg2X1BDSUVfRkxBR19IQVNfUEhZIHwKClRoaXMg Y2hhbmdlIGlzIG5vdCBwYXJ0IG9mIHRoaXMgcGF0Y2guCgotIE1hbmkKCi0tIArgrq7grqPgrr/g rrXgrqPgr43grqPgrqngr40g4K6a4K6k4K6+4K6a4K6/4K614K6u4K+NCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxp bmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3Rz LmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==