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 X-Spam-Level: X-Spam-Status: No, score=-13.6 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED, USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id CE6ABC10F0E for ; Fri, 12 Apr 2019 18:02:57 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 95D0F2171F for ; Fri, 12 Apr 2019 18:02:57 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="eyhVxxo1" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726933AbfDLSC5 (ORCPT ); Fri, 12 Apr 2019 14:02:57 -0400 Received: from mail-pg1-f194.google.com ([209.85.215.194]:39018 "EHLO mail-pg1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726812AbfDLSC5 (ORCPT ); Fri, 12 Apr 2019 14:02:57 -0400 Received: by mail-pg1-f194.google.com with SMTP id k3so5554018pga.6 for ; Fri, 12 Apr 2019 11:02:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=S+H4OZ/XxRElDLqv3IW/VMLs9qpYjEmorStnxnx/F4Y=; b=eyhVxxo1dKssj7vGt0KmlMi87MjvK2GDOC5vfU5whsJKeom/a2LaJNYwnkYhyHop21 YbxAidjVfLdicVm0lsHOarTJNePejS2UY3+eM5ROyxDylX4I40KuNGt6dBzrpEuS/bAo CeU5HUMFBHAA5NPMI8lfMPde13IPcvY2EgvtY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to:user-agent; bh=S+H4OZ/XxRElDLqv3IW/VMLs9qpYjEmorStnxnx/F4Y=; b=S39FBQ2IaTILgxYXxmQUA2VTutQNv4zo9RRgA3cPNxUFJRY61VURdxCb3e3+4kJq4P BBmadDjBApyOrMOt8q/UdRe8ThtHlRdUeGEBsbx1smEwovhmtLUOSSDhLpZsQwUydPJ3 jCS5mlL40amEF7KeOGKX2gg6lhFf5SvJA0yYN5Lrd/9jHJmKupJEIm7iR8Fp5LRWFtTI ZdKAn1awQzLbgHAG0pEA3lVcq5uDGJHBapsUSESYpxUgA9IKQBwYx+CNGOBJRvigwafA n1KULG73UIe4hLudguSHf6dvMWJQTfvDcP12HTc86RMk/8YUiqpQdS8y8VPw+ur/tv2b nODA== X-Gm-Message-State: APjAAAUUu+Hhxlzb6Wien0T37ueRrCAvWumqsfoSiznEoi4HCQaRh8np MY0kLQ7xEpcZ2AXArsI+XenSADbvWCqn1g== X-Google-Smtp-Source: APXvYqy6XIB4V6b5SYJngjhgqRFGiAB+cNvpjz2//g7Hrl4xUmISqdzEjHjWAqq/zAPIf2dpm9Rwbg== X-Received: by 2002:a63:c84c:: with SMTP id l12mr54921891pgi.287.1555092176367; Fri, 12 Apr 2019 11:02:56 -0700 (PDT) Received: from localhost ([2620:15c:202:1:75a:3f6e:21d:9374]) by smtp.gmail.com with ESMTPSA id v1sm68363079pff.81.2019.04.12.11.02.55 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 12 Apr 2019 11:02:55 -0700 (PDT) Date: Fri, 12 Apr 2019 11:02:55 -0700 From: Matthias Kaehlcke To: Heiko =?utf-8?Q?St=C3=BCbner?= Cc: Michael Turquette , Stephen Boyd , linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Douglas Anderson Subject: Re: [PATCH] clk: rockchip: rk3288: Limit use of USB PHY clock to USB Message-ID: <20190412180255.GW112750@google.com> References: <20190411175917.173566-1-mka@chromium.org> <3787637.WUkDPpUsF8@diego> <20190412001657.GV112750@google.com> <2029012.W0xZ3ly3fY@diego> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <2029012.W0xZ3ly3fY@diego> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-clk-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-clk@vger.kernel.org On Fri, Apr 12, 2019 at 11:30:37AM +0200, Heiko Stübner wrote: > Am Freitag, 12. April 2019, 02:16:57 CEST schrieb Matthias Kaehlcke: > > Hi Heiko, > > > > On Thu, Apr 11, 2019 at 09:03:07PM +0200, Heiko Stübner wrote: > > > Hi Matthias, > > > > > > Am Donnerstag, 11. April 2019, 19:59:17 CEST schrieb Matthias Kaehlcke: > > > > The USB PHY clock can be configured as (grand) parent of uart0_sclk and > > > > sclk_gpu. It has been observed that UART0 doesn't work reliably in high > > > > speed mode with the PHY clock as input when certain USB devices are > > > > plugged to the USB HOST1 port (see https://crrev.com/c/320543). > > > > > > > > Prefix the name of the PHY clock with a '.' in the non-USB muxes to > > > > effectively remove the clock as input from these muxes. > > > > > > > > Signed-off-by: Matthias Kaehlcke > > > > --- > > > > drivers/clk/rockchip/clk-rk3288.c | 4 ++-- > > > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > > > > > diff --git a/drivers/clk/rockchip/clk-rk3288.c b/drivers/clk/rockchip/clk-rk3288.c > > > > index 5a67b7869960..677bc5485201 100644 > > > > --- a/drivers/clk/rockchip/clk-rk3288.c > > > > +++ b/drivers/clk/rockchip/clk-rk3288.c > > > > @@ -200,8 +200,8 @@ PNAME(mux_aclk_cpu_src_p) = { "cpll_aclk_cpu", "gpll_aclk_cpu" }; > > > > PNAME(mux_pll_src_cpll_gpll_p) = { "cpll", "gpll" }; > > > > PNAME(mux_pll_src_npll_cpll_gpll_p) = { "npll", "cpll", "gpll" }; > > > > PNAME(mux_pll_src_cpll_gpll_npll_p) = { "cpll", "gpll", "npll" }; > > > > -PNAME(mux_pll_src_cpll_gpll_usb480m_p) = { "cpll", "gpll", "usbphy480m_src" }; > > > > -PNAME(mux_pll_src_cpll_gll_usb_npll_p) = { "cpll", "gpll", "usbphy480m_src", "npll" }; > > > > +PNAME(mux_pll_src_cpll_gpll_usb480m_p) = { "cpll", "gpll", ".usbphy480m_src" }; > > > > +PNAME(mux_pll_src_cpll_gll_usb_npll_p) = { "cpll", "gpll", ".usbphy480m_src", "npll" }; > > > > > > In general I like to have things like the clock-tree described fully > > > and let the kernel handle correct sourcing ... but: > > > > > > As you write this seems like a systemic problem when just connecting > > > random peripherals can create unstable clock source frequencies, > > > so I tend to agree here ... but: > > > > > > Can we please find a more "talking" name for this ... because as with the > > > above someone will find the "." and submit a fix for it ;-) . > > > > > > So just name it "unstable_dummy" or so? > > > > I looked for some common pattern, but couldn't find one. I liked the > > '.' since it leaves the name of the clock mostly intact, just hiding > > it (similar to a leading '.' in a Linux file system). But I agree that > > it might not be expressive enough. I still like the idea to keep the > > clock name around for reference, maybe we could name it > > "unstable:usbphy480m_src" or similar. If you don't object I'll send a > > patch with this some time tomorrow. > > I've just adapted the patch to use the new parent-name you suggested > and applied it for 5.2 So no need to resend :-) . Pefect, thanks! I don't see the patch in the git.kernel.org repo (nor https://lore.kernel.org/patchwork/patch/1060781/), looks like the push is still pending. Cheers Matthias 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 X-Spam-Level: X-Spam-Status: No, score=-13.5 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED,USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 29340C282CE for ; Fri, 12 Apr 2019 18:03:03 +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 F0B752171F for ; Fri, 12 Apr 2019 18:03:02 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="fNWXa30Q"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="eyhVxxo1" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F0B752171F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=chromium.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject: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=NLCvu61ZTOQGWGhTw6w666eF332YfzKJadL4TAElMS0=; b=fNWXa30QI1WM6i rIa1HobvLPpn2wNznsGeAXYF7T1Gueh3/VlD1cKrHI6i4ejR6ugzpz0KHFQwfSDE3cEUgR1fgjZyq YLCn/PUs3TO8MeCEYofyW7UNB8UM2xTr39Kyg5RDUgDAr0zzcVbHgte8ObHIuQJNTjzrSyYSaWlgq bm8kKNJjMaknT1w1QymB7+YSlN14emfjpOQhBtiIUGFoNVcmkYDD7TMI/RYlTuoOs9koORMqs2d/N ueHIOWcVJjuk0TZAOXGArQyb5+YgAGxI5+APPJE2KEX0GPoZJd9NfKgNwJI9uJ23N/4XgXyUAsJNj Ov/GUFyV/fIWdl7LcPFw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1hF0Vx-0006GM-2e; Fri, 12 Apr 2019 18:03:01 +0000 Received: from mail-pf1-x442.google.com ([2607:f8b0:4864:20::442]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1hF0Vt-0006FH-BH for linux-arm-kernel@lists.infradead.org; Fri, 12 Apr 2019 18:02:59 +0000 Received: by mail-pf1-x442.google.com with SMTP id y13so5493167pfm.11 for ; Fri, 12 Apr 2019 11:02:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=S+H4OZ/XxRElDLqv3IW/VMLs9qpYjEmorStnxnx/F4Y=; b=eyhVxxo1dKssj7vGt0KmlMi87MjvK2GDOC5vfU5whsJKeom/a2LaJNYwnkYhyHop21 YbxAidjVfLdicVm0lsHOarTJNePejS2UY3+eM5ROyxDylX4I40KuNGt6dBzrpEuS/bAo CeU5HUMFBHAA5NPMI8lfMPde13IPcvY2EgvtY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to:user-agent; bh=S+H4OZ/XxRElDLqv3IW/VMLs9qpYjEmorStnxnx/F4Y=; b=o4G48WytIhqHpsvaCDmk2giywzU6hYYcedxECLMZUDLv28+0PMvCbwCmaQ4yhJ9PPQ 6Kus+cZiycGwB1HhMOE9BuZefWAqm8DQ2dgpNxRsS+yLtJ42XnjX60vFE02ooi2R/hx+ iypIp8A83PVztG7RaIy0DRrIM46e90EadO2r+Wzi7e3qLHnJ+uFHOOCdTOvq77fBtOyr H+tghia0DAlVrhv6+lMY/HSTmfaodL/0MUh6Bz4BYkGU9883GLpKiky6MJBf2ssNHzRT 0uqcr3tf6v8aoWX+JdWbApOpccEqtbXtNYmDCCKoI3wLF7fU54jktrBVjKpaNKOYkeGP HLzw== X-Gm-Message-State: APjAAAWwjkmNHVctV4IgsNro7WokWAR6zPb9jXW/cgR75NppvUENlB5H 5znT3fXVbVQqOi6bdcO0g4UC3Q== X-Google-Smtp-Source: APXvYqy6XIB4V6b5SYJngjhgqRFGiAB+cNvpjz2//g7Hrl4xUmISqdzEjHjWAqq/zAPIf2dpm9Rwbg== X-Received: by 2002:a63:c84c:: with SMTP id l12mr54921891pgi.287.1555092176367; Fri, 12 Apr 2019 11:02:56 -0700 (PDT) Received: from localhost ([2620:15c:202:1:75a:3f6e:21d:9374]) by smtp.gmail.com with ESMTPSA id v1sm68363079pff.81.2019.04.12.11.02.55 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 12 Apr 2019 11:02:55 -0700 (PDT) Date: Fri, 12 Apr 2019 11:02:55 -0700 From: Matthias Kaehlcke To: Heiko =?utf-8?Q?St=C3=BCbner?= Subject: Re: [PATCH] clk: rockchip: rk3288: Limit use of USB PHY clock to USB Message-ID: <20190412180255.GW112750@google.com> References: <20190411175917.173566-1-mka@chromium.org> <3787637.WUkDPpUsF8@diego> <20190412001657.GV112750@google.com> <2029012.W0xZ3ly3fY@diego> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <2029012.W0xZ3ly3fY@diego> User-Agent: Mutt/1.10.1 (2018-07-13) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190412_110257_415209_2F655E4D X-CRM114-Status: GOOD ( 30.61 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Stephen Boyd , Michael Turquette , linux-kernel@vger.kernel.org, Douglas Anderson , linux-rockchip@lists.infradead.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gRnJpLCBBcHIgMTIsIDIwMTkgYXQgMTE6MzA6MzdBTSArMDIwMCwgSGVpa28gU3TDvGJuZXIg d3JvdGU6Cj4gQW0gRnJlaXRhZywgMTIuIEFwcmlsIDIwMTksIDAyOjE2OjU3IENFU1Qgc2Nocmll YiBNYXR0aGlhcyBLYWVobGNrZToKPiA+IEhpIEhlaWtvLAo+ID4gCj4gPiBPbiBUaHUsIEFwciAx MSwgMjAxOSBhdCAwOTowMzowN1BNICswMjAwLCBIZWlrbyBTdMO8Ym5lciB3cm90ZToKPiA+ID4g SGkgTWF0dGhpYXMsCj4gPiA+IAo+ID4gPiBBbSBEb25uZXJzdGFnLCAxMS4gQXByaWwgMjAxOSwg MTk6NTk6MTcgQ0VTVCBzY2hyaWViIE1hdHRoaWFzIEthZWhsY2tlOgo+ID4gPiA+IFRoZSBVU0Ig UEhZIGNsb2NrIGNhbiBiZSBjb25maWd1cmVkIGFzIChncmFuZCkgcGFyZW50IG9mIHVhcnQwX3Nj bGsgYW5kCj4gPiA+ID4gc2Nsa19ncHUuIEl0IGhhcyBiZWVuIG9ic2VydmVkIHRoYXQgVUFSVDAg ZG9lc24ndCB3b3JrIHJlbGlhYmx5IGluIGhpZ2gKPiA+ID4gPiBzcGVlZCBtb2RlIHdpdGggdGhl IFBIWSBjbG9jayBhcyBpbnB1dCB3aGVuIGNlcnRhaW4gVVNCIGRldmljZXMgYXJlCj4gPiA+ID4g cGx1Z2dlZCB0byB0aGUgVVNCIEhPU1QxIHBvcnQgKHNlZSBodHRwczovL2NycmV2LmNvbS9jLzMy MDU0MykuCj4gPiA+ID4gCj4gPiA+ID4gUHJlZml4IHRoZSBuYW1lIG9mIHRoZSBQSFkgY2xvY2sg d2l0aCBhICcuJyBpbiB0aGUgbm9uLVVTQiBtdXhlcyB0bwo+ID4gPiA+IGVmZmVjdGl2ZWx5IHJl bW92ZSB0aGUgY2xvY2sgYXMgaW5wdXQgZnJvbSB0aGVzZSBtdXhlcy4KPiA+ID4gPiAKPiA+ID4g PiBTaWduZWQtb2ZmLWJ5OiBNYXR0aGlhcyBLYWVobGNrZSA8bWthQGNocm9taXVtLm9yZz4KPiA+ ID4gPiAtLS0KPiA+ID4gPiAgZHJpdmVycy9jbGsvcm9ja2NoaXAvY2xrLXJrMzI4OC5jIHwgNCAr Ky0tCj4gPiA+ID4gIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCj4gPiA+ID4gCj4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvY2xrL3JvY2tjaGlwL2Ns ay1yazMyODguYyBiL2RyaXZlcnMvY2xrL3JvY2tjaGlwL2Nsay1yazMyODguYwo+ID4gPiA+IGlu ZGV4IDVhNjdiNzg2OTk2MC4uNjc3YmM1NDg1MjAxIDEwMDY0NAo+ID4gPiA+IC0tLSBhL2RyaXZl cnMvY2xrL3JvY2tjaGlwL2Nsay1yazMyODguYwo+ID4gPiA+ICsrKyBiL2RyaXZlcnMvY2xrL3Jv Y2tjaGlwL2Nsay1yazMyODguYwo+ID4gPiA+IEBAIC0yMDAsOCArMjAwLDggQEAgUE5BTUUobXV4 X2FjbGtfY3B1X3NyY19wKQk9IHsgImNwbGxfYWNsa19jcHUiLCAiZ3BsbF9hY2xrX2NwdSIgfTsK PiA+ID4gPiAgUE5BTUUobXV4X3BsbF9zcmNfY3BsbF9ncGxsX3ApCQk9IHsgImNwbGwiLCAiZ3Bs bCIgfTsKPiA+ID4gPiAgUE5BTUUobXV4X3BsbF9zcmNfbnBsbF9jcGxsX2dwbGxfcCkJPSB7ICJu cGxsIiwgImNwbGwiLCAiZ3BsbCIgfTsKPiA+ID4gPiAgUE5BTUUobXV4X3BsbF9zcmNfY3BsbF9n cGxsX25wbGxfcCkJPSB7ICJjcGxsIiwgImdwbGwiLCAibnBsbCIgfTsKPiA+ID4gPiAtUE5BTUUo bXV4X3BsbF9zcmNfY3BsbF9ncGxsX3VzYjQ4MG1fcCkJPSB7ICJjcGxsIiwgImdwbGwiLCAidXNi cGh5NDgwbV9zcmMiIH07Cj4gPiA+ID4gLVBOQU1FKG11eF9wbGxfc3JjX2NwbGxfZ2xsX3VzYl9u cGxsX3ApCT0geyAiY3BsbCIsICJncGxsIiwgInVzYnBoeTQ4MG1fc3JjIiwgIm5wbGwiIH07Cj4g PiA+ID4gK1BOQU1FKG11eF9wbGxfc3JjX2NwbGxfZ3BsbF91c2I0ODBtX3ApCT0geyAiY3BsbCIs ICJncGxsIiwgIi51c2JwaHk0ODBtX3NyYyIgfTsKPiA+ID4gPiArUE5BTUUobXV4X3BsbF9zcmNf Y3BsbF9nbGxfdXNiX25wbGxfcCkJPSB7ICJjcGxsIiwgImdwbGwiLCAiLnVzYnBoeTQ4MG1fc3Jj IiwgIm5wbGwiIH07Cj4gPiA+IAo+ID4gPiBJbiBnZW5lcmFsIEkgbGlrZSB0byBoYXZlIHRoaW5n cyBsaWtlIHRoZSBjbG9jay10cmVlIGRlc2NyaWJlZCBmdWxseQo+ID4gPiBhbmQgbGV0IHRoZSBr ZXJuZWwgaGFuZGxlIGNvcnJlY3Qgc291cmNpbmcgLi4uIGJ1dDoKPiA+ID4gCj4gPiA+IEFzIHlv dSB3cml0ZSB0aGlzIHNlZW1zIGxpa2UgYSBzeXN0ZW1pYyBwcm9ibGVtIHdoZW4ganVzdCBjb25u ZWN0aW5nCj4gPiA+IHJhbmRvbSBwZXJpcGhlcmFscyBjYW4gY3JlYXRlIHVuc3RhYmxlIGNsb2Nr IHNvdXJjZSBmcmVxdWVuY2llcywKPiA+ID4gc28gSSB0ZW5kIHRvIGFncmVlIGhlcmUgLi4uIGJ1 dDoKPiA+ID4gCj4gPiA+IENhbiB3ZSBwbGVhc2UgZmluZCBhIG1vcmUgInRhbGtpbmciIG5hbWUg Zm9yIHRoaXMgLi4uIGJlY2F1c2UgYXMgd2l0aCB0aGUKPiA+ID4gYWJvdmUgc29tZW9uZSB3aWxs IGZpbmQgdGhlICIuIiBhbmQgc3VibWl0IGEgZml4IGZvciBpdCA7LSkgLgo+ID4gPiAKPiA+ID4g U28ganVzdCBuYW1lIGl0ICJ1bnN0YWJsZV9kdW1teSIgb3Igc28/Cj4gPiAKPiA+IEkgbG9va2Vk IGZvciBzb21lIGNvbW1vbiBwYXR0ZXJuLCBidXQgY291bGRuJ3QgZmluZCBvbmUuIEkgbGlrZWQg dGhlCj4gPiAnLicgc2luY2UgaXQgbGVhdmVzIHRoZSBuYW1lIG9mIHRoZSBjbG9jayBtb3N0bHkg aW50YWN0LCBqdXN0IGhpZGluZwo+ID4gaXQgKHNpbWlsYXIgdG8gYSBsZWFkaW5nICcuJyBpbiBh IExpbnV4IGZpbGUgc3lzdGVtKS4gQnV0IEkgYWdyZWUgdGhhdAo+ID4gaXQgbWlnaHQgbm90IGJl IGV4cHJlc3NpdmUgZW5vdWdoLiBJIHN0aWxsIGxpa2UgdGhlIGlkZWEgdG8ga2VlcCB0aGUKPiA+ IGNsb2NrIG5hbWUgYXJvdW5kIGZvciByZWZlcmVuY2UsIG1heWJlIHdlIGNvdWxkIG5hbWUgaXQK PiA+ICJ1bnN0YWJsZTp1c2JwaHk0ODBtX3NyYyIgb3Igc2ltaWxhci4gSWYgeW91IGRvbid0IG9i amVjdCBJJ2xsIHNlbmQgYQo+ID4gcGF0Y2ggd2l0aCB0aGlzIHNvbWUgdGltZSB0b21vcnJvdy4K PiAKPiBJJ3ZlIGp1c3QgYWRhcHRlZCB0aGUgcGF0Y2ggdG8gdXNlIHRoZSBuZXcgcGFyZW50LW5h bWUgeW91IHN1Z2dlc3RlZAo+IGFuZCBhcHBsaWVkIGl0IGZvciA1LjIgU28gbm8gbmVlZCB0byBy ZXNlbmQgOi0pIC4KClBlZmVjdCwgdGhhbmtzIQoKSSBkb24ndCBzZWUgdGhlIHBhdGNoIGluIHRo ZSBnaXQua2VybmVsLm9yZyByZXBvIChub3IKaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvcGF0Y2h3 b3JrL3BhdGNoLzEwNjA3ODEvKSwgbG9va3MgbGlrZSB0aGUgcHVzaAppcyBzdGlsbCBwZW5kaW5n LgoKQ2hlZXJzCgpNYXR0aGlhcwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5l bEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4v bGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=