From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ed1-f44.google.com (mail-ed1-f44.google.com [209.85.208.44]) (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 7922F29CA for ; Wed, 8 Dec 2021 15:13:58 +0000 (UTC) Received: by mail-ed1-f44.google.com with SMTP id x15so9586465edv.1 for ; Wed, 08 Dec 2021 07:13:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=VdUdxIiaU5pFF+V8DTX3AHEAt5/Eve6LradMf5zXN3A=; b=d0DFQxVhQJSsNcwUBQkigMPaxadTwrFHzuGfAQb+ee+piHGEaANf5Z8P2KiO8ik+Kg unYXfBOPH4bNGrv9FtChzyEycOQEH9jNIoP4W1aqvEPzEmMC7riKxpp/5uswhlWVRtAa RNppAOavenQzJiMdh0LHaUdHLS0hQethRictq9Eeza/eNHNutocJ79BzUh3+JUQzgJdI O+nwF2EyE+3BP3JR4MpcQU2kPZgBCK3Bvfp2/bmOufePEV3iBlY+SAtwjOzzhop6Y3lx CuulofXSV7VICoQtPy0Yag/CnBJ4bDIjj4Dmn2Tgr8pYZJdlWZI/59EQj/gY7t9qGo44 A29A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=VdUdxIiaU5pFF+V8DTX3AHEAt5/Eve6LradMf5zXN3A=; b=lAjKdOa2l5dNLouean944HNjHNhhHbM4mdXNMlx1ziZ3Ig/DWNdtaAnNaXhvqqKECy ifplL9fABT8ga5Nq+QvnwYDaHOzc2wvfSygZcNbjvY+cgI7re5T6gbxx8iAxTjVB5ggN +gXvL72+nLeK60S87qYry9LMVOWZzxkR4/tfZU24tV4FNLz3Y5IdVlJds9cwQzwVArpF jqxl7J+OhQRxu78L15SMpECOS4GtGlYvfTzUc2SpDuFLv+1v/eXbjOSvNZbmAJovQM+w +SsD8zAYoJPf0ztyApiKmmkplHwoGanrShxVqJfAld/traiX8S5bhP1RZ31x95OL11aY emZA== X-Gm-Message-State: AOAM531rs0/8zlZgAchnkgNwTC5nw02JQtdTjkIBACILmfmMp56G6nXB RNvXT00ZDggFPLwXRWtaAM1SdkafL0WFRvm4SYg= X-Google-Smtp-Source: ABdhPJzPHBFy+YHW8yC/1wHg8+o4FteQqgjl4FzR3P6qHxX2U0B74TAMmXXGyddSKBaRqSt5gXqrFBWeDu0p3AmM+Gg= X-Received: by 2002:aa7:d288:: with SMTP id w8mr20577138edq.404.1638976435569; Wed, 08 Dec 2021 07:13:55 -0800 (PST) Precedence: bulk X-Mailing-List: linux-staging@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 References: <20211207015446.1250854-1-aford173@gmail.com> <5a8b84e91bd8e7670a0d0108e4affe9b964202cb.camel@pengutronix.de> <4cc3404b-7f8a-6c87-8c1c-ace399f9edd3@collabora.com> In-Reply-To: <4cc3404b-7f8a-6c87-8c1c-ace399f9edd3@collabora.com> From: Adam Ford Date: Wed, 8 Dec 2021 09:13:44 -0600 Message-ID: Subject: Re: [RFC V2 0/6] media: Hantro: Split iMX8MQ VPU into G1 and G2 with blk-ctrl support To: Benjamin Gaignard Cc: Lucas Stach , linux-media , Chris Healy , Hans Verkuil , Ezequiel Garcia , Philipp Zabel , Mauro Carvalho Chehab , Rob Herring , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Greg Kroah-Hartman , "open list:HANTRO VPU CODEC DRIVER" , devicetree , arm-soc , Linux Kernel Mailing List , "open list:STAGING SUBSYSTEM" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Dec 8, 2021 at 7:36 AM Benjamin Gaignard wrote: > > > Le 08/12/2021 =C3=A0 11:32, Lucas Stach a =C3=A9crit : > > Am Mittwoch, dem 08.12.2021 um 10:32 +0100 schrieb Benjamin Gaignard: > >> Le 07/12/2021 =C3=A0 02:54, Adam Ford a =C3=A9crit : > >> > >>> Currently, the VPU in the i.MQ8MQ is appearing as one codec, but in > >>> reality, it's two IP blocks called G1 and G2. There is initializatio= n > >>> code in VPU code to pull some clocks, resets and other features which > >>> has been integrated into the vpu-blk-ctrl for the i.MX8M Mini and a > >>> similar method can be used to make the VPU codec's operate as > >>> stand-alone cores without having to know the details of each other > >>> or the quirks unique to the i.MX8MQ, so the remaining code can be > >>> left more generic. > >>> > >>> This series was started by Lucas Stach with one by Benjamin Gaignard. > >>> Most patches have been modified slightly by me. It's in an RFC state > >>> because I wasn't sure how to best handle the signatures and wasn't su= re > >>> if I could base it off the branch I did. > >>> > >>> Since the g-streamer and media trees are in a constant state of > >>> change, this series is based on > >>> > >>> git://linuxtv.org/hverkuil/media_tree.git for-v5.17e > >>> > >>> The downstream code from NXP shows the G1 and G2 clocks running > >>> at 600MHz, but between the TRM and the datasheet, there is some > >>> discrepancy. Because the NXP reference code used 600MHz, that is > >>> what was chosen here. Users who need to adjust their G1 and G2 > >>> clocks can do so in their board files. > >> Hi Adam, > >> > >> Thanks for your patches, I have been able to reproduce VP9 results on = my side (Fluster 147/303). > >> In past I have notice spurious errors when using 600MHz clock on HEVC = decode but not with 300MHz. > > The results for Fluster HEVC are 77/147 so no regressions :-) > > Regards, > Benjamin > > >> The max supported G2 clock frequency is 660MHz but needs a higher > >> voltage. The maximum supported frequency at the default 0.9V is > >> 550MHz. We should not configure the clocks for the higher than that, a= s > >> long as there is no support in the VPU driver to scale the voltage > >> along with the frequency. Same as with the GPU we should stick to base > >> frequency levels for the nominal operating mode. Lucas, After reviewing the comments from Benjamin, I re-ran the VP9 tests with the G2 running at 300MHz,and the number of passing VP9 tests increased to 148 from 144 with an increase of time to 250.502 secs from 162.665 secs. While the datasheet reads that the G2 can run faster, the i.MX 8M Dual/8M QuadLite/8M Quad Applications Processors Reference Manual, Rev. 3.1, 06/2021, table 5-1 shows the VPU_G2_CLK_ROOT has a max clock of 300MHz. I might be inclined to agree with Benjamin on the 300MHz and let people who want to push their hardware overwrite the default clocks since it increases functionality. I wonder if someone from NXP can comment adam > >> > >> Regards, > >> Lucas > >> > >> Regards, > >> Benjamin > >> > >>> Fluster Results: > >>> > >>> ./fluster.py run -dGStreamer-H.264-V4L2SL-Gst1.0 > >>> Ran 90/135 tests successfully in 61.966 secs > >>> > >>> ./fluster.py run -d GStreamer-VP8-V4L2SL-Gst1.0 > >>> Ran 55/61 tests successfully in 7.660 secs > >>> > >>> > >>> ./fluster.py run -d GStreamer-VP9-V4L2SL-Gst1.0 > >>> Ran 144/303 tests successfully in 162.665 secs > >>> > >>> Changes log: > >>> > >>> V2: Make vpu-blk-ctrl enable G2 clock when enabling fuses. > >>> Remove syscon from device tree and binding example > >>> Added modified nxp,imx8mq-vpu.yaml from Benjamin Gaignard > >>> > >>> Adam Ford (2): > >>> media: hantro: split i.MX8MQ G1 and G2 code > >>> arm64: dts: imx8mq: Split i.MX8MQ G1 and G2 with vpu-blk-ctrl > >>> > >>> Benjamin Gaignard (1): > >>> dt-bindings: media: nxp,imx8mq-vpu: Update the bindings for G2 su= pport > >>> > >>> Lucas Stach (3): > >>> dt-bindings: power: imx8mq: add defines for VPU blk-ctrl domains > >>> dt-bindings: soc: add binding for i.MX8MQ VPU blk-ctrl > >>> soc: imx: imx8m-blk-ctrl: add i.MX8MQ VPU blk-ctrl > >>> > >>> .../bindings/media/nxp,imx8mq-vpu.yaml | 58 +++++---- > >>> .../soc/imx/fsl,imx8mq-vpu-blk-ctrl.yaml | 71 +++++++++++ > >>> arch/arm64/boot/dts/freescale/imx8mq.dtsi | 69 ++++++---- > >>> drivers/soc/imx/imx8m-blk-ctrl.c | 68 +++++++++- > >>> drivers/staging/media/hantro/hantro_drv.c | 4 +- > >>> drivers/staging/media/hantro/hantro_hw.h | 2 +- > >>> drivers/staging/media/hantro/imx8m_vpu_hw.c | 119 +++-----------= ---- > >>> include/dt-bindings/power/imx8mq-power.h | 3 + > >>> 8 files changed, 237 insertions(+), 157 deletions(-) > >>> create mode 100644 Documentation/devicetree/bindings/soc/imx/fsl,i= mx8mq-vpu-blk-ctrl.yaml > >>> > >>> > >>> base-commit: d1888b0bfd2ddef2e8a81505ffa200b92cc32e0c > > 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 161B2C433EF for ; Wed, 8 Dec 2021 15:26: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:Cc:To:Subject:Message-ID:Date:From: In-Reply-To:References:MIME-Version:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=uu2dJrBShq5NZrBmgTIG1CS++evaReaDGmm0VrBbacI=; b=Htakc/33gZ9ZUS J/T6cWUQ9hpVF3jaACCItI63PVmh1krVeTAB+TaKktTulI+pIP6ED89bQVhz42GtcSqoJWUOInoqr /VXQhVkiiFbXNF9dz8x6/M1aMVfQ1eUdPojGJf/aJ/v2qvbQwpUlIm3WsNg0Hn8/VkTLMCkFRn382 GosB5TLE5j+ie1mz8zYNvq6Drr61WjsGZ+smigZjtZzy2+omJmi4Y3iB1eTDtsQp54RnWMamWBYbl L1Cr2R0Bj5WgpxdwgBxXbRNgclXLXGYbhW1UL/w1tQ2CxT+nxgaCaMsr6akHurcct3KAKsJZL36tz KxqK/ZH73C+CQQLoiuDg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1muypP-00DE9U-S2; Wed, 08 Dec 2021 15:25:56 +0000 Received: from mail-ed1-x530.google.com ([2a00:1450:4864:20::530]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1muye0-00D7zB-J9; Wed, 08 Dec 2021 15:14:10 +0000 Received: by mail-ed1-x530.google.com with SMTP id r11so9292405edd.9; Wed, 08 Dec 2021 07:14:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=VdUdxIiaU5pFF+V8DTX3AHEAt5/Eve6LradMf5zXN3A=; b=d0DFQxVhQJSsNcwUBQkigMPaxadTwrFHzuGfAQb+ee+piHGEaANf5Z8P2KiO8ik+Kg unYXfBOPH4bNGrv9FtChzyEycOQEH9jNIoP4W1aqvEPzEmMC7riKxpp/5uswhlWVRtAa RNppAOavenQzJiMdh0LHaUdHLS0hQethRictq9Eeza/eNHNutocJ79BzUh3+JUQzgJdI O+nwF2EyE+3BP3JR4MpcQU2kPZgBCK3Bvfp2/bmOufePEV3iBlY+SAtwjOzzhop6Y3lx CuulofXSV7VICoQtPy0Yag/CnBJ4bDIjj4Dmn2Tgr8pYZJdlWZI/59EQj/gY7t9qGo44 A29A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=VdUdxIiaU5pFF+V8DTX3AHEAt5/Eve6LradMf5zXN3A=; b=S3T0NJ7mVEjweemWmTUvch5GOmX937mq4sFhH+TXC0UXLZQKF3FuzPZFMihDPBGBo7 2YxMQluuIIl0FMHqrtHanjt/KyOAaKeFBKXi6zO5mPMX+vQ1mGEF3UXcy5oRsSk4fZCO Cx5dFhPQZd0IsI9AQH1C73B7n25dakPqGPFJmaFWNKB5Kawv1hAFsTbOUrOMVQMHRdyT XNj3O3Ej4JQsyzPxjnzdVrlv66zO5WxjaK2JlbXj6hB1vh7vqMpqi7gVULbwxjnl5fGo bFBiaXHZcFnMLZxxYGmClQSp8dc/lpnQwt20b9utoFYpkTfdPBFH0/ZjR8tJIJ7OBfHI f4PA== X-Gm-Message-State: AOAM533v/FpS+DJnZF/sF0N4/Q4rE/3y263JnEYWNtPtkRIWyEeGt8Oy sKHpy/Yi6Y/MsLJq/Do9PospIn4uPSRLJM5YA4M= X-Google-Smtp-Source: ABdhPJzPHBFy+YHW8yC/1wHg8+o4FteQqgjl4FzR3P6qHxX2U0B74TAMmXXGyddSKBaRqSt5gXqrFBWeDu0p3AmM+Gg= X-Received: by 2002:aa7:d288:: with SMTP id w8mr20577138edq.404.1638976435569; Wed, 08 Dec 2021 07:13:55 -0800 (PST) MIME-Version: 1.0 References: <20211207015446.1250854-1-aford173@gmail.com> <5a8b84e91bd8e7670a0d0108e4affe9b964202cb.camel@pengutronix.de> <4cc3404b-7f8a-6c87-8c1c-ace399f9edd3@collabora.com> In-Reply-To: <4cc3404b-7f8a-6c87-8c1c-ace399f9edd3@collabora.com> From: Adam Ford Date: Wed, 8 Dec 2021 09:13:44 -0600 Message-ID: Subject: Re: [RFC V2 0/6] media: Hantro: Split iMX8MQ VPU into G1 and G2 with blk-ctrl support To: Benjamin Gaignard Cc: Lucas Stach , linux-media , Chris Healy , Hans Verkuil , Ezequiel Garcia , Philipp Zabel , Mauro Carvalho Chehab , Rob Herring , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Greg Kroah-Hartman , "open list:HANTRO VPU CODEC DRIVER" , devicetree , arm-soc , Linux Kernel Mailing List , "open list:STAGING SUBSYSTEM" X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211208_071408_695992_CC90AED8 X-CRM114-Status: GOOD ( 34.85 ) 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 T24gV2VkLCBEZWMgOCwgMjAyMSBhdCA3OjM2IEFNIEJlbmphbWluIEdhaWduYXJkCjxiZW5qYW1p bi5nYWlnbmFyZEBjb2xsYWJvcmEuY29tPiB3cm90ZToKPgo+Cj4gTGUgMDgvMTIvMjAyMSDDoCAx MTozMiwgTHVjYXMgU3RhY2ggYSDDqWNyaXQgOgo+ID4gQW0gTWl0dHdvY2gsIGRlbSAwOC4xMi4y MDIxIHVtIDEwOjMyICswMTAwIHNjaHJpZWIgQmVuamFtaW4gR2FpZ25hcmQ6Cj4gPj4gTGUgMDcv MTIvMjAyMSDDoCAwMjo1NCwgQWRhbSBGb3JkIGEgw6ljcml0IDoKPiA+Pgo+ID4+PiBDdXJyZW50 bHksIHRoZSBWUFUgaW4gdGhlIGkuTVE4TVEgaXMgYXBwZWFyaW5nIGFzIG9uZSBjb2RlYywgYnV0 IGluCj4gPj4+IHJlYWxpdHksIGl0J3MgdHdvIElQIGJsb2NrcyBjYWxsZWQgRzEgYW5kIEcyLiAg VGhlcmUgaXMgaW5pdGlhbGl6YXRpb24KPiA+Pj4gY29kZSBpbiBWUFUgY29kZSB0byBwdWxsIHNv bWUgY2xvY2tzLCByZXNldHMgYW5kIG90aGVyIGZlYXR1cmVzIHdoaWNoCj4gPj4+IGhhcyBiZWVu IGludGVncmF0ZWQgaW50byB0aGUgdnB1LWJsay1jdHJsIGZvciB0aGUgaS5NWDhNIE1pbmkgYW5k IGEKPiA+Pj4gc2ltaWxhciBtZXRob2QgY2FuIGJlIHVzZWQgdG8gbWFrZSB0aGUgVlBVIGNvZGVj J3Mgb3BlcmF0ZSBhcwo+ID4+PiBzdGFuZC1hbG9uZSBjb3JlcyB3aXRob3V0IGhhdmluZyB0byBr bm93IHRoZSBkZXRhaWxzIG9mIGVhY2ggb3RoZXIKPiA+Pj4gb3IgdGhlIHF1aXJrcyB1bmlxdWUg dG8gdGhlIGkuTVg4TVEsIHNvIHRoZSByZW1haW5pbmcgY29kZSBjYW4gYmUKPiA+Pj4gbGVmdCBt b3JlIGdlbmVyaWMuCj4gPj4+Cj4gPj4+IFRoaXMgc2VyaWVzIHdhcyBzdGFydGVkIGJ5IEx1Y2Fz IFN0YWNoIHdpdGggb25lIGJ5IEJlbmphbWluIEdhaWduYXJkLgo+ID4+PiBNb3N0IHBhdGNoZXMg aGF2ZSBiZWVuIG1vZGlmaWVkIHNsaWdodGx5IGJ5IG1lLiAgSXQncyBpbiBhbiBSRkMgc3RhdGUK PiA+Pj4gYmVjYXVzZSBJIHdhc24ndCBzdXJlIGhvdyB0byBiZXN0IGhhbmRsZSB0aGUgc2lnbmF0 dXJlcyBhbmQgd2Fzbid0IHN1cmUKPiA+Pj4gaWYgSSBjb3VsZCBiYXNlIGl0IG9mZiB0aGUgYnJh bmNoIEkgZGlkLgo+ID4+Pgo+ID4+PiBTaW5jZSB0aGUgZy1zdHJlYW1lciBhbmQgbWVkaWEgdHJl ZXMgYXJlIGluIGEgY29uc3RhbnQgc3RhdGUgb2YKPiA+Pj4gY2hhbmdlLCB0aGlzIHNlcmllcyBp cyBiYXNlZCBvbgo+ID4+Pgo+ID4+PiBnaXQ6Ly9saW51eHR2Lm9yZy9odmVya3VpbC9tZWRpYV90 cmVlLmdpdCBmb3ItdjUuMTdlCj4gPj4+Cj4gPj4+IFRoZSBkb3duc3RyZWFtIGNvZGUgZnJvbSBO WFAgc2hvd3MgdGhlIEcxIGFuZCBHMiBjbG9ja3MgcnVubmluZwo+ID4+PiBhdCA2MDBNSHosIGJ1 dCBiZXR3ZWVuIHRoZSBUUk0gYW5kIHRoZSBkYXRhc2hlZXQsIHRoZXJlIGlzIHNvbWUKPiA+Pj4g ZGlzY3JlcGFuY3kuICBCZWNhdXNlIHRoZSBOWFAgcmVmZXJlbmNlIGNvZGUgdXNlZCA2MDBNSHos IHRoYXQgaXMKPiA+Pj4gd2hhdCB3YXMgY2hvc2VuIGhlcmUuICBVc2VycyB3aG8gbmVlZCB0byBh ZGp1c3QgdGhlaXIgRzEgYW5kIEcyCj4gPj4+IGNsb2NrcyBjYW4gZG8gc28gaW4gdGhlaXIgYm9h cmQgZmlsZXMuCj4gPj4gSGkgQWRhbSwKPiA+Pgo+ID4+IFRoYW5rcyBmb3IgeW91ciBwYXRjaGVz LCBJIGhhdmUgYmVlbiBhYmxlIHRvIHJlcHJvZHVjZSBWUDkgcmVzdWx0cyBvbiBteSBzaWRlIChG bHVzdGVyIDE0Ny8zMDMpLgo+ID4+IEluIHBhc3QgSSBoYXZlIG5vdGljZSBzcHVyaW91cyBlcnJv cnMgd2hlbiB1c2luZyA2MDBNSHogY2xvY2sgb24gSEVWQyBkZWNvZGUgYnV0IG5vdCB3aXRoIDMw ME1Iei4KPgo+IFRoZSByZXN1bHRzIGZvciBGbHVzdGVyIEhFVkMgYXJlIDc3LzE0NyBzbyBubyBy ZWdyZXNzaW9ucyA6LSkKPgo+IFJlZ2FyZHMsCj4gQmVuamFtaW4KPgo+ID4+IFRoZSBtYXggc3Vw cG9ydGVkIEcyIGNsb2NrIGZyZXF1ZW5jeSBpcyA2NjBNSHogYnV0IG5lZWRzIGEgaGlnaGVyCj4g Pj4gdm9sdGFnZS4gVGhlIG1heGltdW0gc3VwcG9ydGVkICBmcmVxdWVuY3kgYXQgdGhlIGRlZmF1 bHQgMC45ViBpcwo+ID4+IDU1ME1Iei4gV2Ugc2hvdWxkIG5vdCBjb25maWd1cmUgdGhlIGNsb2Nr cyBmb3IgdGhlIGhpZ2hlciB0aGFuIHRoYXQsIGFzCj4gPj4gbG9uZyBhcyB0aGVyZSBpcyBubyBz dXBwb3J0IGluIHRoZSBWUFUgZHJpdmVyIHRvIHNjYWxlIHRoZSB2b2x0YWdlCj4gPj4gYWxvbmcg d2l0aCB0aGUgZnJlcXVlbmN5LiBTYW1lIGFzIHdpdGggdGhlIEdQVSB3ZSBzaG91bGQgc3RpY2sg dG8gYmFzZQo+ID4+IGZyZXF1ZW5jeSBsZXZlbHMgZm9yIHRoZSBub21pbmFsIG9wZXJhdGluZyBt b2RlLgoKTHVjYXMsCgpBZnRlciByZXZpZXdpbmcgdGhlIGNvbW1lbnRzIGZyb20gQmVuamFtaW4s IEkgcmUtcmFuIHRoZSBWUDkgdGVzdHMKd2l0aCB0aGUgRzIgcnVubmluZyBhdCAzMDBNSHosYW5k IHRoZSBudW1iZXIgb2YgcGFzc2luZyBWUDkgdGVzdHMKaW5jcmVhc2VkIHRvIDE0OCBmcm9tIDE0 NCB3aXRoIGFuIGluY3JlYXNlIG9mIHRpbWUgdG8gMjUwLjUwMiBzZWNzCmZyb20gMTYyLjY2NSBz ZWNzLgoKV2hpbGUgdGhlIGRhdGFzaGVldCByZWFkcyB0aGF0IHRoZSBHMiBjYW4gcnVuIGZhc3Rl ciwgdGhlIGkuTVggOE0KRHVhbC84TSBRdWFkTGl0ZS84TSBRdWFkIEFwcGxpY2F0aW9ucyBQcm9j ZXNzb3JzIFJlZmVyZW5jZSBNYW51YWwsClJldi4gMy4xLCAwNi8yMDIxLCB0YWJsZSA1LTEgIHNo b3dzIHRoZSBWUFVfRzJfQ0xLX1JPT1QgaGFzIGEgbWF4CmNsb2NrIG9mIDMwME1Iei4gIEkgbWln aHQgYmUgaW5jbGluZWQgdG8gYWdyZWUgd2l0aCBCZW5qYW1pbiBvbiB0aGUKMzAwTUh6IGFuZCBs ZXQgcGVvcGxlIHdobyB3YW50IHRvIHB1c2ggdGhlaXIgaGFyZHdhcmUgb3ZlcndyaXRlIHRoZQpk ZWZhdWx0IGNsb2NrcyBzaW5jZSBpdCBpbmNyZWFzZXMgZnVuY3Rpb25hbGl0eS4KCkkgd29uZGVy IGlmIHNvbWVvbmUgZnJvbSBOWFAgY2FuIGNvbW1lbnQKCmFkYW0KCj4gPj4KPiA+PiBSZWdhcmRz LAo+ID4+IEx1Y2FzCj4gPj4KPiA+PiBSZWdhcmRzLAo+ID4+IEJlbmphbWluCj4gPj4KPiA+Pj4g Rmx1c3RlciBSZXN1bHRzOgo+ID4+Pgo+ID4+PiAuL2ZsdXN0ZXIucHkgcnVuIC1kR1N0cmVhbWVy LUguMjY0LVY0TDJTTC1Hc3QxLjAKPiA+Pj4gUmFuIDkwLzEzNSB0ZXN0cyBzdWNjZXNzZnVsbHkg ICAgICAgICAgICAgICBpbiA2MS45NjYgc2Vjcwo+ID4+Pgo+ID4+PiAuL2ZsdXN0ZXIucHkgcnVu IC1kIEdTdHJlYW1lci1WUDgtVjRMMlNMLUdzdDEuMAo+ID4+PiBSYW4gNTUvNjEgdGVzdHMgc3Vj Y2Vzc2Z1bGx5ICAgICAgICAgICAgICAgaW4gNy42NjAgc2Vjcwo+ID4+Pgo+ID4+Pgo+ID4+PiAu L2ZsdXN0ZXIucHkgcnVuIC1kIEdTdHJlYW1lci1WUDktVjRMMlNMLUdzdDEuMAo+ID4+PiBSYW4g MTQ0LzMwMyB0ZXN0cyBzdWNjZXNzZnVsbHkgICAgICAgICAgICAgICBpbiAxNjIuNjY1IHNlY3MK PiA+Pj4KPiA+Pj4gQ2hhbmdlcyBsb2c6Cj4gPj4+Cj4gPj4+IFYyOiAgTWFrZSB2cHUtYmxrLWN0 cmwgZW5hYmxlIEcyIGNsb2NrIHdoZW4gZW5hYmxpbmcgZnVzZXMuCj4gPj4+ICAgICAgICBSZW1v dmUgc3lzY29uIGZyb20gZGV2aWNlIHRyZWUgYW5kIGJpbmRpbmcgZXhhbXBsZQo+ID4+PiAgICAg ICAgQWRkZWQgbW9kaWZpZWQgbnhwLGlteDhtcS12cHUueWFtbCBmcm9tIEJlbmphbWluIEdhaWdu YXJkCj4gPj4+Cj4gPj4+IEFkYW0gRm9yZCAoMik6Cj4gPj4+ICAgICBtZWRpYTogaGFudHJvOiBz cGxpdCBpLk1YOE1RIEcxIGFuZCBHMiBjb2RlCj4gPj4+ICAgICBhcm02NDogZHRzOiBpbXg4bXE6 IFNwbGl0IGkuTVg4TVEgRzEgYW5kIEcyIHdpdGggdnB1LWJsay1jdHJsCj4gPj4+Cj4gPj4+IEJl bmphbWluIEdhaWduYXJkICgxKToKPiA+Pj4gICAgIGR0LWJpbmRpbmdzOiBtZWRpYTogbnhwLGlt eDhtcS12cHU6IFVwZGF0ZSB0aGUgYmluZGluZ3MgZm9yIEcyIHN1cHBvcnQKPiA+Pj4KPiA+Pj4g THVjYXMgU3RhY2ggKDMpOgo+ID4+PiAgICAgZHQtYmluZGluZ3M6IHBvd2VyOiBpbXg4bXE6IGFk ZCBkZWZpbmVzIGZvciBWUFUgYmxrLWN0cmwgZG9tYWlucwo+ID4+PiAgICAgZHQtYmluZGluZ3M6 IHNvYzogYWRkIGJpbmRpbmcgZm9yIGkuTVg4TVEgVlBVIGJsay1jdHJsCj4gPj4+ICAgICBzb2M6 IGlteDogaW14OG0tYmxrLWN0cmw6IGFkZCBpLk1YOE1RIFZQVSBibGstY3RybAo+ID4+Pgo+ID4+ PiAgICAuLi4vYmluZGluZ3MvbWVkaWEvbnhwLGlteDhtcS12cHUueWFtbCAgICAgICAgfCAgNTgg KysrKystLS0tCj4gPj4+ICAgIC4uLi9zb2MvaW14L2ZzbCxpbXg4bXEtdnB1LWJsay1jdHJsLnlh bWwgICAgICB8ICA3MSArKysrKysrKysrKwo+ID4+PiAgICBhcmNoL2FybTY0L2Jvb3QvZHRzL2Zy ZWVzY2FsZS9pbXg4bXEuZHRzaSAgICAgfCAgNjkgKysrKysrLS0tLQo+ID4+PiAgICBkcml2ZXJz L3NvYy9pbXgvaW14OG0tYmxrLWN0cmwuYyAgICAgICAgICAgICAgfCAgNjggKysrKysrKysrLQo+ ID4+PiAgICBkcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJvL2hhbnRyb19kcnYuYyAgICAgfCAg IDQgKy0KPiA+Pj4gICAgZHJpdmVycy9zdGFnaW5nL21lZGlhL2hhbnRyby9oYW50cm9faHcuaCAg ICAgIHwgICAyICstCj4gPj4+ICAgIGRyaXZlcnMvc3RhZ2luZy9tZWRpYS9oYW50cm8vaW14OG1f dnB1X2h3LmMgICB8IDExOSArKystLS0tLS0tLS0tLS0tLS0KPiA+Pj4gICAgaW5jbHVkZS9kdC1i aW5kaW5ncy9wb3dlci9pbXg4bXEtcG93ZXIuaCAgICAgIHwgICAzICsKPiA+Pj4gICAgOCBmaWxl cyBjaGFuZ2VkLCAyMzcgaW5zZXJ0aW9ucygrKSwgMTU3IGRlbGV0aW9ucygtKQo+ID4+PiAgICBj cmVhdGUgbW9kZSAxMDA2NDQgRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL3NvYy9p bXgvZnNsLGlteDhtcS12cHUtYmxrLWN0cmwueWFtbAo+ID4+Pgo+ID4+Pgo+ID4+PiBiYXNlLWNv bW1pdDogZDE4ODhiMGJmZDJkZGVmMmU4YTgxNTA1ZmZhMjAwYjkyY2MzMmUwYwo+ID4KCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkxpbnV4LXJvY2tjaGlw IG1haWxpbmcgbGlzdApMaW51eC1yb2NrY2hpcEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9s aXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcm9ja2NoaXAK 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 02545C433F5 for ; Wed, 8 Dec 2021 15:28:03 +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:Cc:To:Subject:Message-ID:Date:From: In-Reply-To:References:MIME-Version:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=R32qfKbUgVpJCOWFzycEzOGlRX1XZ1SHqNrsDi8VCw8=; b=l2fxGTQQvoWGEx lFcJnfYmuw+Fzkc9IyN2H6pekYiGe7u3EFFTeenPxNlJWQUWnk+/fR1BIdWP8bHqGgnokl83TnTBv Rh4TmPGbVe7IyZvkZ6TiTlA/esc3xERDVYde3lVGPQDOJpTi0yTi1EVRV/nKIva8VPFvIsAXRUPaG J5CMCIn8vmImFDRhJTFPhtaaZ11ugtaZOblvkYmTnNfIVK8sWoOVt1KZqWQSbrwOt0J3Yvr6TpfPJ Lc/odu5Uvxlxm45IY4f3Uk0w9ffsZd0K3mSDTw6b53w3umYaTbTPkKBnzi5D7+XRgkafvuFyE7T92 sZZoTwsMSsMvDmnwxl5g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1muypZ-00DEC6-J1; Wed, 08 Dec 2021 15:26:06 +0000 Received: from mail-ed1-x530.google.com ([2a00:1450:4864:20::530]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1muye0-00D7zB-J9; Wed, 08 Dec 2021 15:14:10 +0000 Received: by mail-ed1-x530.google.com with SMTP id r11so9292405edd.9; Wed, 08 Dec 2021 07:14:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=VdUdxIiaU5pFF+V8DTX3AHEAt5/Eve6LradMf5zXN3A=; b=d0DFQxVhQJSsNcwUBQkigMPaxadTwrFHzuGfAQb+ee+piHGEaANf5Z8P2KiO8ik+Kg unYXfBOPH4bNGrv9FtChzyEycOQEH9jNIoP4W1aqvEPzEmMC7riKxpp/5uswhlWVRtAa RNppAOavenQzJiMdh0LHaUdHLS0hQethRictq9Eeza/eNHNutocJ79BzUh3+JUQzgJdI O+nwF2EyE+3BP3JR4MpcQU2kPZgBCK3Bvfp2/bmOufePEV3iBlY+SAtwjOzzhop6Y3lx CuulofXSV7VICoQtPy0Yag/CnBJ4bDIjj4Dmn2Tgr8pYZJdlWZI/59EQj/gY7t9qGo44 A29A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=VdUdxIiaU5pFF+V8DTX3AHEAt5/Eve6LradMf5zXN3A=; b=S3T0NJ7mVEjweemWmTUvch5GOmX937mq4sFhH+TXC0UXLZQKF3FuzPZFMihDPBGBo7 2YxMQluuIIl0FMHqrtHanjt/KyOAaKeFBKXi6zO5mPMX+vQ1mGEF3UXcy5oRsSk4fZCO Cx5dFhPQZd0IsI9AQH1C73B7n25dakPqGPFJmaFWNKB5Kawv1hAFsTbOUrOMVQMHRdyT XNj3O3Ej4JQsyzPxjnzdVrlv66zO5WxjaK2JlbXj6hB1vh7vqMpqi7gVULbwxjnl5fGo bFBiaXHZcFnMLZxxYGmClQSp8dc/lpnQwt20b9utoFYpkTfdPBFH0/ZjR8tJIJ7OBfHI f4PA== X-Gm-Message-State: AOAM533v/FpS+DJnZF/sF0N4/Q4rE/3y263JnEYWNtPtkRIWyEeGt8Oy sKHpy/Yi6Y/MsLJq/Do9PospIn4uPSRLJM5YA4M= X-Google-Smtp-Source: ABdhPJzPHBFy+YHW8yC/1wHg8+o4FteQqgjl4FzR3P6qHxX2U0B74TAMmXXGyddSKBaRqSt5gXqrFBWeDu0p3AmM+Gg= X-Received: by 2002:aa7:d288:: with SMTP id w8mr20577138edq.404.1638976435569; Wed, 08 Dec 2021 07:13:55 -0800 (PST) MIME-Version: 1.0 References: <20211207015446.1250854-1-aford173@gmail.com> <5a8b84e91bd8e7670a0d0108e4affe9b964202cb.camel@pengutronix.de> <4cc3404b-7f8a-6c87-8c1c-ace399f9edd3@collabora.com> In-Reply-To: <4cc3404b-7f8a-6c87-8c1c-ace399f9edd3@collabora.com> From: Adam Ford Date: Wed, 8 Dec 2021 09:13:44 -0600 Message-ID: Subject: Re: [RFC V2 0/6] media: Hantro: Split iMX8MQ VPU into G1 and G2 with blk-ctrl support To: Benjamin Gaignard Cc: Lucas Stach , linux-media , Chris Healy , Hans Verkuil , Ezequiel Garcia , Philipp Zabel , Mauro Carvalho Chehab , Rob Herring , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Greg Kroah-Hartman , "open list:HANTRO VPU CODEC DRIVER" , devicetree , arm-soc , Linux Kernel Mailing List , "open list:STAGING SUBSYSTEM" X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211208_071408_695992_CC90AED8 X-CRM114-Status: GOOD ( 34.85 ) 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 T24gV2VkLCBEZWMgOCwgMjAyMSBhdCA3OjM2IEFNIEJlbmphbWluIEdhaWduYXJkCjxiZW5qYW1p bi5nYWlnbmFyZEBjb2xsYWJvcmEuY29tPiB3cm90ZToKPgo+Cj4gTGUgMDgvMTIvMjAyMSDDoCAx MTozMiwgTHVjYXMgU3RhY2ggYSDDqWNyaXQgOgo+ID4gQW0gTWl0dHdvY2gsIGRlbSAwOC4xMi4y MDIxIHVtIDEwOjMyICswMTAwIHNjaHJpZWIgQmVuamFtaW4gR2FpZ25hcmQ6Cj4gPj4gTGUgMDcv MTIvMjAyMSDDoCAwMjo1NCwgQWRhbSBGb3JkIGEgw6ljcml0IDoKPiA+Pgo+ID4+PiBDdXJyZW50 bHksIHRoZSBWUFUgaW4gdGhlIGkuTVE4TVEgaXMgYXBwZWFyaW5nIGFzIG9uZSBjb2RlYywgYnV0 IGluCj4gPj4+IHJlYWxpdHksIGl0J3MgdHdvIElQIGJsb2NrcyBjYWxsZWQgRzEgYW5kIEcyLiAg VGhlcmUgaXMgaW5pdGlhbGl6YXRpb24KPiA+Pj4gY29kZSBpbiBWUFUgY29kZSB0byBwdWxsIHNv bWUgY2xvY2tzLCByZXNldHMgYW5kIG90aGVyIGZlYXR1cmVzIHdoaWNoCj4gPj4+IGhhcyBiZWVu IGludGVncmF0ZWQgaW50byB0aGUgdnB1LWJsay1jdHJsIGZvciB0aGUgaS5NWDhNIE1pbmkgYW5k IGEKPiA+Pj4gc2ltaWxhciBtZXRob2QgY2FuIGJlIHVzZWQgdG8gbWFrZSB0aGUgVlBVIGNvZGVj J3Mgb3BlcmF0ZSBhcwo+ID4+PiBzdGFuZC1hbG9uZSBjb3JlcyB3aXRob3V0IGhhdmluZyB0byBr bm93IHRoZSBkZXRhaWxzIG9mIGVhY2ggb3RoZXIKPiA+Pj4gb3IgdGhlIHF1aXJrcyB1bmlxdWUg dG8gdGhlIGkuTVg4TVEsIHNvIHRoZSByZW1haW5pbmcgY29kZSBjYW4gYmUKPiA+Pj4gbGVmdCBt b3JlIGdlbmVyaWMuCj4gPj4+Cj4gPj4+IFRoaXMgc2VyaWVzIHdhcyBzdGFydGVkIGJ5IEx1Y2Fz IFN0YWNoIHdpdGggb25lIGJ5IEJlbmphbWluIEdhaWduYXJkLgo+ID4+PiBNb3N0IHBhdGNoZXMg aGF2ZSBiZWVuIG1vZGlmaWVkIHNsaWdodGx5IGJ5IG1lLiAgSXQncyBpbiBhbiBSRkMgc3RhdGUK PiA+Pj4gYmVjYXVzZSBJIHdhc24ndCBzdXJlIGhvdyB0byBiZXN0IGhhbmRsZSB0aGUgc2lnbmF0 dXJlcyBhbmQgd2Fzbid0IHN1cmUKPiA+Pj4gaWYgSSBjb3VsZCBiYXNlIGl0IG9mZiB0aGUgYnJh bmNoIEkgZGlkLgo+ID4+Pgo+ID4+PiBTaW5jZSB0aGUgZy1zdHJlYW1lciBhbmQgbWVkaWEgdHJl ZXMgYXJlIGluIGEgY29uc3RhbnQgc3RhdGUgb2YKPiA+Pj4gY2hhbmdlLCB0aGlzIHNlcmllcyBp cyBiYXNlZCBvbgo+ID4+Pgo+ID4+PiBnaXQ6Ly9saW51eHR2Lm9yZy9odmVya3VpbC9tZWRpYV90 cmVlLmdpdCBmb3ItdjUuMTdlCj4gPj4+Cj4gPj4+IFRoZSBkb3duc3RyZWFtIGNvZGUgZnJvbSBO WFAgc2hvd3MgdGhlIEcxIGFuZCBHMiBjbG9ja3MgcnVubmluZwo+ID4+PiBhdCA2MDBNSHosIGJ1 dCBiZXR3ZWVuIHRoZSBUUk0gYW5kIHRoZSBkYXRhc2hlZXQsIHRoZXJlIGlzIHNvbWUKPiA+Pj4g ZGlzY3JlcGFuY3kuICBCZWNhdXNlIHRoZSBOWFAgcmVmZXJlbmNlIGNvZGUgdXNlZCA2MDBNSHos IHRoYXQgaXMKPiA+Pj4gd2hhdCB3YXMgY2hvc2VuIGhlcmUuICBVc2VycyB3aG8gbmVlZCB0byBh ZGp1c3QgdGhlaXIgRzEgYW5kIEcyCj4gPj4+IGNsb2NrcyBjYW4gZG8gc28gaW4gdGhlaXIgYm9h cmQgZmlsZXMuCj4gPj4gSGkgQWRhbSwKPiA+Pgo+ID4+IFRoYW5rcyBmb3IgeW91ciBwYXRjaGVz LCBJIGhhdmUgYmVlbiBhYmxlIHRvIHJlcHJvZHVjZSBWUDkgcmVzdWx0cyBvbiBteSBzaWRlIChG bHVzdGVyIDE0Ny8zMDMpLgo+ID4+IEluIHBhc3QgSSBoYXZlIG5vdGljZSBzcHVyaW91cyBlcnJv cnMgd2hlbiB1c2luZyA2MDBNSHogY2xvY2sgb24gSEVWQyBkZWNvZGUgYnV0IG5vdCB3aXRoIDMw ME1Iei4KPgo+IFRoZSByZXN1bHRzIGZvciBGbHVzdGVyIEhFVkMgYXJlIDc3LzE0NyBzbyBubyBy ZWdyZXNzaW9ucyA6LSkKPgo+IFJlZ2FyZHMsCj4gQmVuamFtaW4KPgo+ID4+IFRoZSBtYXggc3Vw cG9ydGVkIEcyIGNsb2NrIGZyZXF1ZW5jeSBpcyA2NjBNSHogYnV0IG5lZWRzIGEgaGlnaGVyCj4g Pj4gdm9sdGFnZS4gVGhlIG1heGltdW0gc3VwcG9ydGVkICBmcmVxdWVuY3kgYXQgdGhlIGRlZmF1 bHQgMC45ViBpcwo+ID4+IDU1ME1Iei4gV2Ugc2hvdWxkIG5vdCBjb25maWd1cmUgdGhlIGNsb2Nr cyBmb3IgdGhlIGhpZ2hlciB0aGFuIHRoYXQsIGFzCj4gPj4gbG9uZyBhcyB0aGVyZSBpcyBubyBz dXBwb3J0IGluIHRoZSBWUFUgZHJpdmVyIHRvIHNjYWxlIHRoZSB2b2x0YWdlCj4gPj4gYWxvbmcg d2l0aCB0aGUgZnJlcXVlbmN5LiBTYW1lIGFzIHdpdGggdGhlIEdQVSB3ZSBzaG91bGQgc3RpY2sg dG8gYmFzZQo+ID4+IGZyZXF1ZW5jeSBsZXZlbHMgZm9yIHRoZSBub21pbmFsIG9wZXJhdGluZyBt b2RlLgoKTHVjYXMsCgpBZnRlciByZXZpZXdpbmcgdGhlIGNvbW1lbnRzIGZyb20gQmVuamFtaW4s IEkgcmUtcmFuIHRoZSBWUDkgdGVzdHMKd2l0aCB0aGUgRzIgcnVubmluZyBhdCAzMDBNSHosYW5k IHRoZSBudW1iZXIgb2YgcGFzc2luZyBWUDkgdGVzdHMKaW5jcmVhc2VkIHRvIDE0OCBmcm9tIDE0 NCB3aXRoIGFuIGluY3JlYXNlIG9mIHRpbWUgdG8gMjUwLjUwMiBzZWNzCmZyb20gMTYyLjY2NSBz ZWNzLgoKV2hpbGUgdGhlIGRhdGFzaGVldCByZWFkcyB0aGF0IHRoZSBHMiBjYW4gcnVuIGZhc3Rl ciwgdGhlIGkuTVggOE0KRHVhbC84TSBRdWFkTGl0ZS84TSBRdWFkIEFwcGxpY2F0aW9ucyBQcm9j ZXNzb3JzIFJlZmVyZW5jZSBNYW51YWwsClJldi4gMy4xLCAwNi8yMDIxLCB0YWJsZSA1LTEgIHNo b3dzIHRoZSBWUFVfRzJfQ0xLX1JPT1QgaGFzIGEgbWF4CmNsb2NrIG9mIDMwME1Iei4gIEkgbWln aHQgYmUgaW5jbGluZWQgdG8gYWdyZWUgd2l0aCBCZW5qYW1pbiBvbiB0aGUKMzAwTUh6IGFuZCBs ZXQgcGVvcGxlIHdobyB3YW50IHRvIHB1c2ggdGhlaXIgaGFyZHdhcmUgb3ZlcndyaXRlIHRoZQpk ZWZhdWx0IGNsb2NrcyBzaW5jZSBpdCBpbmNyZWFzZXMgZnVuY3Rpb25hbGl0eS4KCkkgd29uZGVy IGlmIHNvbWVvbmUgZnJvbSBOWFAgY2FuIGNvbW1lbnQKCmFkYW0KCj4gPj4KPiA+PiBSZWdhcmRz LAo+ID4+IEx1Y2FzCj4gPj4KPiA+PiBSZWdhcmRzLAo+ID4+IEJlbmphbWluCj4gPj4KPiA+Pj4g Rmx1c3RlciBSZXN1bHRzOgo+ID4+Pgo+ID4+PiAuL2ZsdXN0ZXIucHkgcnVuIC1kR1N0cmVhbWVy LUguMjY0LVY0TDJTTC1Hc3QxLjAKPiA+Pj4gUmFuIDkwLzEzNSB0ZXN0cyBzdWNjZXNzZnVsbHkg ICAgICAgICAgICAgICBpbiA2MS45NjYgc2Vjcwo+ID4+Pgo+ID4+PiAuL2ZsdXN0ZXIucHkgcnVu IC1kIEdTdHJlYW1lci1WUDgtVjRMMlNMLUdzdDEuMAo+ID4+PiBSYW4gNTUvNjEgdGVzdHMgc3Vj Y2Vzc2Z1bGx5ICAgICAgICAgICAgICAgaW4gNy42NjAgc2Vjcwo+ID4+Pgo+ID4+Pgo+ID4+PiAu L2ZsdXN0ZXIucHkgcnVuIC1kIEdTdHJlYW1lci1WUDktVjRMMlNMLUdzdDEuMAo+ID4+PiBSYW4g MTQ0LzMwMyB0ZXN0cyBzdWNjZXNzZnVsbHkgICAgICAgICAgICAgICBpbiAxNjIuNjY1IHNlY3MK PiA+Pj4KPiA+Pj4gQ2hhbmdlcyBsb2c6Cj4gPj4+Cj4gPj4+IFYyOiAgTWFrZSB2cHUtYmxrLWN0 cmwgZW5hYmxlIEcyIGNsb2NrIHdoZW4gZW5hYmxpbmcgZnVzZXMuCj4gPj4+ICAgICAgICBSZW1v dmUgc3lzY29uIGZyb20gZGV2aWNlIHRyZWUgYW5kIGJpbmRpbmcgZXhhbXBsZQo+ID4+PiAgICAg ICAgQWRkZWQgbW9kaWZpZWQgbnhwLGlteDhtcS12cHUueWFtbCBmcm9tIEJlbmphbWluIEdhaWdu YXJkCj4gPj4+Cj4gPj4+IEFkYW0gRm9yZCAoMik6Cj4gPj4+ICAgICBtZWRpYTogaGFudHJvOiBz cGxpdCBpLk1YOE1RIEcxIGFuZCBHMiBjb2RlCj4gPj4+ICAgICBhcm02NDogZHRzOiBpbXg4bXE6 IFNwbGl0IGkuTVg4TVEgRzEgYW5kIEcyIHdpdGggdnB1LWJsay1jdHJsCj4gPj4+Cj4gPj4+IEJl bmphbWluIEdhaWduYXJkICgxKToKPiA+Pj4gICAgIGR0LWJpbmRpbmdzOiBtZWRpYTogbnhwLGlt eDhtcS12cHU6IFVwZGF0ZSB0aGUgYmluZGluZ3MgZm9yIEcyIHN1cHBvcnQKPiA+Pj4KPiA+Pj4g THVjYXMgU3RhY2ggKDMpOgo+ID4+PiAgICAgZHQtYmluZGluZ3M6IHBvd2VyOiBpbXg4bXE6IGFk ZCBkZWZpbmVzIGZvciBWUFUgYmxrLWN0cmwgZG9tYWlucwo+ID4+PiAgICAgZHQtYmluZGluZ3M6 IHNvYzogYWRkIGJpbmRpbmcgZm9yIGkuTVg4TVEgVlBVIGJsay1jdHJsCj4gPj4+ICAgICBzb2M6 IGlteDogaW14OG0tYmxrLWN0cmw6IGFkZCBpLk1YOE1RIFZQVSBibGstY3RybAo+ID4+Pgo+ID4+ PiAgICAuLi4vYmluZGluZ3MvbWVkaWEvbnhwLGlteDhtcS12cHUueWFtbCAgICAgICAgfCAgNTgg KysrKystLS0tCj4gPj4+ICAgIC4uLi9zb2MvaW14L2ZzbCxpbXg4bXEtdnB1LWJsay1jdHJsLnlh bWwgICAgICB8ICA3MSArKysrKysrKysrKwo+ID4+PiAgICBhcmNoL2FybTY0L2Jvb3QvZHRzL2Zy ZWVzY2FsZS9pbXg4bXEuZHRzaSAgICAgfCAgNjkgKysrKysrLS0tLQo+ID4+PiAgICBkcml2ZXJz L3NvYy9pbXgvaW14OG0tYmxrLWN0cmwuYyAgICAgICAgICAgICAgfCAgNjggKysrKysrKysrLQo+ ID4+PiAgICBkcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJvL2hhbnRyb19kcnYuYyAgICAgfCAg IDQgKy0KPiA+Pj4gICAgZHJpdmVycy9zdGFnaW5nL21lZGlhL2hhbnRyby9oYW50cm9faHcuaCAg ICAgIHwgICAyICstCj4gPj4+ICAgIGRyaXZlcnMvc3RhZ2luZy9tZWRpYS9oYW50cm8vaW14OG1f dnB1X2h3LmMgICB8IDExOSArKystLS0tLS0tLS0tLS0tLS0KPiA+Pj4gICAgaW5jbHVkZS9kdC1i aW5kaW5ncy9wb3dlci9pbXg4bXEtcG93ZXIuaCAgICAgIHwgICAzICsKPiA+Pj4gICAgOCBmaWxl cyBjaGFuZ2VkLCAyMzcgaW5zZXJ0aW9ucygrKSwgMTU3IGRlbGV0aW9ucygtKQo+ID4+PiAgICBj cmVhdGUgbW9kZSAxMDA2NDQgRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL3NvYy9p bXgvZnNsLGlteDhtcS12cHUtYmxrLWN0cmwueWFtbAo+ID4+Pgo+ID4+Pgo+ID4+PiBiYXNlLWNv bW1pdDogZDE4ODhiMGJmZDJkZGVmMmU4YTgxNTA1ZmZhMjAwYjkyY2MzMmUwYwo+ID4KCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJu ZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRw Oi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK