From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (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 B6F774DA08 for ; Fri, 15 Mar 2024 18:20:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710526858; cv=none; b=iLTFHomOII8VL63Iv6TAmvokQEtpHm8+tSfIolQM69TBqjAvskeaR/n2VSi3Emi5yIZghEF9ocl0KR3ZboCehEpcS/Nv+9tcm4EK/Vc/J7ym2T0yeUf+eQdp2jOBn3i84PsiGKIshobMHCTl/ZT//wBSUBKwTP7LY052YL6jyx0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710526858; c=relaxed/simple; bh=oU+wtqKEvrb6U1ncUvd/CRehplkB5QsI8J8x8jxwUTk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=iGVZNCNc5TSih34+mMW+YpDnQD9r6sGRrqpiUCcX8lfiRZZS60OGr5etjLq/1epF49d7jnTUcsFYiwCD4v+cvR5ylFCVTgMjxFoqB8Q0GTV83lo5+bsPvF9jpsAn2tPkBHf4N8YQIx0NVsLROix5oTnwWQ//wdBQ9zncwyBEDjY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=VajotisK; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="VajotisK" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-41403889b6aso4740975e9.2 for ; Fri, 15 Mar 2024 11:20:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710526855; x=1711131655; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=N5JX+srh6iZTx3hGWXMNjBUxtYKjAj6cKvbPfHIxw9s=; b=VajotisKUq+Po1X+6814iPEqMklVA0cDKJRkPeEJcElzRLqizWui+HlFBGQICQnd2i ax8DSTU0WFD9eP1hyuulMUk2v+VVJ4DZY0cLu20EJsrWN7/Hbac8D8y7CF7lyWcuJ+Zg HXNE5TJCZ5wL9avOlG6NadlWNv9svmVL2pNmdQwhCoV/n9+mCrf9yIvFoGXAZ2cnmvK9 nxPCta6j5x4/nYcSa2zXilmLAMycia4wCNfJ7tmhJtB6gEFzffDzjQGaJdouzr4/fncl Sr61qgrNEZ6lbKp+NYK7H0WhU3JuLEwZuEvQujdHikPWEIbyn+9FnTzRvnO8iwMNQ4c0 Q1lQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710526855; x=1711131655; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=N5JX+srh6iZTx3hGWXMNjBUxtYKjAj6cKvbPfHIxw9s=; b=UVoBOruOGn8M8lIZbCvqldcBChwMbv3wvyCIeJoerBN8SXSdFNj/VO6n3wW62vsRpy znTa58LYdIihpmd+8ECrlm/UMFZ4VbogcbvCG6O3CDjnPngvA5GGow/7M6ySEmsh08ca gJLYHSu918s0PKEc5B7UMVTw1GArSXqUq93+pQlgpkzeXqNa9lh2/9C1pS1ZNAJkWJso 8b7JK2erroWYYFSDQuijMqWL1N/XE9D3R5EEKzhCbPGhBRQnu/mQMkePV6wSc+v1znjO fisKhNnamcojFBpUVDQh3uCj5uIlleSfeQW0PZQvkkE33iLSmhsgQ2dTuqkSyg8ioVYL eKtw== X-Forwarded-Encrypted: i=1; AJvYcCVO4dNBSCZmANqBzMQE+6JT3awgIw/DDukbsz8stnJN1bRD+C6vqX+5lJy6Ts8XqgstmDGuxdNl5h9Q3LHk0DZDQY+jSN/izWQhdb8= X-Gm-Message-State: AOJu0Yz9ckfDOkxtyAOdXx3dP9trX1vfsX9daIeiWXI2PbQ7qPDiy16s VlJj2v+JAB+h1+PcN1zbY34mIOm6EwajbsvybMYvP0qpY9Kz8z3W X-Google-Smtp-Source: AGHT+IEUknJhMCD9YdOmBrb3UtAztWH/LqgLoBYSw8axnSvX5b5R6x5m4chC9UT+fQgPRGVgu3uimw== X-Received: by 2002:a05:600c:314c:b0:414:1eb:287 with SMTP id h12-20020a05600c314c00b0041401eb0287mr1703304wmo.14.1710526854834; Fri, 15 Mar 2024 11:20:54 -0700 (PDT) Received: from jernej-laptop.localnet ([188.159.248.16]) by smtp.gmail.com with ESMTPSA id l12-20020a05600c4f0c00b004122b7a680dsm6615005wmq.21.2024.03.15.11.20.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Mar 2024 11:20:54 -0700 (PDT) From: Jernej =?utf-8?B?xaBrcmFiZWM=?= To: Andre Przywara , Kamil Kasperski Cc: wens@csie.org, samuel@sholland.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org Subject: Re: [PATCH 0/3] dts: arm64: sunxi: add initial support for t95 tv box Date: Fri, 15 Mar 2024 19:20:52 +0100 Message-ID: <4902501.31r3eYUQgx@jernej-laptop> In-Reply-To: References: <20240311174750.6428-1-ressetkk@gmail.com> <4331305.ejJDZkT8p0@jernej-laptop> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Dne petek, 15. marec 2024 ob 01:57:21 CET je Kamil Kasperski napisal(a): > W dniu 14.03.2024 o 17:50, Jernej =C5=A0krabec pisze: > > Dne =C4=8Detrtek, 14. marec 2024 ob 01:19:28 CET je Kamil Kasperski nap= isal(a): > >> Hi Jernej, Andre! > > Please no top posting as per rules. >=20 > Sure. I'm not used to this kind of work, so please bear the mistakes I ma= ke. And line length should be 78 character max. Please read Linux netiquette. >=20 > > > >> Thanks for the reply. My board has a name "H616-T95MAX-AXP313A-v3.0". > > Ok, we for sure need to integrate this somehow to compatible string, si= nce > > there are at least two incompatible versions. >=20 > It's good idea to introduce dtsi with common configuration for both boxes= and add 2 new dts files with compatible string > "t95,t95max-axp313" and "t95,t95max-axp305" with separate PMIC configurat= ion. Similarly as OrangePI Zero got handled. Correct. >=20 > Not to mention, that it looks like arch/arm64/boot/dts/allwinner/sun50i-h= 618-transpeed-8k618-t.dts also has very similar configuration to my T95 box= =2E Question is should we mix up the compatible strings for SoC? > I know that H616 and H618 are almost identical SoCs, but if it's not only= a matter of documentation it's still better idea to push new dts. Not sure what do you mean. We can mix and match whatever DTSI we want. Howe= ver, board compatible reflect SoC in them. So yes, if it make sense, Transpeed 8= k618-t can share same common DTSI, just board level DTS will have H616 compatible. Best regards, Jernej >=20 > Best Regards, > Kamil >=20 > >> I believe these boards are two different revisions and the one with=20 > >> AXP313A is a newer one, besides incorrectly label as v3.0. Sharing=20 > >> common configuration between boxes is also a good idea but for this=20 > >> specific configuration I would be cautious. From my experience with th= is=20 > >> board the default configuration for X96 Mate is not working at all. I= =20 > >> suspect because of the PMIC and DRAM differences. > >> > >> Memory installed in X96 Mate is DDR3L and in mine T95 it's DDR3, hynix= =20 > >> H5TQ2G43BFR, that requires 1.5V to operate. > > PMIC is important difference, yes, but not DRAM. DDR3L is completely co= mpatible > > with DDR3. It just additionally supports lower voltages. Additionally, = Linux > > doesn't care about DRAM type and all. It's firmware responsibility to p= roperly > > initialize it. > > > > Best regards, > > Jernej > > > >> The rest of configuration for both boards, like HDMI, MMC, EPHY and=20 > >> audio codec seems to be the same across almost all H616-based boxes th= at=20 > >> I've researched. > >> > >> > >> Moreover please let me update the patches and send v2 that aligns with= =20 > >> mainline branch. I've incorrectly assumed to use sunxi fork instead of= =20 > >> master. Sorry! > >> > >> W dniu 13.03.2024 o 19:00, Jernej =C5=A0krabec pisze: > >>> Dne sreda, 13. marec 2024 ob 18:38:08 CET je Andre Przywara napisal(a= ): > >>>> On Wed, 13 Mar 2024 18:25:14 +0100 > >>>> Jernej =C5=A0krabec wrote: > >>>> > >>>>> Hi Kamil! > >>>>> > >>>>> Dne ponedeljek, 11. marec 2024 ob 18:47:47 CET je Kamil Kasperski n= apisal(a): > >>>>>> T95 is a most commonly known for being a box with a pre-installed = malware. > >>>>>> It uses Allwinner H616 and comes with eMMC and DDR3 memory. > >>>>>> This device comes with two versions - one with AXP305 PMIC and ano= ther with AXP313 PMIC. > >>>>> I have this board and it always felt like a clone of X96 Mate, whic= h is > >>>>> already supported in kernel, except for broken sd card detection. W= ould it > >>>>> make sense to unify those two boards and just overwrite or update p= arts here > >>>>> that are not the same? > >>>> I think the box you have is an older one, with the AXP305? IIUC, thi= s is > >>>> about a newer revision with the AXP313. There are quite some differe= nces > >>>> between the two PMICs, though it might still make sense to share the= DTs, > >>>> see the OrangePi Zero[23]. > >>> Right, mine is with AXP305. It has "T95MAX v4.0" printed on PCB. > >>> > >>> Kamil, does your board also have "MAX" mentioned somewhere? > >>> > >>> Best regards, > >>> Jernej > >>> > >>>> Cheers, > >>>> Andre > >>>> > >>>>>> Kamil Kasperski (3): > >>>>>> dt-bindings: vendor-prefixes: sunxi: add T95 to vendor-prefixes > >>>>>> dt-bindings: arm: sunxi: add t95 compatible string to list of k= nown > >>>>>> boards > >>>>>> dts: arm64: sunxi: add initial support for T95 AXP313 tv box > >>>>>> > >>>>>> .../devicetree/bindings/arm/sunxi.yaml | 5 + > >>>>>> .../devicetree/bindings/vendor-prefixes.yaml | 2 + > >>>>>> arch/arm64/boot/dts/allwinner/Makefile | 1 + > >>>>>> .../dts/allwinner/sun50i-h616-t95-axp313.dts | 138 ++++++++++++= ++++++ > >>>>>> 4 files changed, 146 insertions(+) > >>>>>> create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-t95= =2Daxp313.dts > >>>>>> > >>>>>> =20 > >>>>> > >>>>> > >>>>> > >>> > >>> > > > > > > >=20 >=20 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 97931C54E58 for ; Fri, 15 Mar 2024 18:21:15 +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:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=OyAhibGWhe0dmnya5I14VWpuEVBl+PX0DIwfGaL0mHE=; b=t9BuHpSvzVJAXr zhRi2I3EBf4xkkvzNswYFX0Gbf6HbVCggx73UZChJ9C5NFqhvFBOqkOCfKAofIiZ3GlBSUM4ZEzCv mZsSwy1CRMY6QKg8eLVdhPacLAYdBQ7gKngWpLuZN84M3A/EazhGLi3kIlkzodbQuF5fdjC03dPhv UnfsIs57uO15unCJJVBvoYbBmV7tlWygFruqWbFAjcEPEP9MMp4T1nITymCHVfZVsiqbw1eiCx/5o jK3Z+U3htpFRAQ9SKsMbZLImgT/++0+EUvZqnqmJj9CbRX8QeSkbammvQB4GLbeBwGS5n/o5NPBJp 7oRdXRxXuUhfjlEnsHoQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rlCAt-000000019YZ-3NnF; Fri, 15 Mar 2024 18:20:59 +0000 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rlCAq-000000019Y2-3bxx for linux-arm-kernel@lists.infradead.org; Fri, 15 Mar 2024 18:20:58 +0000 Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-413fea12b07so8630895e9.1 for ; Fri, 15 Mar 2024 11:20:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710526855; x=1711131655; darn=lists.infradead.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=N5JX+srh6iZTx3hGWXMNjBUxtYKjAj6cKvbPfHIxw9s=; b=jNM2Q75iMLj9xJiDq4Oo2Lo8rK4B8a1ZyxAYtr2W1vqN2NQ6y52rawrmmUn5GK71Dp rzopz/JSnLjANzFY62MmIEBqL6fn98I0u6NsJY1qu8Dzg6hZabiG3OXnQv8jgazfAtyf GGg33bbr33PBneZL6pNuufMNbX5+Ixs/nOlvyaVD8MSBq6HLNIzHUaVdyvGU7tAbs3wP w/PAMK7klVwlsBpV/iN8ESAkskuKT0R2z7cL57W/j6sC6rU/wp8z+eiNoCmmlnAWTe78 Gotz9S8uuV058nHT2nn0lLD6/gEA/GKbJCcbFf7SyHMSV+dDnaUPJPUHZnu/cSbPGzU9 0dSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710526855; x=1711131655; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=N5JX+srh6iZTx3hGWXMNjBUxtYKjAj6cKvbPfHIxw9s=; b=atNr5uw9N//A4ZanUKmypmoItGnh+mcZqmnKTpUlDjTsauW4Na9vOmYp1D7zBZ3LFP nMS5e1p/QI4LX7es8y8C240n1OV9QeJx/aT72ACMBCrsB7rH7oYO9rHvmDlvxv3trFDu lcbTEnkRZFWz9xKZEEgL06aqy0Haz5VWT6QGejJeWf2ZDyIro0UTCcXQ4hrnpozjndha ZsGDLayfl3/P6HgAIyT6UDfxE+ivc93EzdKSMPseM94CXBv7GBW5RYBLgmmfNViiYATs nYf9UXBTVD8ifAhSU8SgMeB3PrvJnUwTfp0dMS7ifCH4Oho3cA79I7utl16THkng711l wxCg== X-Forwarded-Encrypted: i=1; AJvYcCVP0zLJ6bbPBNd20LTWWhWsEb88pdih49z27WGkpUneW34CUyF2DSBAqv2pY/tdtSTfaQUrl+j5YlZ1k5f5GPANdLRJZUE0e1Slg22tkZhiRkQ3hh8= X-Gm-Message-State: AOJu0Yy4QOPght/8OMpC6uHKSKKNSBdk5gKB9LExuJyLROFTtKEEp9FU a5DTx14BvNL03aRVoisc93ZbrRU5Hb+seDDaq7LW28jx82f2Z+Pw X-Google-Smtp-Source: AGHT+IEUknJhMCD9YdOmBrb3UtAztWH/LqgLoBYSw8axnSvX5b5R6x5m4chC9UT+fQgPRGVgu3uimw== X-Received: by 2002:a05:600c:314c:b0:414:1eb:287 with SMTP id h12-20020a05600c314c00b0041401eb0287mr1703304wmo.14.1710526854834; Fri, 15 Mar 2024 11:20:54 -0700 (PDT) Received: from jernej-laptop.localnet ([188.159.248.16]) by smtp.gmail.com with ESMTPSA id l12-20020a05600c4f0c00b004122b7a680dsm6615005wmq.21.2024.03.15.11.20.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Mar 2024 11:20:54 -0700 (PDT) From: Jernej =?utf-8?B?xaBrcmFiZWM=?= To: Andre Przywara , Kamil Kasperski Cc: wens@csie.org, samuel@sholland.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org Subject: Re: [PATCH 0/3] dts: arm64: sunxi: add initial support for t95 tv box Date: Fri, 15 Mar 2024 19:20:52 +0100 Message-ID: <4902501.31r3eYUQgx@jernej-laptop> In-Reply-To: References: <20240311174750.6428-1-ressetkk@gmail.com> <4331305.ejJDZkT8p0@jernej-laptop> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240315_112056_935040_D6B4640C X-CRM114-Status: GOOD ( 36.87 ) 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 RG5lIHBldGVrLCAxNS4gbWFyZWMgMjAyNCBvYiAwMTo1NzoyMSBDRVQgamUgS2FtaWwgS2FzcGVy c2tpIG5hcGlzYWwoYSk6Cj4gVyBkbml1IDE0LjAzLjIwMjQgbyAxNzo1MCwgSmVybmVqIMWga3Jh YmVjIHBpc3plOgo+ID4gRG5lIMSNZXRydGVrLCAxNC4gbWFyZWMgMjAyNCBvYiAwMToxOToyOCBD RVQgamUgS2FtaWwgS2FzcGVyc2tpIG5hcGlzYWwoYSk6Cj4gPj4gSGkgSmVybmVqLCBBbmRyZSEK PiA+IFBsZWFzZSBubyB0b3AgcG9zdGluZyBhcyBwZXIgcnVsZXMuCj4gCj4gU3VyZS4gSSdtIG5v dCB1c2VkIHRvIHRoaXMga2luZCBvZiB3b3JrLCBzbyBwbGVhc2UgYmVhciB0aGUgbWlzdGFrZXMg SSBtYWtlLgoKQW5kIGxpbmUgbGVuZ3RoIHNob3VsZCBiZSA3OCBjaGFyYWN0ZXIgbWF4LiBQbGVh c2UgcmVhZCBMaW51eCBuZXRpcXVldHRlLgoKPiAKPiA+Cj4gPj4gVGhhbmtzIGZvciB0aGUgcmVw bHkuIE15IGJvYXJkIGhhcyBhIG5hbWUgIkg2MTYtVDk1TUFYLUFYUDMxM0EtdjMuMCIuCj4gPiBP aywgd2UgZm9yIHN1cmUgbmVlZCB0byBpbnRlZ3JhdGUgdGhpcyBzb21laG93IHRvIGNvbXBhdGli bGUgc3RyaW5nLCBzaW5jZQo+ID4gdGhlcmUgYXJlIGF0IGxlYXN0IHR3byBpbmNvbXBhdGlibGUg dmVyc2lvbnMuCj4gCj4gSXQncyBnb29kIGlkZWEgdG8gaW50cm9kdWNlIGR0c2kgd2l0aCBjb21t b24gY29uZmlndXJhdGlvbiBmb3IgYm90aCBib3hlcyBhbmQgYWRkIDIgbmV3IGR0cyBmaWxlcyB3 aXRoIGNvbXBhdGlibGUgc3RyaW5nCj4gInQ5NSx0OTVtYXgtYXhwMzEzIiBhbmQgInQ5NSx0OTVt YXgtYXhwMzA1IiB3aXRoIHNlcGFyYXRlIFBNSUMgY29uZmlndXJhdGlvbi4gU2ltaWxhcmx5IGFz IE9yYW5nZVBJIFplcm8gZ290IGhhbmRsZWQuCgpDb3JyZWN0LgoKPiAKPiBOb3QgdG8gbWVudGlv biwgdGhhdCBpdCBsb29rcyBsaWtlIGFyY2gvYXJtNjQvYm9vdC9kdHMvYWxsd2lubmVyL3N1bjUw aS1oNjE4LXRyYW5zcGVlZC04azYxOC10LmR0cyBhbHNvIGhhcyB2ZXJ5IHNpbWlsYXIgY29uZmln dXJhdGlvbiB0byBteSBUOTUgYm94LiBRdWVzdGlvbiBpcyBzaG91bGQgd2UgbWl4IHVwIHRoZSBj b21wYXRpYmxlIHN0cmluZ3MgZm9yIFNvQz8KPiBJIGtub3cgdGhhdCBINjE2IGFuZCBINjE4IGFy ZSBhbG1vc3QgaWRlbnRpY2FsIFNvQ3MsIGJ1dCBpZiBpdCdzIG5vdCBvbmx5IGEgbWF0dGVyIG9m IGRvY3VtZW50YXRpb24gaXQncyBzdGlsbCBiZXR0ZXIgaWRlYSB0byBwdXNoIG5ldyBkdHMuCgpO b3Qgc3VyZSB3aGF0IGRvIHlvdSBtZWFuLiBXZSBjYW4gbWl4IGFuZCBtYXRjaCB3aGF0ZXZlciBE VFNJIHdlIHdhbnQuIEhvd2V2ZXIsCmJvYXJkIGNvbXBhdGlibGUgcmVmbGVjdCBTb0MgaW4gdGhl bS4gU28geWVzLCBpZiBpdCBtYWtlIHNlbnNlLCBUcmFuc3BlZWQgOGs2MTgtdApjYW4gc2hhcmUg c2FtZSBjb21tb24gRFRTSSwganVzdCBib2FyZCBsZXZlbCBEVFMgd2lsbCBoYXZlIEg2MTYgY29t cGF0aWJsZS4KCkJlc3QgcmVnYXJkcywKSmVybmVqCgo+IAo+IEJlc3QgUmVnYXJkcywKPiBLYW1p bAo+IAo+ID4+IEkgYmVsaWV2ZSB0aGVzZSBib2FyZHMgYXJlIHR3byBkaWZmZXJlbnQgcmV2aXNp b25zIGFuZCB0aGUgb25lIHdpdGggCj4gPj4gQVhQMzEzQSBpcyBhIG5ld2VyIG9uZSwgYmVzaWRl cyBpbmNvcnJlY3RseSBsYWJlbCBhcyB2My4wLiBTaGFyaW5nIAo+ID4+IGNvbW1vbiBjb25maWd1 cmF0aW9uIGJldHdlZW4gYm94ZXMgaXMgYWxzbyBhIGdvb2QgaWRlYSBidXQgZm9yIHRoaXMgCj4g Pj4gc3BlY2lmaWMgY29uZmlndXJhdGlvbiBJIHdvdWxkIGJlIGNhdXRpb3VzLiBGcm9tIG15IGV4 cGVyaWVuY2Ugd2l0aCB0aGlzIAo+ID4+IGJvYXJkIHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24g Zm9yIFg5NiBNYXRlIGlzIG5vdCB3b3JraW5nIGF0IGFsbC4gSSAKPiA+PiBzdXNwZWN0IGJlY2F1 c2Ugb2YgdGhlIFBNSUMgYW5kIERSQU0gZGlmZmVyZW5jZXMuCj4gPj4KPiA+PiBNZW1vcnkgaW5z dGFsbGVkIGluIFg5NiBNYXRlIGlzIEREUjNMIGFuZCBpbiBtaW5lIFQ5NSBpdCdzIEREUjMsIGh5 bml4IAo+ID4+IEg1VFEyRzQzQkZSLCB0aGF0IHJlcXVpcmVzIDEuNVYgdG8gb3BlcmF0ZS4KPiA+ IFBNSUMgaXMgaW1wb3J0YW50IGRpZmZlcmVuY2UsIHllcywgYnV0IG5vdCBEUkFNLiBERFIzTCBp cyBjb21wbGV0ZWx5IGNvbXBhdGlibGUKPiA+IHdpdGggRERSMy4gSXQganVzdCBhZGRpdGlvbmFs bHkgc3VwcG9ydHMgbG93ZXIgdm9sdGFnZXMuIEFkZGl0aW9uYWxseSwgTGludXgKPiA+IGRvZXNu J3QgY2FyZSBhYm91dCBEUkFNIHR5cGUgYW5kIGFsbC4gSXQncyBmaXJtd2FyZSByZXNwb25zaWJp bGl0eSB0byBwcm9wZXJseQo+ID4gaW5pdGlhbGl6ZSBpdC4KPiA+Cj4gPiBCZXN0IHJlZ2FyZHMs Cj4gPiBKZXJuZWoKPiA+Cj4gPj4gVGhlIHJlc3Qgb2YgY29uZmlndXJhdGlvbiBmb3IgYm90aCBi b2FyZHMsIGxpa2UgSERNSSwgTU1DLCBFUEhZIGFuZCAKPiA+PiBhdWRpbyBjb2RlYyBzZWVtcyB0 byBiZSB0aGUgc2FtZSBhY3Jvc3MgYWxtb3N0IGFsbCBINjE2LWJhc2VkIGJveGVzIHRoYXQgCj4g Pj4gSSd2ZSByZXNlYXJjaGVkLgo+ID4+Cj4gPj4KPiA+PiBNb3Jlb3ZlciBwbGVhc2UgbGV0IG1l IHVwZGF0ZSB0aGUgcGF0Y2hlcyBhbmQgc2VuZCB2MiB0aGF0IGFsaWducyB3aXRoIAo+ID4+IG1h aW5saW5lIGJyYW5jaC4gSSd2ZSBpbmNvcnJlY3RseSBhc3N1bWVkIHRvIHVzZSBzdW54aSBmb3Jr IGluc3RlYWQgb2YgCj4gPj4gbWFzdGVyLiBTb3JyeSEKPiA+Pgo+ID4+IFcgZG5pdSAxMy4wMy4y MDI0IG8gMTk6MDAsIEplcm5laiDFoGtyYWJlYyBwaXN6ZToKPiA+Pj4gRG5lIHNyZWRhLCAxMy4g bWFyZWMgMjAyNCBvYiAxODozODowOCBDRVQgamUgQW5kcmUgUHJ6eXdhcmEgbmFwaXNhbChhKToK PiA+Pj4+IE9uIFdlZCwgMTMgTWFyIDIwMjQgMTg6MjU6MTQgKzAxMDAKPiA+Pj4+IEplcm5laiDF oGtyYWJlYyA8amVybmVqLnNrcmFiZWNAZ21haWwuY29tPiB3cm90ZToKPiA+Pj4+Cj4gPj4+Pj4g SGkgS2FtaWwhCj4gPj4+Pj4KPiA+Pj4+PiBEbmUgcG9uZWRlbGplaywgMTEuIG1hcmVjIDIwMjQg b2IgMTg6NDc6NDcgQ0VUIGplIEthbWlsIEthc3BlcnNraSBuYXBpc2FsKGEpOgo+ID4+Pj4+PiBU OTUgaXMgYSBtb3N0IGNvbW1vbmx5IGtub3duIGZvciBiZWluZyBhIGJveCB3aXRoIGEgcHJlLWlu c3RhbGxlZCBtYWx3YXJlLgo+ID4+Pj4+PiBJdCB1c2VzIEFsbHdpbm5lciBINjE2IGFuZCBjb21l cyB3aXRoIGVNTUMgYW5kIEREUjMgbWVtb3J5Lgo+ID4+Pj4+PiBUaGlzIGRldmljZSBjb21lcyB3 aXRoIHR3byB2ZXJzaW9ucyAtIG9uZSB3aXRoIEFYUDMwNSBQTUlDIGFuZCBhbm90aGVyIHdpdGgg QVhQMzEzIFBNSUMuCj4gPj4+Pj4gSSBoYXZlIHRoaXMgYm9hcmQgYW5kIGl0IGFsd2F5cyBmZWx0 IGxpa2UgYSBjbG9uZSBvZiBYOTYgTWF0ZSwgd2hpY2ggaXMKPiA+Pj4+PiBhbHJlYWR5IHN1cHBv cnRlZCBpbiBrZXJuZWwsIGV4Y2VwdCBmb3IgYnJva2VuIHNkIGNhcmQgZGV0ZWN0aW9uLiBXb3Vs ZCBpdAo+ID4+Pj4+IG1ha2Ugc2Vuc2UgdG8gdW5pZnkgdGhvc2UgdHdvIGJvYXJkcyBhbmQganVz dCBvdmVyd3JpdGUgb3IgdXBkYXRlIHBhcnRzIGhlcmUKPiA+Pj4+PiB0aGF0IGFyZSBub3QgdGhl IHNhbWU/Cj4gPj4+PiBJIHRoaW5rIHRoZSBib3ggeW91IGhhdmUgaXMgYW4gb2xkZXIgb25lLCB3 aXRoIHRoZSBBWFAzMDU/IElJVUMsIHRoaXMgaXMKPiA+Pj4+IGFib3V0IGEgbmV3ZXIgcmV2aXNp b24gd2l0aCB0aGUgQVhQMzEzLiBUaGVyZSBhcmUgcXVpdGUgc29tZSBkaWZmZXJlbmNlcwo+ID4+ Pj4gYmV0d2VlbiB0aGUgdHdvIFBNSUNzLCB0aG91Z2ggaXQgbWlnaHQgc3RpbGwgbWFrZSBzZW5z ZSB0byBzaGFyZSB0aGUgRFRzLAo+ID4+Pj4gc2VlIHRoZSBPcmFuZ2VQaSBaZXJvWzIzXS4KPiA+ Pj4gUmlnaHQsIG1pbmUgaXMgd2l0aCBBWFAzMDUuIEl0IGhhcyAiVDk1TUFYIHY0LjAiIHByaW50 ZWQgb24gUENCLgo+ID4+Pgo+ID4+PiBLYW1pbCwgZG9lcyB5b3VyIGJvYXJkIGFsc28gaGF2ZSAi TUFYIiBtZW50aW9uZWQgc29tZXdoZXJlPwo+ID4+Pgo+ID4+PiBCZXN0IHJlZ2FyZHMsCj4gPj4+ IEplcm5lago+ID4+Pgo+ID4+Pj4gQ2hlZXJzLAo+ID4+Pj4gQW5kcmUKPiA+Pj4+Cj4gPj4+Pj4+ IEthbWlsIEthc3BlcnNraSAoMyk6Cj4gPj4+Pj4+ICAgIGR0LWJpbmRpbmdzOiB2ZW5kb3ItcHJl Zml4ZXM6IHN1bnhpOiBhZGQgVDk1IHRvIHZlbmRvci1wcmVmaXhlcwo+ID4+Pj4+PiAgICBkdC1i aW5kaW5nczogYXJtOiBzdW54aTogYWRkIHQ5NSBjb21wYXRpYmxlIHN0cmluZyB0byBsaXN0IG9m IGtub3duCj4gPj4+Pj4+ICAgICAgYm9hcmRzCj4gPj4+Pj4+ICAgIGR0czogYXJtNjQ6IHN1bnhp OiBhZGQgaW5pdGlhbCBzdXBwb3J0IGZvciBUOTUgQVhQMzEzIHR2IGJveAo+ID4+Pj4+Pgo+ID4+ Pj4+PiAgIC4uLi9kZXZpY2V0cmVlL2JpbmRpbmdzL2FybS9zdW54aS55YW1sICAgICAgICB8ICAg NSArCj4gPj4+Pj4+ICAgLi4uL2RldmljZXRyZWUvYmluZGluZ3MvdmVuZG9yLXByZWZpeGVzLnlh bWwgIHwgICAyICsKPiA+Pj4+Pj4gICBhcmNoL2FybTY0L2Jvb3QvZHRzL2FsbHdpbm5lci9NYWtl ZmlsZSAgICAgICAgfCAgIDEgKwo+ID4+Pj4+PiAgIC4uLi9kdHMvYWxsd2lubmVyL3N1bjUwaS1o NjE2LXQ5NS1heHAzMTMuZHRzICB8IDEzOCArKysrKysrKysrKysrKysrKysKPiA+Pj4+Pj4gICA0 IGZpbGVzIGNoYW5nZWQsIDE0NiBpbnNlcnRpb25zKCspCj4gPj4+Pj4+ICAgY3JlYXRlIG1vZGUg MTAwNjQ0IGFyY2gvYXJtNjQvYm9vdC9kdHMvYWxsd2lubmVyL3N1bjUwaS1oNjE2LXQ5NS1heHAz MTMuZHRzCj4gPj4+Pj4+Cj4gPj4+Pj4+ICAgIAo+ID4+Pj4+Cj4gPj4+Pj4KPiA+Pj4+Pgo+ID4+ Pgo+ID4+Pgo+ID4KPiA+Cj4gPgo+IAo+IAoKCgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4 LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK