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=-6.6 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS 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 EA575C54FCB for ; Thu, 23 Apr 2020 18:20:16 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id BA5C620781 for ; Thu, 23 Apr 2020 18:20:16 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="UwrVBJsZ" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730235AbgDWSUP (ORCPT ); Thu, 23 Apr 2020 14:20:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51770 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729995AbgDWSUP (ORCPT ); Thu, 23 Apr 2020 14:20:15 -0400 Received: from mail-qk1-x741.google.com (mail-qk1-x741.google.com [IPv6:2607:f8b0:4864:20::741]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E4E99C09B042 for ; Thu, 23 Apr 2020 11:20:14 -0700 (PDT) Received: by mail-qk1-x741.google.com with SMTP id c63so7475533qke.2 for ; Thu, 23 Apr 2020 11:20:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=j4Gr42DIWiKl6eQeKg3rq/cPMMusL6SIoFXxct0KIAg=; b=UwrVBJsZzOzXwdEsTMcl+KRh/0QCgS9dn94FqtTs7Af5un97fe/TH6xbtKSthwk9RV /JAncl7NeMRjoBqtFhJfzf0fnm6zua2BizvrpdqAOwUzYImfQ9ltXKGZotJkfmdh1rUT qgS8ctAOT/lyFv1AJxHNDZIVElxDLeJU7Z2vNOqbLL5VtPP+BJO6U2wLccJjiwYQQFhd roT3nP7FW4McxdB+Rkob/nbB7l1HhM+L/El6WPrntM1ZUuI+STtoY6dBD7lXbLwO4whQ V84FIP1vXoiEv98UJP8pF/2dgfFb3sl1R5XEOpBDtpZeNNPl9Fodyc+sNqtcd5pl8zo6 tT9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=j4Gr42DIWiKl6eQeKg3rq/cPMMusL6SIoFXxct0KIAg=; b=gGrLEeLnewunfvkG6eq1GCpIIFaZoJHWyEmx2fJQBC5yM8nBUZKb4ega0lYA1bTz4i S+vvDpBXptE1yTdMczpALHKz8CBUcyPqVABL8baEtOFTwU/qAuEvCcz/dIf3880m9khh Yq3ZVskFYdVSkqOEAVNftIelZXq+0fCJPeKrbLx4KhhrsUR9aur9m31w+dfjD0OYmDs4 rHf3+pD6vx4xi7/q3kCsATWuZwdCGWX8Jv+LdNtssEMwr+XWgRgqqi8+9HNEbKhM3XOk JBSnDROqB168cSYjS2i4c49E1Vs+AELR3nyRRQBwZmOoGzvNriRHoc+Z4gRpiV4baBVO rtiQ== X-Gm-Message-State: AGi0Pubq6nGoyj0WPibAb40RH5koVKJmc9aPVnEYZ7XNpvansJrdy/zj EmJMYyNcOkkSAM+RPRmhxsm3lh8xXnLluECNK8o= X-Google-Smtp-Source: APiQypLydQuI84sE+VTN65AOkbQz72bsQCoCUOfojli0YF5UAG8nFoefn5Q7DW+gilT5gA9Bx/7hZNKjfOTi60djObQ= X-Received: by 2002:a37:49c7:: with SMTP id w190mr4982758qka.402.1587666013842; Thu, 23 Apr 2020 11:20:13 -0700 (PDT) MIME-Version: 1.0 References: <1584689540-5227-1-git-send-email-weiyi.lu@mediatek.com> <1584689540-5227-4-git-send-email-weiyi.lu@mediatek.com> In-Reply-To: <1584689540-5227-4-git-send-email-weiyi.lu@mediatek.com> From: Enric Balletbo Serra Date: Thu, 23 Apr 2020 20:20:01 +0200 Message-ID: Subject: Re: [PATCH v13 03/11] soc: mediatek: Add basic_clk_name to scp_power_data To: Weiyi Lu Cc: Matthias Brugger , Nicolas Boichat , Rob Herring , Sascha Hauer , James Liao , srv_heupstream , linux-kernel , Fan Chen , "moderated list:ARM/Mediatek SoC support" , Linux ARM Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Weiyi Lu, Thank you for your patch. Missatge de Weiyi Lu del dia dv., 20 de mar=C3=A7 2020 a les 8:33: > > Try to stop extending the clk_id or clk_names if there are > more and more new BASIC clocks. To get its own clocks by the > basic_clk_name of each power domain. > And then use basic_clk_name strings for all compatibles, instead of > mixing clk_id and clk_name. > > Signed-off-by: Weiyi Lu > Reviewed-by: Nicolas Boichat > --- > drivers/soc/mediatek/mtk-scpsys.c | 138 +++++++++++++-------------------= ------ > 1 file changed, 45 insertions(+), 93 deletions(-) > > diff --git a/drivers/soc/mediatek/mtk-scpsys.c b/drivers/soc/mediatek/mtk= -scpsys.c > index f669d37..db35a28 100644 > --- a/drivers/soc/mediatek/mtk-scpsys.c > +++ b/drivers/soc/mediatek/mtk-scpsys.c > @@ -78,34 +78,6 @@ > #define PWR_STATUS_HIF1 BIT(26) /* MT7622 */ > #define PWR_STATUS_WB BIT(27) /* MT7622 */ > > -enum clk_id { > - CLK_NONE, > - CLK_MM, > - CLK_MFG, > - CLK_VENC, > - CLK_VENC_LT, > - CLK_ETHIF, > - CLK_VDEC, > - CLK_HIFSEL, > - CLK_JPGDEC, > - CLK_AUDIO, > - CLK_MAX, > -}; > - > -static const char * const clk_names[] =3D { > - NULL, > - "mm", > - "mfg", > - "venc", > - "venc_lt", > - "ethif", > - "vdec", > - "hif_sel", > - "jpgdec", > - "audio", > - NULL, > -}; > - > #define MAX_CLKS 3 > > /** > @@ -116,7 +88,7 @@ enum clk_id { > * @sram_pdn_bits: The mask for sram power control bits. > * @sram_pdn_ack_bits: The mask for sram power control acked bits. > * @bus_prot_mask: The mask for single step bus protection. > - * @clk_id: The basic clocks required by this power domain. > + * @basic_clk_name: The basic clocks required by this power domain. nit: what's the point on telling it basic_? why not just clk_names? > * @caps: The flag for active wake-up action. > */ > struct scp_domain_data { > @@ -126,7 +98,7 @@ struct scp_domain_data { > u32 sram_pdn_bits; > u32 sram_pdn_ack_bits; > u32 bus_prot_mask; > - enum clk_id clk_id[MAX_CLKS]; > + const char *basic_clk_name[MAX_CLKS]; > u8 caps; > }; > > @@ -411,12 +383,23 @@ static int scpsys_power_off(struct generic_pm_domai= n *genpd) > return ret; > } > > -static void init_clks(struct platform_device *pdev, struct clk **clk) > +static int init_basic_clks(struct platform_device *pdev, struct clk **cl= k, > + const char * const *name) > { > int i; > > - for (i =3D CLK_NONE + 1; i < CLK_MAX; i++) > - clk[i] =3D devm_clk_get(&pdev->dev, clk_names[i]); > + for (i =3D 0; i < MAX_CLKS && name[i]; i++) { > + clk[i] =3D devm_clk_get(&pdev->dev, name[i]); > + > + if (IS_ERR(clk[i])) { > + dev_err(&pdev->dev, > + "get basic clk %s fail %ld\n", > + name[i], PTR_ERR(clk[i])); devm_clk_get() will already print an error if fails, this print is redundant, so you can remove it. > + return PTR_ERR(clk[i]); > + } > + } > + > + return 0; > } > > static struct scp *init_scp(struct platform_device *pdev, > @@ -426,9 +409,8 @@ static struct scp *init_scp(struct platform_device *p= dev, > { > struct genpd_onecell_data *pd_data; > struct resource *res; > - int i, j; > + int i, ret; > struct scp *scp; > - struct clk *clk[CLK_MAX]; > > scp =3D devm_kzalloc(&pdev->dev, sizeof(*scp), GFP_KERNEL); > if (!scp) > @@ -481,8 +463,6 @@ static struct scp *init_scp(struct platform_device *p= dev, > > pd_data->num_domains =3D num; > > - init_clks(pdev, clk); > - > for (i =3D 0; i < num; i++) { > struct scp_domain *scpd =3D &scp->domains[i]; > struct generic_pm_domain *genpd =3D &scpd->genpd; > @@ -493,17 +473,9 @@ static struct scp *init_scp(struct platform_device *= pdev, > > scpd->data =3D data; > > - for (j =3D 0; j < MAX_CLKS && data->clk_id[j]; j++) { > - struct clk *c =3D clk[data->clk_id[j]]; > - > - if (IS_ERR(c)) { > - dev_err(&pdev->dev, "%s: clk unavailable\= n", > - data->name); > - return ERR_CAST(c); > - } > - > - scpd->clk[j] =3D c; > - } > + ret =3D init_basic_clks(pdev, scpd->clk, data->basic_clk_= name); > + if (ret) > + return ERR_PTR(ret); > > genpd->name =3D data->name; > genpd->power_off =3D scpsys_power_off; > @@ -560,7 +532,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_CONN_PWR_CON, > .bus_prot_mask =3D MT2701_TOP_AXI_PROT_EN_CONN_M | > MT2701_TOP_AXI_PROT_EN_CONN_S, > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2701_POWER_DOMAIN_DISP] =3D { > @@ -568,7 +539,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .sta_mask =3D PWR_STATUS_DISP, > .ctl_offs =3D SPM_DIS_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > - .clk_id =3D {CLK_MM}, > + .basic_clk_name =3D {"mm"}, > .bus_prot_mask =3D MT2701_TOP_AXI_PROT_EN_MM_M0, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > @@ -578,7 +549,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_MFG_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(12, 12), > - .clk_id =3D {CLK_MFG}, > + .basic_clk_name =3D {"mfg"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2701_POWER_DOMAIN_VDEC] =3D { > @@ -587,7 +558,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_VDE_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(12, 12), > - .clk_id =3D {CLK_MM}, > + .basic_clk_name =3D {"mm"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2701_POWER_DOMAIN_ISP] =3D { > @@ -596,7 +567,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_ISP_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(13, 12), > - .clk_id =3D {CLK_MM}, > + .basic_clk_name =3D {"mm"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2701_POWER_DOMAIN_BDP] =3D { > @@ -604,7 +575,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .sta_mask =3D PWR_STATUS_BDP, > .ctl_offs =3D SPM_BDP_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2701_POWER_DOMAIN_ETH] =3D { > @@ -613,7 +583,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_ETH_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_ETHIF}, > + .basic_clk_name =3D {"ethif"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2701_POWER_DOMAIN_HIF] =3D { > @@ -622,14 +592,13 @@ static void mtk_register_power_domains(struct platf= orm_device *pdev, > .ctl_offs =3D SPM_HIF_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_ETHIF}, > + .basic_clk_name =3D {"ethif"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2701_POWER_DOMAIN_IFR_MSC] =3D { > .name =3D "ifr_msc", > .sta_mask =3D PWR_STATUS_IFR_MSC, > .ctl_offs =3D SPM_IFR_MSC_PWR_CON, > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > }; > @@ -644,7 +613,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_DIS_PWR_CON, > .sram_pdn_bits =3D GENMASK(8, 8), > .sram_pdn_ack_bits =3D GENMASK(12, 12), > - .clk_id =3D {CLK_MM}, > + .basic_clk_name =3D {"mm"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2712_POWER_DOMAIN_VDEC] =3D { > @@ -653,7 +622,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_VDE_PWR_CON, > .sram_pdn_bits =3D GENMASK(8, 8), > .sram_pdn_ack_bits =3D GENMASK(12, 12), > - .clk_id =3D {CLK_MM, CLK_VDEC}, > + .basic_clk_name =3D {"mm", "vdec"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2712_POWER_DOMAIN_VENC] =3D { > @@ -662,7 +631,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_VEN_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_MM, CLK_VENC, CLK_JPGDEC}, > + .basic_clk_name =3D {"mm", "venc", "jpgdec"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2712_POWER_DOMAIN_ISP] =3D { > @@ -671,7 +640,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_ISP_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(13, 12), > - .clk_id =3D {CLK_MM}, > + .basic_clk_name =3D {"mm"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2712_POWER_DOMAIN_AUDIO] =3D { > @@ -680,7 +649,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_AUDIO_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_AUDIO}, > + .basic_clk_name =3D {"audio"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2712_POWER_DOMAIN_USB] =3D { > @@ -689,7 +658,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_USB_PWR_CON, > .sram_pdn_bits =3D GENMASK(10, 8), > .sram_pdn_ack_bits =3D GENMASK(14, 12), > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2712_POWER_DOMAIN_USB2] =3D { > @@ -698,7 +666,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_USB2_PWR_CON, > .sram_pdn_bits =3D GENMASK(10, 8), > .sram_pdn_ack_bits =3D GENMASK(14, 12), > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2712_POWER_DOMAIN_MFG] =3D { > @@ -707,7 +674,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_MFG_PWR_CON, > .sram_pdn_bits =3D GENMASK(8, 8), > .sram_pdn_ack_bits =3D GENMASK(16, 16), > - .clk_id =3D {CLK_MFG}, > + .basic_clk_name =3D {"mfg"}, > .bus_prot_mask =3D BIT(14) | BIT(21) | BIT(23), > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > @@ -717,7 +684,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D 0x02c0, > .sram_pdn_bits =3D GENMASK(8, 8), > .sram_pdn_ack_bits =3D GENMASK(16, 16), > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2712_POWER_DOMAIN_MFG_SC2] =3D { > @@ -726,7 +692,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D 0x02c4, > .sram_pdn_bits =3D GENMASK(8, 8), > .sram_pdn_ack_bits =3D GENMASK(16, 16), > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT2712_POWER_DOMAIN_MFG_SC3] =3D { > @@ -735,7 +700,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D 0x01f8, > .sram_pdn_bits =3D GENMASK(8, 8), > .sram_pdn_ack_bits =3D GENMASK(16, 16), > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > }; > @@ -760,7 +724,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D 0x300, > .sram_pdn_bits =3D GENMASK(8, 8), > .sram_pdn_ack_bits =3D GENMASK(12, 12), > - .clk_id =3D {CLK_VDEC}, > + .basic_clk_name =3D {"vdec"}, > }, > [MT6797_POWER_DOMAIN_VENC] =3D { > .name =3D "venc", > @@ -768,7 +732,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D 0x304, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_NONE}, > }, > [MT6797_POWER_DOMAIN_ISP] =3D { > .name =3D "isp", > @@ -776,7 +739,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D 0x308, > .sram_pdn_bits =3D GENMASK(9, 8), > .sram_pdn_ack_bits =3D GENMASK(13, 12), > - .clk_id =3D {CLK_NONE}, > }, > [MT6797_POWER_DOMAIN_MM] =3D { > .name =3D "mm", > @@ -784,7 +746,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D 0x30C, > .sram_pdn_bits =3D GENMASK(8, 8), > .sram_pdn_ack_bits =3D GENMASK(12, 12), > - .clk_id =3D {CLK_MM}, > + .basic_clk_name =3D {"mm"}, > .bus_prot_mask =3D (BIT(1) | BIT(2)), > }, > [MT6797_POWER_DOMAIN_AUDIO] =3D { > @@ -793,7 +755,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D 0x314, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_NONE}, > }, > [MT6797_POWER_DOMAIN_MFG_ASYNC] =3D { > .name =3D "mfg_async", > @@ -801,7 +762,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D 0x334, > .sram_pdn_bits =3D 0, > .sram_pdn_ack_bits =3D 0, > - .clk_id =3D {CLK_MFG}, > + .basic_clk_name =3D {"mfg"}, > }, > [MT6797_POWER_DOMAIN_MJC] =3D { > .name =3D "mjc", > @@ -809,7 +770,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D 0x310, > .sram_pdn_bits =3D GENMASK(8, 8), > .sram_pdn_ack_bits =3D GENMASK(12, 12), > - .clk_id =3D {CLK_NONE}, > }, > }; > > @@ -834,7 +794,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_ETHSYS_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_NONE}, > .bus_prot_mask =3D MT7622_TOP_AXI_PROT_EN_ETHSYS, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > @@ -844,7 +803,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_HIF0_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_HIFSEL}, > + .basic_clk_name =3D {"hif_sel"}, > .bus_prot_mask =3D MT7622_TOP_AXI_PROT_EN_HIF0, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > @@ -854,7 +813,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_HIF1_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_HIFSEL}, > + .basic_clk_name =3D {"hif_sel"}, > .bus_prot_mask =3D MT7622_TOP_AXI_PROT_EN_HIF1, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > @@ -864,7 +823,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_WB_PWR_CON, > .sram_pdn_bits =3D 0, > .sram_pdn_ack_bits =3D 0, > - .clk_id =3D {CLK_NONE}, > .bus_prot_mask =3D MT7622_TOP_AXI_PROT_EN_WB, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP | MTK_SCPD_FWAIT_SRAM, > }, > @@ -881,7 +839,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_CONN_PWR_CON, > .bus_prot_mask =3D MT2701_TOP_AXI_PROT_EN_CONN_M | > MT2701_TOP_AXI_PROT_EN_CONN_S, > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT7623A_POWER_DOMAIN_ETH] =3D { > @@ -890,7 +847,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_ETH_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_ETHIF}, > + .basic_clk_name =3D {"ethif"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT7623A_POWER_DOMAIN_HIF] =3D { > @@ -899,14 +856,13 @@ static void mtk_register_power_domains(struct platf= orm_device *pdev, > .ctl_offs =3D SPM_HIF_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_ETHIF}, > + .basic_clk_name =3D {"ethif"}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT7623A_POWER_DOMAIN_IFR_MSC] =3D { > .name =3D "ifr_msc", > .sta_mask =3D PWR_STATUS_IFR_MSC, > .ctl_offs =3D SPM_IFR_MSC_PWR_CON, > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > }; > @@ -922,7 +878,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_VDE_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(12, 12), > - .clk_id =3D {CLK_MM}, > + .basic_clk_name =3D {"mm"}, > }, > [MT8173_POWER_DOMAIN_VENC] =3D { > .name =3D "venc", > @@ -930,7 +886,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_VEN_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_MM, CLK_VENC}, > + .basic_clk_name =3D {"mm", "venc"}, > }, > [MT8173_POWER_DOMAIN_ISP] =3D { > .name =3D "isp", > @@ -938,7 +894,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_ISP_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(13, 12), > - .clk_id =3D {CLK_MM}, > + .basic_clk_name =3D {"mm"}, > }, > [MT8173_POWER_DOMAIN_MM] =3D { > .name =3D "mm", > @@ -946,7 +902,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_DIS_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(12, 12), > - .clk_id =3D {CLK_MM}, > + .basic_clk_name =3D {"mm"}, > .bus_prot_mask =3D MT8173_TOP_AXI_PROT_EN_MM_M0 | > MT8173_TOP_AXI_PROT_EN_MM_M1, > }, > @@ -956,7 +912,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_VEN2_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_MM, CLK_VENC_LT}, > + .basic_clk_name =3D {"mm", "venc_lt"}, > }, > [MT8173_POWER_DOMAIN_AUDIO] =3D { > .name =3D "audio", > @@ -964,7 +920,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_AUDIO_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_NONE}, > }, > [MT8173_POWER_DOMAIN_USB] =3D { > .name =3D "usb", > @@ -972,7 +927,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_USB_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(15, 12), > - .clk_id =3D {CLK_NONE}, > .caps =3D MTK_SCPD_ACTIVE_WAKEUP, > }, > [MT8173_POWER_DOMAIN_MFG_ASYNC] =3D { > @@ -981,7 +935,7 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_MFG_ASYNC_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D 0, > - .clk_id =3D {CLK_MFG}, > + .basic_clk_name =3D {"mfg"}, > }, > [MT8173_POWER_DOMAIN_MFG_2D] =3D { > .name =3D "mfg_2d", > @@ -989,7 +943,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_MFG_2D_PWR_CON, > .sram_pdn_bits =3D GENMASK(11, 8), > .sram_pdn_ack_bits =3D GENMASK(13, 12), > - .clk_id =3D {CLK_NONE}, > }, > [MT8173_POWER_DOMAIN_MFG] =3D { > .name =3D "mfg", > @@ -997,7 +950,6 @@ static void mtk_register_power_domains(struct platfor= m_device *pdev, > .ctl_offs =3D SPM_MFG_PWR_CON, > .sram_pdn_bits =3D GENMASK(13, 8), > .sram_pdn_ack_bits =3D GENMASK(21, 16), > - .clk_id =3D {CLK_NONE}, > .bus_prot_mask =3D MT8173_TOP_AXI_PROT_EN_MFG_S | > MT8173_TOP_AXI_PROT_EN_MFG_M0 | > MT8173_TOP_AXI_PROT_EN_MFG_M1 | > -- > 1.8.1.1.dirty > _______________________________________________ > Linux-mediatek mailing list > Linux-mediatek@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-mediatek 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=-6.5 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS 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 42357C54FD0 for ; Thu, 23 Apr 2020 18:21:21 +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 0F6182071C for ; Thu, 23 Apr 2020 18:21:21 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="PlBTxUiw"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="UwrVBJsZ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0F6182071C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mediatek-bounces+linux-mediatek=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: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=O97vPvFKUmDMcB64mraJvBqK1mBBJgylc2huB6wdAKM=; b=PlBTxUiw3XJaKA lGYDGLpEOCwAO0VmlRzIzAhhbz98wwhMYk5LtPtnUXtfuNUSZNmYM8jpNrgv1HGsezgW89lNAQAPl EBw7fQ+9whWJqY6AXOgI7/vs5RkKP1FCKdskf7zNuuyTyDQAVsd1oNTUkZlaIj7tSr1U3nshnIehE 4ZVJ0H6JlJa2yGdWYn9aqoGPdNErMv8QP+9i3PN6cHCeCxBu7QZBLOkOsKQSo+a/PB1goI4hzaahn 3q40npd8yq8DSQ9eQMG2F8kgVOdUDhoaHUdRQtwi6AGYRstxYfgy6+8VgKAqF9Xfd/AwHuA+t6AUr iUZsAKV4H2U8dVkXlCfw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jRgTI-0000IU-0w; Thu, 23 Apr 2020 18:21:12 +0000 Received: from mail-qk1-x744.google.com ([2607:f8b0:4864:20::744]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jRgSO-0007F0-9j; Thu, 23 Apr 2020 18:20:19 +0000 Received: by mail-qk1-x744.google.com with SMTP id l25so7473394qkk.3; Thu, 23 Apr 2020 11:20:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=j4Gr42DIWiKl6eQeKg3rq/cPMMusL6SIoFXxct0KIAg=; b=UwrVBJsZzOzXwdEsTMcl+KRh/0QCgS9dn94FqtTs7Af5un97fe/TH6xbtKSthwk9RV /JAncl7NeMRjoBqtFhJfzf0fnm6zua2BizvrpdqAOwUzYImfQ9ltXKGZotJkfmdh1rUT qgS8ctAOT/lyFv1AJxHNDZIVElxDLeJU7Z2vNOqbLL5VtPP+BJO6U2wLccJjiwYQQFhd roT3nP7FW4McxdB+Rkob/nbB7l1HhM+L/El6WPrntM1ZUuI+STtoY6dBD7lXbLwO4whQ V84FIP1vXoiEv98UJP8pF/2dgfFb3sl1R5XEOpBDtpZeNNPl9Fodyc+sNqtcd5pl8zo6 tT9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=j4Gr42DIWiKl6eQeKg3rq/cPMMusL6SIoFXxct0KIAg=; b=AqMdep9YmxXiw2v39L/BqwvR8IEsaR9VhsEF+PKPWbPnfN9i3xy5mqCk0djilMKuiS gizhGwvvJ0Z+ZxAMCkyJLd/62mZJuEZmytNs6KDQcdqP+W7IXXkLFwtYkJgm8VZuEHdK 4cdTGq++1rqrN/zwNCVHGjxWY7NHM+IbSk7XZonnlHhDmiMEc4OaNrdeh9ZIEmc3rvBJ UQzEzE7PzHX8RLgYAoBl8fMEQlKg8mCsy7VmloaBp0pE+TwkbVQUSgv1aIXzLful87so NNkcmznKRkRzlUErUIx/M6sfTCUZSYP4XxkvZGn0VyW/Cpb8q55ZUKgv1CEq1dVWuJ4W 06Xw== X-Gm-Message-State: AGi0PuYhCrNbWQl0rSiY+yKKJuqRkJxbCWhuNcWyVjpVLJOJ7IlJa4X+ nSYG9Mgf3cL9iT9hSvtn9dHSxRjx5HRf9J79uM4DNG4H X-Google-Smtp-Source: APiQypLydQuI84sE+VTN65AOkbQz72bsQCoCUOfojli0YF5UAG8nFoefn5Q7DW+gilT5gA9Bx/7hZNKjfOTi60djObQ= X-Received: by 2002:a37:49c7:: with SMTP id w190mr4982758qka.402.1587666013842; Thu, 23 Apr 2020 11:20:13 -0700 (PDT) MIME-Version: 1.0 References: <1584689540-5227-1-git-send-email-weiyi.lu@mediatek.com> <1584689540-5227-4-git-send-email-weiyi.lu@mediatek.com> In-Reply-To: <1584689540-5227-4-git-send-email-weiyi.lu@mediatek.com> From: Enric Balletbo Serra Date: Thu, 23 Apr 2020 20:20:01 +0200 Message-ID: Subject: Re: [PATCH v13 03/11] soc: mediatek: Add basic_clk_name to scp_power_data To: Weiyi Lu X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200423_112016_470678_5CEE4F59 X-CRM114-Status: GOOD ( 19.30 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Rob Herring , Nicolas Boichat , srv_heupstream , James Liao , linux-kernel , Fan Chen , "moderated list:ARM/Mediatek SoC support" , Sascha Hauer , Matthias Brugger , Linux ARM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org SGkgV2VpeWkgTHUsCgpUaGFuayB5b3UgZm9yIHlvdXIgcGF0Y2guCgpNaXNzYXRnZSBkZSBXZWl5 aSBMdSA8d2VpeWkubHVAbWVkaWF0ZWsuY29tPiBkZWwgZGlhIGR2LiwgMjAgZGUgbWFyw6cKMjAy MCBhIGxlcyA4OjMzOgo+Cj4gVHJ5IHRvIHN0b3AgZXh0ZW5kaW5nIHRoZSBjbGtfaWQgb3IgY2xr X25hbWVzIGlmIHRoZXJlIGFyZQo+IG1vcmUgYW5kIG1vcmUgbmV3IEJBU0lDIGNsb2Nrcy4gVG8g Z2V0IGl0cyBvd24gY2xvY2tzIGJ5IHRoZQo+IGJhc2ljX2Nsa19uYW1lIG9mIGVhY2ggcG93ZXIg ZG9tYWluLgo+IEFuZCB0aGVuIHVzZSBiYXNpY19jbGtfbmFtZSBzdHJpbmdzIGZvciBhbGwgY29t cGF0aWJsZXMsIGluc3RlYWQgb2YKPiBtaXhpbmcgY2xrX2lkIGFuZCBjbGtfbmFtZS4KPgo+IFNp Z25lZC1vZmYtYnk6IFdlaXlpIEx1IDx3ZWl5aS5sdUBtZWRpYXRlay5jb20+Cj4gUmV2aWV3ZWQt Ynk6IE5pY29sYXMgQm9pY2hhdCA8ZHJpbmtjYXRAY2hyb21pdW0ub3JnPgo+IC0tLQo+ICBkcml2 ZXJzL3NvYy9tZWRpYXRlay9tdGstc2Nwc3lzLmMgfCAxMzggKysrKysrKysrKysrKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KPiAgMSBmaWxlIGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKyksIDkz IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc29jL21lZGlhdGVrL210ay1z Y3BzeXMuYyBiL2RyaXZlcnMvc29jL21lZGlhdGVrL210ay1zY3BzeXMuYwo+IGluZGV4IGY2Njlk MzcuLmRiMzVhMjggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9zb2MvbWVkaWF0ZWsvbXRrLXNjcHN5 cy5jCj4gKysrIGIvZHJpdmVycy9zb2MvbWVkaWF0ZWsvbXRrLXNjcHN5cy5jCj4gQEAgLTc4LDM0 ICs3OCw2IEBACj4gICNkZWZpbmUgUFdSX1NUQVRVU19ISUYxICAgICAgICAgICAgICAgICAgICAg ICAgQklUKDI2KSAvKiBNVDc2MjIgKi8KPiAgI2RlZmluZSBQV1JfU1RBVFVTX1dCICAgICAgICAg ICAgICAgICAgQklUKDI3KSAvKiBNVDc2MjIgKi8KPgo+IC1lbnVtIGNsa19pZCB7Cj4gLSAgICAg ICBDTEtfTk9ORSwKPiAtICAgICAgIENMS19NTSwKPiAtICAgICAgIENMS19NRkcsCj4gLSAgICAg ICBDTEtfVkVOQywKPiAtICAgICAgIENMS19WRU5DX0xULAo+IC0gICAgICAgQ0xLX0VUSElGLAo+ IC0gICAgICAgQ0xLX1ZERUMsCj4gLSAgICAgICBDTEtfSElGU0VMLAo+IC0gICAgICAgQ0xLX0pQ R0RFQywKPiAtICAgICAgIENMS19BVURJTywKPiAtICAgICAgIENMS19NQVgsCj4gLX07Cj4gLQo+ IC1zdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGNsa19uYW1lc1tdID0gewo+IC0gICAgICAgTlVM TCwKPiAtICAgICAgICJtbSIsCj4gLSAgICAgICAibWZnIiwKPiAtICAgICAgICJ2ZW5jIiwKPiAt ICAgICAgICJ2ZW5jX2x0IiwKPiAtICAgICAgICJldGhpZiIsCj4gLSAgICAgICAidmRlYyIsCj4g LSAgICAgICAiaGlmX3NlbCIsCj4gLSAgICAgICAianBnZGVjIiwKPiAtICAgICAgICJhdWRpbyIs Cj4gLSAgICAgICBOVUxMLAo+IC19Owo+IC0KPiAgI2RlZmluZSBNQVhfQ0xLUyAgICAgICAzCj4K PiAgLyoqCj4gQEAgLTExNiw3ICs4OCw3IEBAIGVudW0gY2xrX2lkIHsKPiAgICogQHNyYW1fcGRu X2JpdHM6IFRoZSBtYXNrIGZvciBzcmFtIHBvd2VyIGNvbnRyb2wgYml0cy4KPiAgICogQHNyYW1f cGRuX2Fja19iaXRzOiBUaGUgbWFzayBmb3Igc3JhbSBwb3dlciBjb250cm9sIGFja2VkIGJpdHMu Cj4gICAqIEBidXNfcHJvdF9tYXNrOiBUaGUgbWFzayBmb3Igc2luZ2xlIHN0ZXAgYnVzIHByb3Rl Y3Rpb24uCj4gLSAqIEBjbGtfaWQ6IFRoZSBiYXNpYyBjbG9ja3MgcmVxdWlyZWQgYnkgdGhpcyBw b3dlciBkb21haW4uCj4gKyAqIEBiYXNpY19jbGtfbmFtZTogVGhlIGJhc2ljIGNsb2NrcyByZXF1 aXJlZCBieSB0aGlzIHBvd2VyIGRvbWFpbi4KCm5pdDogd2hhdCdzIHRoZSBwb2ludCBvbiB0ZWxs aW5nIGl0IGJhc2ljXz8gd2h5IG5vdCBqdXN0IGNsa19uYW1lcz8KCj4gICAqIEBjYXBzOiBUaGUg ZmxhZyBmb3IgYWN0aXZlIHdha2UtdXAgYWN0aW9uLgo+ICAgKi8KPiAgc3RydWN0IHNjcF9kb21h aW5fZGF0YSB7Cj4gQEAgLTEyNiw3ICs5OCw3IEBAIHN0cnVjdCBzY3BfZG9tYWluX2RhdGEgewo+ ICAgICAgICAgdTMyIHNyYW1fcGRuX2JpdHM7Cj4gICAgICAgICB1MzIgc3JhbV9wZG5fYWNrX2Jp dHM7Cj4gICAgICAgICB1MzIgYnVzX3Byb3RfbWFzazsKPiAtICAgICAgIGVudW0gY2xrX2lkIGNs a19pZFtNQVhfQ0xLU107Cj4gKyAgICAgICBjb25zdCBjaGFyICpiYXNpY19jbGtfbmFtZVtNQVhf Q0xLU107Cj4gICAgICAgICB1OCBjYXBzOwo+ICB9Owo+Cj4gQEAgLTQxMSwxMiArMzgzLDIzIEBA IHN0YXRpYyBpbnQgc2Nwc3lzX3Bvd2VyX29mZihzdHJ1Y3QgZ2VuZXJpY19wbV9kb21haW4gKmdl bnBkKQo+ICAgICAgICAgcmV0dXJuIHJldDsKPiAgfQo+Cj4gLXN0YXRpYyB2b2lkIGluaXRfY2xr cyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LCBzdHJ1Y3QgY2xrICoqY2xrKQo+ICtzdGF0 aWMgaW50IGluaXRfYmFzaWNfY2xrcyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LCBzdHJ1 Y3QgY2xrICoqY2xrLAo+ICsgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKiBjb25z dCAqbmFtZSkKPiAgewo+ICAgICAgICAgaW50IGk7Cj4KPiAtICAgICAgIGZvciAoaSA9IENMS19O T05FICsgMTsgaSA8IENMS19NQVg7IGkrKykKPiAtICAgICAgICAgICAgICAgY2xrW2ldID0gZGV2 bV9jbGtfZ2V0KCZwZGV2LT5kZXYsIGNsa19uYW1lc1tpXSk7Cj4gKyAgICAgICBmb3IgKGkgPSAw OyBpIDwgTUFYX0NMS1MgJiYgbmFtZVtpXTsgaSsrKSB7Cj4gKyAgICAgICAgICAgICAgIGNsa1tp XSA9IGRldm1fY2xrX2dldCgmcGRldi0+ZGV2LCBuYW1lW2ldKTsKPiArCj4gKyAgICAgICAgICAg ICAgIGlmIChJU19FUlIoY2xrW2ldKSkgewo+ICsgICAgICAgICAgICAgICAgICAgICAgIGRldl9l cnIoJnBkZXYtPmRldiwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJnZXQgYmFz aWMgY2xrICVzIGZhaWwgJWxkXG4iLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bmFtZVtpXSwgUFRSX0VSUihjbGtbaV0pKTsKCmRldm1fY2xrX2dldCgpIHdpbGwgYWxyZWFkeSBw cmludCBhbiBlcnJvciBpZiBmYWlscywgdGhpcyBwcmludCBpcwpyZWR1bmRhbnQsIHNvIHlvdSBj YW4gcmVtb3ZlIGl0LgoKCj4gKyAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFBUUl9FUlIo Y2xrW2ldKTsKPiArICAgICAgICAgICAgICAgfQo+ICsgICAgICAgfQo+ICsKPiArICAgICAgIHJl dHVybiAwOwo+ICB9Cj4KPiAgc3RhdGljIHN0cnVjdCBzY3AgKmluaXRfc2NwKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYsCj4gQEAgLTQyNiw5ICs0MDksOCBAQCBzdGF0aWMgc3RydWN0IHNj cCAqaW5pdF9zY3Aoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgewo+ICAgICAgICAg c3RydWN0IGdlbnBkX29uZWNlbGxfZGF0YSAqcGRfZGF0YTsKPiAgICAgICAgIHN0cnVjdCByZXNv dXJjZSAqcmVzOwo+IC0gICAgICAgaW50IGksIGo7Cj4gKyAgICAgICBpbnQgaSwgcmV0Owo+ICAg ICAgICAgc3RydWN0IHNjcCAqc2NwOwo+IC0gICAgICAgc3RydWN0IGNsayAqY2xrW0NMS19NQVhd Owo+Cj4gICAgICAgICBzY3AgPSBkZXZtX2t6YWxsb2MoJnBkZXYtPmRldiwgc2l6ZW9mKCpzY3Ap LCBHRlBfS0VSTkVMKTsKPiAgICAgICAgIGlmICghc2NwKQo+IEBAIC00ODEsOCArNDYzLDYgQEAg c3RhdGljIHN0cnVjdCBzY3AgKmluaXRfc2NwKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYs Cj4KPiAgICAgICAgIHBkX2RhdGEtPm51bV9kb21haW5zID0gbnVtOwo+Cj4gLSAgICAgICBpbml0 X2Nsa3MocGRldiwgY2xrKTsKPiAtCj4gICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbnVtOyBpKysp IHsKPiAgICAgICAgICAgICAgICAgc3RydWN0IHNjcF9kb21haW4gKnNjcGQgPSAmc2NwLT5kb21h aW5zW2ldOwo+ICAgICAgICAgICAgICAgICBzdHJ1Y3QgZ2VuZXJpY19wbV9kb21haW4gKmdlbnBk ID0gJnNjcGQtPmdlbnBkOwo+IEBAIC00OTMsMTcgKzQ3Myw5IEBAIHN0YXRpYyBzdHJ1Y3Qgc2Nw ICppbml0X3NjcChzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+Cj4gICAgICAgICAgICAg ICAgIHNjcGQtPmRhdGEgPSBkYXRhOwo+Cj4gLSAgICAgICAgICAgICAgIGZvciAoaiA9IDA7IGog PCBNQVhfQ0xLUyAmJiBkYXRhLT5jbGtfaWRbal07IGorKykgewo+IC0gICAgICAgICAgICAgICAg ICAgICAgIHN0cnVjdCBjbGsgKmMgPSBjbGtbZGF0YS0+Y2xrX2lkW2pdXTsKPiAtCj4gLSAgICAg ICAgICAgICAgICAgICAgICAgaWYgKElTX0VSUihjKSkgewo+IC0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZGV2X2VycigmcGRldi0+ZGV2LCAiJXM6IGNsayB1bmF2YWlsYWJsZVxuIiwK PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS0+bmFtZSk7Cj4g LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRVJSX0NBU1QoYyk7Cj4gLSAg ICAgICAgICAgICAgICAgICAgICAgfQo+IC0KPiAtICAgICAgICAgICAgICAgICAgICAgICBzY3Bk LT5jbGtbal0gPSBjOwo+IC0gICAgICAgICAgICAgICB9Cj4gKyAgICAgICAgICAgICAgIHJldCA9 IGluaXRfYmFzaWNfY2xrcyhwZGV2LCBzY3BkLT5jbGssIGRhdGEtPmJhc2ljX2Nsa19uYW1lKTsK PiArICAgICAgICAgICAgICAgaWYgKHJldCkKPiArICAgICAgICAgICAgICAgICAgICAgICByZXR1 cm4gRVJSX1BUUihyZXQpOwo+Cj4gICAgICAgICAgICAgICAgIGdlbnBkLT5uYW1lID0gZGF0YS0+ bmFtZTsKPiAgICAgICAgICAgICAgICAgZ2VucGQtPnBvd2VyX29mZiA9IHNjcHN5c19wb3dlcl9v ZmY7Cj4gQEAgLTU2MCw3ICs1MzIsNiBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJf ZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAgICAu Y3RsX29mZnMgPSBTUE1fQ09OTl9QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuYnVzX3Byb3Rf bWFzayA9IE1UMjcwMV9UT1BfQVhJX1BST1RfRU5fQ09OTl9NIHwKPiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBNVDI3MDFfVE9QX0FYSV9QUk9UX0VOX0NPTk5fUywKPiAtICAgICAg ICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4gICAgICAgICAgICAgICAgIC5jYXBzID0g TVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAgICAgIH0sCj4gICAgICAgICBbTVQyNzAxX1BP V0VSX0RPTUFJTl9ESVNQXSA9IHsKPiBAQCAtNTY4LDcgKzUzOSw3IEBAIHN0YXRpYyB2b2lkIG10 a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4g ICAgICAgICAgICAgICAgIC5zdGFfbWFzayA9IFBXUl9TVEFUVVNfRElTUCwKPiAgICAgICAgICAg ICAgICAgLmN0bF9vZmZzID0gU1BNX0RJU19QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuc3Jh bV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0g e0NMS19NTX0sCj4gKyAgICAgICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsibW0ifSwKPiAg ICAgICAgICAgICAgICAgLmJ1c19wcm90X21hc2sgPSBNVDI3MDFfVE9QX0FYSV9QUk9UX0VOX01N X00wLAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4g ICAgICAgICB9LAo+IEBAIC01NzgsNyArNTQ5LDcgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVy X3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAg ICAgICAgLmN0bF9vZmZzID0gU1BNX01GR19QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuc3Jh bV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5f YWNrX2JpdHMgPSBHRU5NQVNLKDEyLCAxMiksCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7 Q0xLX01GR30sCj4gKyAgICAgICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsibWZnIn0sCj4g ICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAgICAg IH0sCj4gICAgICAgICBbTVQyNzAxX1BPV0VSX0RPTUFJTl9WREVDXSA9IHsKPiBAQCAtNTg3LDcg KzU1OCw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9W REVfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDEx LCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxMiwg MTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NTX0sCj4gKyAgICAgICAgICAg ICAgIC5iYXNpY19jbGtfbmFtZSA9IHsibW0ifSwKPiAgICAgICAgICAgICAgICAgLmNhcHMgPSBN VEtfU0NQRF9BQ1RJVkVfV0FLRVVQLAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDI3MDFfUE9X RVJfRE9NQUlOX0lTUF0gPSB7Cj4gQEAgLTU5Niw3ICs1NjcsNyBAQCBzdGF0aWMgdm9pZCBtdGtf cmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAg ICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1fSVNQX1BXUl9DT04sCj4gICAgICAgICAgICAg ICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5z cmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTMsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNs a19pZCA9IHtDTEtfTU19LAo+ICsgICAgICAgICAgICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1t In0sCj4gICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAg ICAgICAgIH0sCj4gICAgICAgICBbTVQyNzAxX1BPV0VSX0RPTUFJTl9CRFBdID0gewo+IEBAIC02 MDQsNyArNTc1LDYgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3Ry dWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLnN0YV9tYXNrID0g UFdSX1NUQVRVU19CRFAsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9CRFBfUFdS X0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDExLCA4KSwK PiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4gICAgICAgICAgICAgICAg IC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAgICAgIH0sCj4gICAgICAgICBb TVQyNzAxX1BPV0VSX0RPTUFJTl9FVEhdID0gewo+IEBAIC02MTMsNyArNTgzLDcgQEAgc3RhdGlj IHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAq cGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX0VUSF9QV1JfQ09OLAo+ICAg ICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAg ICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDE1LCAxMiksCj4gLSAgICAgICAg ICAgICAgIC5jbGtfaWQgPSB7Q0xLX0VUSElGfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Ns a19uYW1lID0geyJldGhpZiJ9LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FD VElWRV9XQUtFVVAsCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UMjcwMV9QT1dFUl9ET01BSU5f SElGXSA9IHsKPiBAQCAtNjIyLDE0ICs1OTIsMTMgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVy X3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAg ICAgICAgLmN0bF9vZmZzID0gU1BNX0hJRl9QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuc3Jh bV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5f YWNrX2JpdHMgPSBHRU5NQVNLKDE1LCAxMiksCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7 Q0xLX0VUSElGfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Nsa19uYW1lID0geyJldGhpZiJ9 LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4gICAg ICAgICB9LAo+ICAgICAgICAgW01UMjcwMV9QT1dFUl9ET01BSU5fSUZSX01TQ10gPSB7Cj4gICAg ICAgICAgICAgICAgIC5uYW1lID0gImlmcl9tc2MiLAo+ICAgICAgICAgICAgICAgICAuc3RhX21h c2sgPSBQV1JfU1RBVFVTX0lGUl9NU0MsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQ TV9JRlJfTVNDX1BXUl9DT04sCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX05PTkV9 LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4gICAg ICAgICB9LAo+ICB9Owo+IEBAIC02NDQsNyArNjEzLDcgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lz dGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAg ICAgICAgICAgLmN0bF9vZmZzID0gU1BNX0RJU19QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAu c3JhbV9wZG5fYml0cyA9IEdFTk1BU0soOCwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bk bl9hY2tfYml0cyA9IEdFTk1BU0soMTIsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9 IHtDTEtfTU19LAo+ICsgICAgICAgICAgICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1tIn0sCj4g ICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAgICAg IH0sCj4gICAgICAgICBbTVQyNzEyX1BPV0VSX0RPTUFJTl9WREVDXSA9IHsKPiBAQCAtNjUzLDcg KzYyMiw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9W REVfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDgs IDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDEyLCAx MiksCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX01NLCBDTEtfVkRFQ30sCj4gKyAg ICAgICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsibW0iLCAidmRlYyJ9LAo+ICAgICAgICAg ICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4gICAgICAgICB9LAo+ICAg ICAgICAgW01UMjcxMl9QT1dFUl9ET01BSU5fVkVOQ10gPSB7Cj4gQEAgLTY2Miw3ICs2MzEsNyBA QCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1f ZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1fVkVOX1BXUl9D T04sCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4g ICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTUsIDEyKSwKPiAt ICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTU0sIENMS19WRU5DLCBDTEtfSlBHREVDfSwK PiArICAgICAgICAgICAgICAgLmJhc2ljX2Nsa19uYW1lID0geyJtbSIsICJ2ZW5jIiwgImpwZ2Rl YyJ9LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4g ICAgICAgICB9LAo+ICAgICAgICAgW01UMjcxMl9QT1dFUl9ET01BSU5fSVNQXSA9IHsKPiBAQCAt NjcxLDcgKzY0MCw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0 cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9 IFNQTV9JU1BfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5N QVNLKDExLCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFT SygxMywgMTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NTX0sCj4gKyAgICAg ICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsibW0ifSwKPiAgICAgICAgICAgICAgICAgLmNh cHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQLAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDI3 MTJfUE9XRVJfRE9NQUlOX0FVRElPXSA9IHsKPiBAQCAtNjgwLDcgKzY0OSw3IEBAIHN0YXRpYyB2 b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9BVURJT19QV1JfQ09OLAo+ICAg ICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAg ICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDE1LCAxMiksCj4gLSAgICAgICAg ICAgICAgIC5jbGtfaWQgPSB7Q0xLX0FVRElPfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Ns a19uYW1lID0geyJhdWRpbyJ9LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FD VElWRV9XQUtFVVAsCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UMjcxMl9QT1dFUl9ET01BSU5f VVNCXSA9IHsKPiBAQCAtNjg5LDcgKzY1OCw2IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9w b3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAg ICAgIC5jdGxfb2ZmcyA9IFNQTV9VU0JfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1f cGRuX2JpdHMgPSBHRU5NQVNLKDEwLCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fj a19iaXRzID0gR0VOTUFTSygxNCwgMTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NM S19OT05FfSwKPiAgICAgICAgICAgICAgICAgLmNhcHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQ LAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDI3MTJfUE9XRVJfRE9NQUlOX1VTQjJdID0gewo+ IEBAIC02OTgsNyArNjY2LDYgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFp bnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9v ZmZzID0gU1BNX1VTQjJfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMg PSBHRU5NQVNLKDEwLCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0g R0VOTUFTSygxNCwgMTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19OT05FfSwK PiAgICAgICAgICAgICAgICAgLmNhcHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQLAo+ICAgICAg ICAgfSwKPiAgICAgICAgIFtNVDI3MTJfUE9XRVJfRE9NQUlOX01GR10gPSB7Cj4gQEAgLTcwNyw3 ICs2NzQsNyBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1f TUZHX1BXUl9DT04sCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSyg4 LCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxNiwg MTYpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NRkd9LAo+ICsgICAgICAgICAg ICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1mZyJ9LAo+ICAgICAgICAgICAgICAgICAuYnVzX3By b3RfbWFzayA9IEJJVCgxNCkgfCBCSVQoMjEpIHwgQklUKDIzKSwKPiAgICAgICAgICAgICAgICAg LmNhcHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQLAo+ICAgICAgICAgfSwKPiBAQCAtNzE3LDcg KzY4NCw2IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IDB4MDJj MCwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDgsIDgpLAo+ICAg ICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDE2LCAxNiksCj4gLSAg ICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX05PTkV9LAo+ICAgICAgICAgICAgICAgICAuY2Fw cyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UMjcx Ml9QT1dFUl9ET01BSU5fTUZHX1NDMl0gPSB7Cj4gQEAgLTcyNiw3ICs2OTIsNiBAQCBzdGF0aWMg dm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpw ZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSAweDAyYzQsCj4gICAgICAgICAgICAg ICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSyg4LCA4KSwKPiAgICAgICAgICAgICAgICAgLnNy YW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxNiwgMTYpLAo+IC0gICAgICAgICAgICAgICAuY2xr X2lkID0ge0NMS19OT05FfSwKPiAgICAgICAgICAgICAgICAgLmNhcHMgPSBNVEtfU0NQRF9BQ1RJ VkVfV0FLRVVQLAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDI3MTJfUE9XRVJfRE9NQUlOX01G R19TQzNdID0gewo+IEBAIC03MzUsNyArNzAwLDYgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVy X3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAg ICAgICAgLmN0bF9vZmZzID0gMHgwMWY4LAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0 cyA9IEdFTk1BU0soOCwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9 IEdFTk1BU0soMTYsIDE2KSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0s Cj4gICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAg ICAgIH0sCj4gIH07Cj4gQEAgLTc2MCw3ICs3MjQsNyBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0 ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAg ICAgICAgICAuY3RsX29mZnMgPSAweDMwMCwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Jp dHMgPSBHRU5NQVNLKDgsIDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMg PSBHRU5NQVNLKDEyLCAxMiksCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX1ZERUN9 LAo+ICsgICAgICAgICAgICAgICAuYmFzaWNfY2xrX25hbWUgPSB7InZkZWMifSwKPiAgICAgICAg IH0sCj4gICAgICAgICBbTVQ2Nzk3X1BPV0VSX0RPTUFJTl9WRU5DXSA9IHsKPiAgICAgICAgICAg ICAgICAgLm5hbWUgPSAidmVuYyIsCj4gQEAgLTc2OCw3ICs3MzIsNiBAQCBzdGF0aWMgdm9pZCBt dGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSAweDMwNCwKPiAgICAgICAgICAgICAgICAgLnNy YW1fcGRuX2JpdHMgPSBHRU5NQVNLKDExLCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRu X2Fja19iaXRzID0gR0VOTUFTSygxNSwgMTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0g e0NMS19OT05FfSwKPiAgICAgICAgIH0sCj4gICAgICAgICBbTVQ2Nzk3X1BPV0VSX0RPTUFJTl9J U1BdID0gewo+ICAgICAgICAgICAgICAgICAubmFtZSA9ICJpc3AiLAo+IEBAIC03NzYsNyArNzM5 LDYgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRm b3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gMHgzMDgsCj4g ICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSyg5LCA4KSwKPiAgICAgICAg ICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxMywgMTIpLAo+IC0gICAgICAg ICAgICAgICAuY2xrX2lkID0ge0NMS19OT05FfSwKPiAgICAgICAgIH0sCj4gICAgICAgICBbTVQ2 Nzk3X1BPV0VSX0RPTUFJTl9NTV0gPSB7Cj4gICAgICAgICAgICAgICAgIC5uYW1lID0gIm1tIiwK PiBAQCAtNzg0LDcgKzc0Niw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21h aW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxf b2ZmcyA9IDB4MzBDLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0so OCwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTIs IDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTU19LAo+ICsgICAgICAgICAg ICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1tIn0sCj4gICAgICAgICAgICAgICAgIC5idXNfcHJv dF9tYXNrID0gKEJJVCgxKSB8IEJJVCgyKSksCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UNjc5 N19QT1dFUl9ET01BSU5fQVVESU9dID0gewo+IEBAIC03OTMsNyArNzU1LDYgQEAgc3RhdGljIHZv aWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRl diwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gMHgzMTQsCj4gICAgICAgICAgICAgICAg IC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFt X3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTUsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19p ZCA9IHtDTEtfTk9ORX0sCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UNjc5N19QT1dFUl9ET01B SU5fTUZHX0FTWU5DXSA9IHsKPiAgICAgICAgICAgICAgICAgLm5hbWUgPSAibWZnX2FzeW5jIiwK PiBAQCAtODAxLDcgKzc2Miw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21h aW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxf b2ZmcyA9IDB4MzM0LAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IDAsCj4gICAg ICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IDAsCj4gLSAgICAgICAgICAgICAgIC5j bGtfaWQgPSB7Q0xLX01GR30sCj4gKyAgICAgICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsi bWZnIn0sCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UNjc5N19QT1dFUl9ET01BSU5fTUpDXSA9 IHsKPiAgICAgICAgICAgICAgICAgLm5hbWUgPSAibWpjIiwKPiBAQCAtODA5LDcgKzc3MCw2IEBA IHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9k ZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IDB4MzEwLAo+ICAgICAg ICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soOCwgOCksCj4gICAgICAgICAgICAg ICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTIsIDEyKSwKPiAtICAgICAgICAgICAg ICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4gICAgICAgICB9LAo+ICB9Owo+Cj4gQEAgLTgzNCw3 ICs3OTQsNiBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1f RVRIU1lTX1BXUl9DT04sCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFT SygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0so MTUsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4gICAgICAg ICAgICAgICAgIC5idXNfcHJvdF9tYXNrID0gTVQ3NjIyX1RPUF9BWElfUFJPVF9FTl9FVEhTWVMs Cj4gICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAg ICAgIH0sCj4gQEAgLTg0NCw3ICs4MDMsNyBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93 ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAg ICAuY3RsX29mZnMgPSBTUE1fSElGMF9QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9w ZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNr X2JpdHMgPSBHRU5NQVNLKDE1LCAxMiksCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xL X0hJRlNFTH0sCj4gKyAgICAgICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsiaGlmX3NlbCJ9 LAo+ICAgICAgICAgICAgICAgICAuYnVzX3Byb3RfbWFzayA9IE1UNzYyMl9UT1BfQVhJX1BST1Rf RU5fSElGMCwKPiAgICAgICAgICAgICAgICAgLmNhcHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQ LAo+ICAgICAgICAgfSwKPiBAQCAtODU0LDcgKzgxMyw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdp c3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAg ICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9ISUYxX1BXUl9DT04sCj4gICAgICAgICAgICAgICAg IC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFt X3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTUsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19p ZCA9IHtDTEtfSElGU0VMfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Nsa19uYW1lID0geyJo aWZfc2VsIn0sCj4gICAgICAgICAgICAgICAgIC5idXNfcHJvdF9tYXNrID0gTVQ3NjIyX1RPUF9B WElfUFJPVF9FTl9ISUYxLAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElW RV9XQUtFVVAsCj4gICAgICAgICB9LAo+IEBAIC04NjQsNyArODIzLDYgQEAgc3RhdGljIHZvaWQg bXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwK PiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX1dCX1BXUl9DT04sCj4gICAgICAgICAg ICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gMCwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fj a19iaXRzID0gMCwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4gICAg ICAgICAgICAgICAgIC5idXNfcHJvdF9tYXNrID0gTVQ3NjIyX1RPUF9BWElfUFJPVF9FTl9XQiwK PiAgICAgICAgICAgICAgICAgLmNhcHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQIHwgTVRLX1ND UERfRldBSVRfU1JBTSwKPiAgICAgICAgIH0sCj4gQEAgLTg4MSw3ICs4MzksNiBAQCBzdGF0aWMg dm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpw ZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1fQ09OTl9QV1JfQ09OLAo+ICAg ICAgICAgICAgICAgICAuYnVzX3Byb3RfbWFzayA9IE1UMjcwMV9UT1BfQVhJX1BST1RfRU5fQ09O Tl9NIHwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNVDI3MDFfVE9QX0FYSV9Q Uk9UX0VOX0NPTk5fUywKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4g ICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAgICAg IH0sCj4gICAgICAgICBbTVQ3NjIzQV9QT1dFUl9ET01BSU5fRVRIXSA9IHsKPiBAQCAtODkwLDcg Kzg0Nyw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9F VEhfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDEx LCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxNSwg MTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19FVEhJRn0sCj4gKyAgICAgICAg ICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsiZXRoaWYifSwKPiAgICAgICAgICAgICAgICAgLmNh cHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQLAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDc2 MjNBX1BPV0VSX0RPTUFJTl9ISUZdID0gewo+IEBAIC04OTksMTQgKzg1NiwxMyBAQCBzdGF0aWMg dm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpw ZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1fSElGX1BXUl9DT04sCj4gICAg ICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAg ICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTUsIDEyKSwKPiAtICAgICAgICAg ICAgICAgLmNsa19pZCA9IHtDTEtfRVRISUZ9LAo+ICsgICAgICAgICAgICAgICAuYmFzaWNfY2xr X25hbWUgPSB7ImV0aGlmIn0sCj4gICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNU SVZFX1dBS0VVUCwKPiAgICAgICAgIH0sCj4gICAgICAgICBbTVQ3NjIzQV9QT1dFUl9ET01BSU5f SUZSX01TQ10gPSB7Cj4gICAgICAgICAgICAgICAgIC5uYW1lID0gImlmcl9tc2MiLAo+ICAgICAg ICAgICAgICAgICAuc3RhX21hc2sgPSBQV1JfU1RBVFVTX0lGUl9NU0MsCj4gICAgICAgICAgICAg ICAgIC5jdGxfb2ZmcyA9IFNQTV9JRlJfTVNDX1BXUl9DT04sCj4gLSAgICAgICAgICAgICAgIC5j bGtfaWQgPSB7Q0xLX05PTkV9LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FD VElWRV9XQUtFVVAsCj4gICAgICAgICB9LAo+ICB9Owo+IEBAIC05MjIsNyArODc4LDcgQEAgc3Rh dGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2Rldmlj ZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX1ZERV9QV1JfQ09OLAo+ ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAg ICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDEyLCAxMiksCj4gLSAgICAg ICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX01NfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Ns a19uYW1lID0geyJtbSJ9LAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDgxNzNfUE9XRVJfRE9N QUlOX1ZFTkNdID0gewo+ICAgICAgICAgICAgICAgICAubmFtZSA9ICJ2ZW5jIiwKPiBAQCAtOTMw LDcgKzg4Niw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVj dCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQ TV9WRU5fUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNL KDExLCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygx NSwgMTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NTSwgQ0xLX1ZFTkN9LAo+ ICsgICAgICAgICAgICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1tIiwgInZlbmMifSwKPiAgICAg ICAgIH0sCj4gICAgICAgICBbTVQ4MTczX1BPV0VSX0RPTUFJTl9JU1BdID0gewo+ICAgICAgICAg ICAgICAgICAubmFtZSA9ICJpc3AiLAo+IEBAIC05MzgsNyArODk0LDcgQEAgc3RhdGljIHZvaWQg bXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwK PiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX0lTUF9QV1JfQ09OLAo+ICAgICAgICAg ICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAgICAgICAg ICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDEzLCAxMiksCj4gLSAgICAgICAgICAgICAg IC5jbGtfaWQgPSB7Q0xLX01NfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Nsa19uYW1lID0g eyJtbSJ9LAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDgxNzNfUE9XRVJfRE9NQUlOX01NXSA9 IHsKPiAgICAgICAgICAgICAgICAgLm5hbWUgPSAibW0iLAo+IEBAIC05NDYsNyArOTAyLDcgQEAg c3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2Rl dmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX0RJU19QV1JfQ09O LAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAg ICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDEyLCAxMiksCj4gLSAg ICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX01NfSwKPiArICAgICAgICAgICAgICAgLmJhc2lj X2Nsa19uYW1lID0geyJtbSJ9LAo+ICAgICAgICAgICAgICAgICAuYnVzX3Byb3RfbWFzayA9IE1U ODE3M19UT1BfQVhJX1BST1RfRU5fTU1fTTAgfAo+ICAgICAgICAgICAgICAgICAgICAgICAgIE1U ODE3M19UT1BfQVhJX1BST1RfRU5fTU1fTTEsCj4gICAgICAgICB9LAo+IEBAIC05NTYsNyArOTEy LDcgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRm b3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX1ZFTjJf UFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDExLCA4 KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxNSwgMTIp LAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NTSwgQ0xLX1ZFTkNfTFR9LAo+ICsg ICAgICAgICAgICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1tIiwgInZlbmNfbHQifSwKPiAgICAg ICAgIH0sCj4gICAgICAgICBbTVQ4MTczX1BPV0VSX0RPTUFJTl9BVURJT10gPSB7Cj4gICAgICAg ICAgICAgICAgIC5uYW1lID0gImF1ZGlvIiwKPiBAQCAtOTY0LDcgKzkyMCw2IEBAIHN0YXRpYyB2 b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9BVURJT19QV1JfQ09OLAo+ICAg ICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAg ICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDE1LCAxMiksCj4gLSAgICAgICAg ICAgICAgIC5jbGtfaWQgPSB7Q0xLX05PTkV9LAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDgx NzNfUE9XRVJfRE9NQUlOX1VTQl0gPSB7Cj4gICAgICAgICAgICAgICAgIC5uYW1lID0gInVzYiIs Cj4gQEAgLTk3Miw3ICs5MjcsNiBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9t YWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAgICAuY3Rs X29mZnMgPSBTUE1fVVNCX1BXUl9DT04sCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRz ID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9 IEdFTk1BU0soMTUsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0s Cj4gICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAg ICAgIH0sCj4gICAgICAgICBbTVQ4MTczX1BPV0VSX0RPTUFJTl9NRkdfQVNZTkNdID0gewo+IEBA IC05ODEsNyArOTM1LDcgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMo c3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZz ID0gU1BNX01GR19BU1lOQ19QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0 cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMg PSAwLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NRkd9LAo+ICsgICAgICAgICAg ICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1mZyJ9LAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtN VDgxNzNfUE9XRVJfRE9NQUlOX01GR18yRF0gPSB7Cj4gICAgICAgICAgICAgICAgIC5uYW1lID0g Im1mZ18yZCIsCj4gQEAgLTk4OSw3ICs5NDMsNiBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJf cG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAg ICAgICAuY3RsX29mZnMgPSBTUE1fTUZHXzJEX1BXUl9DT04sCj4gICAgICAgICAgICAgICAgIC5z cmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bk bl9hY2tfYml0cyA9IEdFTk1BU0soMTMsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9 IHtDTEtfTk9ORX0sCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UODE3M19QT1dFUl9ET01BSU5f TUZHXSA9IHsKPiAgICAgICAgICAgICAgICAgLm5hbWUgPSAibWZnIiwKPiBAQCAtOTk3LDcgKzk1 MCw2IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9NRkdf UFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDEzLCA4 KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygyMSwgMTYp LAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19OT05FfSwKPiAgICAgICAgICAgICAg ICAgLmJ1c19wcm90X21hc2sgPSBNVDgxNzNfVE9QX0FYSV9QUk9UX0VOX01GR19TIHwKPiAgICAg ICAgICAgICAgICAgICAgICAgICBNVDgxNzNfVE9QX0FYSV9QUk9UX0VOX01GR19NMCB8Cj4gICAg ICAgICAgICAgICAgICAgICAgICAgTVQ4MTczX1RPUF9BWElfUFJPVF9FTl9NRkdfTTEgfAo+IC0t Cj4gMS44LjEuMS5kaXJ0eQo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCj4gTGludXgtbWVkaWF0ZWsgbWFpbGluZyBsaXN0Cj4gTGludXgtbWVkaWF0ZWtA bGlzdHMuaW5mcmFkZWFkLm9yZwo+IGh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4v bGlzdGluZm8vbGludXgtbWVkaWF0ZWsKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCkxpbnV4LW1lZGlhdGVrIG1haWxpbmcgbGlzdApMaW51eC1tZWRpYXRl a0BsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4v bGlzdGluZm8vbGludXgtbWVkaWF0ZWsK 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=-6.5 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS autolearn=unavailable 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 82C87C54FCB for ; Thu, 23 Apr 2020 18:21:21 +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 316DE20776 for ; Thu, 23 Apr 2020 18:21:21 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="FlTSHiMZ"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="UwrVBJsZ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 316DE20776 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com 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: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=/NNjTUEhDoo2kH1QTHgUKew99k1JKliahjtaClbmc14=; b=FlTSHiMZCQjucB H3QngJkcElQfoi2Prb2yVCELxvif+ODBWrZcOwjXKqGyuwPWIGAXiqg58CROgIveSkLY2dyck2T5T VdOLjMfyiNpXLoB+NCT5pSUUojEN1a4h8qWndwrWozitji7D0YSowwV7qJ3SliA31BfOKeueIV/VU ldTafTHYtxZNiR5+jiSPTMaoV5KvYvd9wqsC7eF550lqK7Be0dk31OP4OCfvFDRaw4KKj12vSbB7b n567eJXH0++R8jVHHjbcXSr4gC9WMPlCWsMe3OvxASKVllJ/IiKU0bLO2uX7hfOS/jPa6haXaCkwO C9lnw75FelhNr1svYBOA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jRgTM-0000M4-KQ; Thu, 23 Apr 2020 18:21:16 +0000 Received: from mail-qk1-x744.google.com ([2607:f8b0:4864:20::744]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jRgSO-0007F0-9j; Thu, 23 Apr 2020 18:20:19 +0000 Received: by mail-qk1-x744.google.com with SMTP id l25so7473394qkk.3; Thu, 23 Apr 2020 11:20:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=j4Gr42DIWiKl6eQeKg3rq/cPMMusL6SIoFXxct0KIAg=; b=UwrVBJsZzOzXwdEsTMcl+KRh/0QCgS9dn94FqtTs7Af5un97fe/TH6xbtKSthwk9RV /JAncl7NeMRjoBqtFhJfzf0fnm6zua2BizvrpdqAOwUzYImfQ9ltXKGZotJkfmdh1rUT qgS8ctAOT/lyFv1AJxHNDZIVElxDLeJU7Z2vNOqbLL5VtPP+BJO6U2wLccJjiwYQQFhd roT3nP7FW4McxdB+Rkob/nbB7l1HhM+L/El6WPrntM1ZUuI+STtoY6dBD7lXbLwO4whQ V84FIP1vXoiEv98UJP8pF/2dgfFb3sl1R5XEOpBDtpZeNNPl9Fodyc+sNqtcd5pl8zo6 tT9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=j4Gr42DIWiKl6eQeKg3rq/cPMMusL6SIoFXxct0KIAg=; b=AqMdep9YmxXiw2v39L/BqwvR8IEsaR9VhsEF+PKPWbPnfN9i3xy5mqCk0djilMKuiS gizhGwvvJ0Z+ZxAMCkyJLd/62mZJuEZmytNs6KDQcdqP+W7IXXkLFwtYkJgm8VZuEHdK 4cdTGq++1rqrN/zwNCVHGjxWY7NHM+IbSk7XZonnlHhDmiMEc4OaNrdeh9ZIEmc3rvBJ UQzEzE7PzHX8RLgYAoBl8fMEQlKg8mCsy7VmloaBp0pE+TwkbVQUSgv1aIXzLful87so NNkcmznKRkRzlUErUIx/M6sfTCUZSYP4XxkvZGn0VyW/Cpb8q55ZUKgv1CEq1dVWuJ4W 06Xw== X-Gm-Message-State: AGi0PuYhCrNbWQl0rSiY+yKKJuqRkJxbCWhuNcWyVjpVLJOJ7IlJa4X+ nSYG9Mgf3cL9iT9hSvtn9dHSxRjx5HRf9J79uM4DNG4H X-Google-Smtp-Source: APiQypLydQuI84sE+VTN65AOkbQz72bsQCoCUOfojli0YF5UAG8nFoefn5Q7DW+gilT5gA9Bx/7hZNKjfOTi60djObQ= X-Received: by 2002:a37:49c7:: with SMTP id w190mr4982758qka.402.1587666013842; Thu, 23 Apr 2020 11:20:13 -0700 (PDT) MIME-Version: 1.0 References: <1584689540-5227-1-git-send-email-weiyi.lu@mediatek.com> <1584689540-5227-4-git-send-email-weiyi.lu@mediatek.com> In-Reply-To: <1584689540-5227-4-git-send-email-weiyi.lu@mediatek.com> From: Enric Balletbo Serra Date: Thu, 23 Apr 2020 20:20:01 +0200 Message-ID: Subject: Re: [PATCH v13 03/11] soc: mediatek: Add basic_clk_name to scp_power_data To: Weiyi Lu X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200423_112016_470678_5CEE4F59 X-CRM114-Status: GOOD ( 19.30 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Rob Herring , Nicolas Boichat , srv_heupstream , James Liao , linux-kernel , Fan Chen , "moderated list:ARM/Mediatek SoC support" , Sascha Hauer , Matthias Brugger , Linux ARM 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 SGkgV2VpeWkgTHUsCgpUaGFuayB5b3UgZm9yIHlvdXIgcGF0Y2guCgpNaXNzYXRnZSBkZSBXZWl5 aSBMdSA8d2VpeWkubHVAbWVkaWF0ZWsuY29tPiBkZWwgZGlhIGR2LiwgMjAgZGUgbWFyw6cKMjAy MCBhIGxlcyA4OjMzOgo+Cj4gVHJ5IHRvIHN0b3AgZXh0ZW5kaW5nIHRoZSBjbGtfaWQgb3IgY2xr X25hbWVzIGlmIHRoZXJlIGFyZQo+IG1vcmUgYW5kIG1vcmUgbmV3IEJBU0lDIGNsb2Nrcy4gVG8g Z2V0IGl0cyBvd24gY2xvY2tzIGJ5IHRoZQo+IGJhc2ljX2Nsa19uYW1lIG9mIGVhY2ggcG93ZXIg ZG9tYWluLgo+IEFuZCB0aGVuIHVzZSBiYXNpY19jbGtfbmFtZSBzdHJpbmdzIGZvciBhbGwgY29t cGF0aWJsZXMsIGluc3RlYWQgb2YKPiBtaXhpbmcgY2xrX2lkIGFuZCBjbGtfbmFtZS4KPgo+IFNp Z25lZC1vZmYtYnk6IFdlaXlpIEx1IDx3ZWl5aS5sdUBtZWRpYXRlay5jb20+Cj4gUmV2aWV3ZWQt Ynk6IE5pY29sYXMgQm9pY2hhdCA8ZHJpbmtjYXRAY2hyb21pdW0ub3JnPgo+IC0tLQo+ICBkcml2 ZXJzL3NvYy9tZWRpYXRlay9tdGstc2Nwc3lzLmMgfCAxMzggKysrKysrKysrKysrKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KPiAgMSBmaWxlIGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKyksIDkz IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc29jL21lZGlhdGVrL210ay1z Y3BzeXMuYyBiL2RyaXZlcnMvc29jL21lZGlhdGVrL210ay1zY3BzeXMuYwo+IGluZGV4IGY2Njlk MzcuLmRiMzVhMjggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9zb2MvbWVkaWF0ZWsvbXRrLXNjcHN5 cy5jCj4gKysrIGIvZHJpdmVycy9zb2MvbWVkaWF0ZWsvbXRrLXNjcHN5cy5jCj4gQEAgLTc4LDM0 ICs3OCw2IEBACj4gICNkZWZpbmUgUFdSX1NUQVRVU19ISUYxICAgICAgICAgICAgICAgICAgICAg ICAgQklUKDI2KSAvKiBNVDc2MjIgKi8KPiAgI2RlZmluZSBQV1JfU1RBVFVTX1dCICAgICAgICAg ICAgICAgICAgQklUKDI3KSAvKiBNVDc2MjIgKi8KPgo+IC1lbnVtIGNsa19pZCB7Cj4gLSAgICAg ICBDTEtfTk9ORSwKPiAtICAgICAgIENMS19NTSwKPiAtICAgICAgIENMS19NRkcsCj4gLSAgICAg ICBDTEtfVkVOQywKPiAtICAgICAgIENMS19WRU5DX0xULAo+IC0gICAgICAgQ0xLX0VUSElGLAo+ IC0gICAgICAgQ0xLX1ZERUMsCj4gLSAgICAgICBDTEtfSElGU0VMLAo+IC0gICAgICAgQ0xLX0pQ R0RFQywKPiAtICAgICAgIENMS19BVURJTywKPiAtICAgICAgIENMS19NQVgsCj4gLX07Cj4gLQo+ IC1zdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGNsa19uYW1lc1tdID0gewo+IC0gICAgICAgTlVM TCwKPiAtICAgICAgICJtbSIsCj4gLSAgICAgICAibWZnIiwKPiAtICAgICAgICJ2ZW5jIiwKPiAt ICAgICAgICJ2ZW5jX2x0IiwKPiAtICAgICAgICJldGhpZiIsCj4gLSAgICAgICAidmRlYyIsCj4g LSAgICAgICAiaGlmX3NlbCIsCj4gLSAgICAgICAianBnZGVjIiwKPiAtICAgICAgICJhdWRpbyIs Cj4gLSAgICAgICBOVUxMLAo+IC19Owo+IC0KPiAgI2RlZmluZSBNQVhfQ0xLUyAgICAgICAzCj4K PiAgLyoqCj4gQEAgLTExNiw3ICs4OCw3IEBAIGVudW0gY2xrX2lkIHsKPiAgICogQHNyYW1fcGRu X2JpdHM6IFRoZSBtYXNrIGZvciBzcmFtIHBvd2VyIGNvbnRyb2wgYml0cy4KPiAgICogQHNyYW1f cGRuX2Fja19iaXRzOiBUaGUgbWFzayBmb3Igc3JhbSBwb3dlciBjb250cm9sIGFja2VkIGJpdHMu Cj4gICAqIEBidXNfcHJvdF9tYXNrOiBUaGUgbWFzayBmb3Igc2luZ2xlIHN0ZXAgYnVzIHByb3Rl Y3Rpb24uCj4gLSAqIEBjbGtfaWQ6IFRoZSBiYXNpYyBjbG9ja3MgcmVxdWlyZWQgYnkgdGhpcyBw b3dlciBkb21haW4uCj4gKyAqIEBiYXNpY19jbGtfbmFtZTogVGhlIGJhc2ljIGNsb2NrcyByZXF1 aXJlZCBieSB0aGlzIHBvd2VyIGRvbWFpbi4KCm5pdDogd2hhdCdzIHRoZSBwb2ludCBvbiB0ZWxs aW5nIGl0IGJhc2ljXz8gd2h5IG5vdCBqdXN0IGNsa19uYW1lcz8KCj4gICAqIEBjYXBzOiBUaGUg ZmxhZyBmb3IgYWN0aXZlIHdha2UtdXAgYWN0aW9uLgo+ICAgKi8KPiAgc3RydWN0IHNjcF9kb21h aW5fZGF0YSB7Cj4gQEAgLTEyNiw3ICs5OCw3IEBAIHN0cnVjdCBzY3BfZG9tYWluX2RhdGEgewo+ ICAgICAgICAgdTMyIHNyYW1fcGRuX2JpdHM7Cj4gICAgICAgICB1MzIgc3JhbV9wZG5fYWNrX2Jp dHM7Cj4gICAgICAgICB1MzIgYnVzX3Byb3RfbWFzazsKPiAtICAgICAgIGVudW0gY2xrX2lkIGNs a19pZFtNQVhfQ0xLU107Cj4gKyAgICAgICBjb25zdCBjaGFyICpiYXNpY19jbGtfbmFtZVtNQVhf Q0xLU107Cj4gICAgICAgICB1OCBjYXBzOwo+ICB9Owo+Cj4gQEAgLTQxMSwxMiArMzgzLDIzIEBA IHN0YXRpYyBpbnQgc2Nwc3lzX3Bvd2VyX29mZihzdHJ1Y3QgZ2VuZXJpY19wbV9kb21haW4gKmdl bnBkKQo+ICAgICAgICAgcmV0dXJuIHJldDsKPiAgfQo+Cj4gLXN0YXRpYyB2b2lkIGluaXRfY2xr cyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LCBzdHJ1Y3QgY2xrICoqY2xrKQo+ICtzdGF0 aWMgaW50IGluaXRfYmFzaWNfY2xrcyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LCBzdHJ1 Y3QgY2xrICoqY2xrLAo+ICsgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKiBjb25z dCAqbmFtZSkKPiAgewo+ICAgICAgICAgaW50IGk7Cj4KPiAtICAgICAgIGZvciAoaSA9IENMS19O T05FICsgMTsgaSA8IENMS19NQVg7IGkrKykKPiAtICAgICAgICAgICAgICAgY2xrW2ldID0gZGV2 bV9jbGtfZ2V0KCZwZGV2LT5kZXYsIGNsa19uYW1lc1tpXSk7Cj4gKyAgICAgICBmb3IgKGkgPSAw OyBpIDwgTUFYX0NMS1MgJiYgbmFtZVtpXTsgaSsrKSB7Cj4gKyAgICAgICAgICAgICAgIGNsa1tp XSA9IGRldm1fY2xrX2dldCgmcGRldi0+ZGV2LCBuYW1lW2ldKTsKPiArCj4gKyAgICAgICAgICAg ICAgIGlmIChJU19FUlIoY2xrW2ldKSkgewo+ICsgICAgICAgICAgICAgICAgICAgICAgIGRldl9l cnIoJnBkZXYtPmRldiwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJnZXQgYmFz aWMgY2xrICVzIGZhaWwgJWxkXG4iLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bmFtZVtpXSwgUFRSX0VSUihjbGtbaV0pKTsKCmRldm1fY2xrX2dldCgpIHdpbGwgYWxyZWFkeSBw cmludCBhbiBlcnJvciBpZiBmYWlscywgdGhpcyBwcmludCBpcwpyZWR1bmRhbnQsIHNvIHlvdSBj YW4gcmVtb3ZlIGl0LgoKCj4gKyAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFBUUl9FUlIo Y2xrW2ldKTsKPiArICAgICAgICAgICAgICAgfQo+ICsgICAgICAgfQo+ICsKPiArICAgICAgIHJl dHVybiAwOwo+ICB9Cj4KPiAgc3RhdGljIHN0cnVjdCBzY3AgKmluaXRfc2NwKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYsCj4gQEAgLTQyNiw5ICs0MDksOCBAQCBzdGF0aWMgc3RydWN0IHNj cCAqaW5pdF9zY3Aoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgewo+ICAgICAgICAg c3RydWN0IGdlbnBkX29uZWNlbGxfZGF0YSAqcGRfZGF0YTsKPiAgICAgICAgIHN0cnVjdCByZXNv dXJjZSAqcmVzOwo+IC0gICAgICAgaW50IGksIGo7Cj4gKyAgICAgICBpbnQgaSwgcmV0Owo+ICAg ICAgICAgc3RydWN0IHNjcCAqc2NwOwo+IC0gICAgICAgc3RydWN0IGNsayAqY2xrW0NMS19NQVhd Owo+Cj4gICAgICAgICBzY3AgPSBkZXZtX2t6YWxsb2MoJnBkZXYtPmRldiwgc2l6ZW9mKCpzY3Ap LCBHRlBfS0VSTkVMKTsKPiAgICAgICAgIGlmICghc2NwKQo+IEBAIC00ODEsOCArNDYzLDYgQEAg c3RhdGljIHN0cnVjdCBzY3AgKmluaXRfc2NwKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYs Cj4KPiAgICAgICAgIHBkX2RhdGEtPm51bV9kb21haW5zID0gbnVtOwo+Cj4gLSAgICAgICBpbml0 X2Nsa3MocGRldiwgY2xrKTsKPiAtCj4gICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbnVtOyBpKysp IHsKPiAgICAgICAgICAgICAgICAgc3RydWN0IHNjcF9kb21haW4gKnNjcGQgPSAmc2NwLT5kb21h aW5zW2ldOwo+ICAgICAgICAgICAgICAgICBzdHJ1Y3QgZ2VuZXJpY19wbV9kb21haW4gKmdlbnBk ID0gJnNjcGQtPmdlbnBkOwo+IEBAIC00OTMsMTcgKzQ3Myw5IEBAIHN0YXRpYyBzdHJ1Y3Qgc2Nw ICppbml0X3NjcChzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+Cj4gICAgICAgICAgICAg ICAgIHNjcGQtPmRhdGEgPSBkYXRhOwo+Cj4gLSAgICAgICAgICAgICAgIGZvciAoaiA9IDA7IGog PCBNQVhfQ0xLUyAmJiBkYXRhLT5jbGtfaWRbal07IGorKykgewo+IC0gICAgICAgICAgICAgICAg ICAgICAgIHN0cnVjdCBjbGsgKmMgPSBjbGtbZGF0YS0+Y2xrX2lkW2pdXTsKPiAtCj4gLSAgICAg ICAgICAgICAgICAgICAgICAgaWYgKElTX0VSUihjKSkgewo+IC0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZGV2X2VycigmcGRldi0+ZGV2LCAiJXM6IGNsayB1bmF2YWlsYWJsZVxuIiwK PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS0+bmFtZSk7Cj4g LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRVJSX0NBU1QoYyk7Cj4gLSAg ICAgICAgICAgICAgICAgICAgICAgfQo+IC0KPiAtICAgICAgICAgICAgICAgICAgICAgICBzY3Bk LT5jbGtbal0gPSBjOwo+IC0gICAgICAgICAgICAgICB9Cj4gKyAgICAgICAgICAgICAgIHJldCA9 IGluaXRfYmFzaWNfY2xrcyhwZGV2LCBzY3BkLT5jbGssIGRhdGEtPmJhc2ljX2Nsa19uYW1lKTsK PiArICAgICAgICAgICAgICAgaWYgKHJldCkKPiArICAgICAgICAgICAgICAgICAgICAgICByZXR1 cm4gRVJSX1BUUihyZXQpOwo+Cj4gICAgICAgICAgICAgICAgIGdlbnBkLT5uYW1lID0gZGF0YS0+ bmFtZTsKPiAgICAgICAgICAgICAgICAgZ2VucGQtPnBvd2VyX29mZiA9IHNjcHN5c19wb3dlcl9v ZmY7Cj4gQEAgLTU2MCw3ICs1MzIsNiBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJf ZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAgICAu Y3RsX29mZnMgPSBTUE1fQ09OTl9QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuYnVzX3Byb3Rf bWFzayA9IE1UMjcwMV9UT1BfQVhJX1BST1RfRU5fQ09OTl9NIHwKPiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBNVDI3MDFfVE9QX0FYSV9QUk9UX0VOX0NPTk5fUywKPiAtICAgICAg ICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4gICAgICAgICAgICAgICAgIC5jYXBzID0g TVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAgICAgIH0sCj4gICAgICAgICBbTVQyNzAxX1BP V0VSX0RPTUFJTl9ESVNQXSA9IHsKPiBAQCAtNTY4LDcgKzUzOSw3IEBAIHN0YXRpYyB2b2lkIG10 a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4g ICAgICAgICAgICAgICAgIC5zdGFfbWFzayA9IFBXUl9TVEFUVVNfRElTUCwKPiAgICAgICAgICAg ICAgICAgLmN0bF9vZmZzID0gU1BNX0RJU19QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuc3Jh bV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0g e0NMS19NTX0sCj4gKyAgICAgICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsibW0ifSwKPiAg ICAgICAgICAgICAgICAgLmJ1c19wcm90X21hc2sgPSBNVDI3MDFfVE9QX0FYSV9QUk9UX0VOX01N X00wLAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4g ICAgICAgICB9LAo+IEBAIC01NzgsNyArNTQ5LDcgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVy X3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAg ICAgICAgLmN0bF9vZmZzID0gU1BNX01GR19QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuc3Jh bV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5f YWNrX2JpdHMgPSBHRU5NQVNLKDEyLCAxMiksCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7 Q0xLX01GR30sCj4gKyAgICAgICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsibWZnIn0sCj4g ICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAgICAg IH0sCj4gICAgICAgICBbTVQyNzAxX1BPV0VSX0RPTUFJTl9WREVDXSA9IHsKPiBAQCAtNTg3LDcg KzU1OCw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9W REVfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDEx LCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxMiwg MTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NTX0sCj4gKyAgICAgICAgICAg ICAgIC5iYXNpY19jbGtfbmFtZSA9IHsibW0ifSwKPiAgICAgICAgICAgICAgICAgLmNhcHMgPSBN VEtfU0NQRF9BQ1RJVkVfV0FLRVVQLAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDI3MDFfUE9X RVJfRE9NQUlOX0lTUF0gPSB7Cj4gQEAgLTU5Niw3ICs1NjcsNyBAQCBzdGF0aWMgdm9pZCBtdGtf cmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAg ICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1fSVNQX1BXUl9DT04sCj4gICAgICAgICAgICAg ICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5z cmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTMsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNs a19pZCA9IHtDTEtfTU19LAo+ICsgICAgICAgICAgICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1t In0sCj4gICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAg ICAgICAgIH0sCj4gICAgICAgICBbTVQyNzAxX1BPV0VSX0RPTUFJTl9CRFBdID0gewo+IEBAIC02 MDQsNyArNTc1LDYgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3Ry dWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLnN0YV9tYXNrID0g UFdSX1NUQVRVU19CRFAsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9CRFBfUFdS X0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDExLCA4KSwK PiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4gICAgICAgICAgICAgICAg IC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAgICAgIH0sCj4gICAgICAgICBb TVQyNzAxX1BPV0VSX0RPTUFJTl9FVEhdID0gewo+IEBAIC02MTMsNyArNTgzLDcgQEAgc3RhdGlj IHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAq cGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX0VUSF9QV1JfQ09OLAo+ICAg ICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAg ICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDE1LCAxMiksCj4gLSAgICAgICAg ICAgICAgIC5jbGtfaWQgPSB7Q0xLX0VUSElGfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Ns a19uYW1lID0geyJldGhpZiJ9LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FD VElWRV9XQUtFVVAsCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UMjcwMV9QT1dFUl9ET01BSU5f SElGXSA9IHsKPiBAQCAtNjIyLDE0ICs1OTIsMTMgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVy X3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAg ICAgICAgLmN0bF9vZmZzID0gU1BNX0hJRl9QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuc3Jh bV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5f YWNrX2JpdHMgPSBHRU5NQVNLKDE1LCAxMiksCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7 Q0xLX0VUSElGfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Nsa19uYW1lID0geyJldGhpZiJ9 LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4gICAg ICAgICB9LAo+ICAgICAgICAgW01UMjcwMV9QT1dFUl9ET01BSU5fSUZSX01TQ10gPSB7Cj4gICAg ICAgICAgICAgICAgIC5uYW1lID0gImlmcl9tc2MiLAo+ICAgICAgICAgICAgICAgICAuc3RhX21h c2sgPSBQV1JfU1RBVFVTX0lGUl9NU0MsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQ TV9JRlJfTVNDX1BXUl9DT04sCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX05PTkV9 LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4gICAg ICAgICB9LAo+ICB9Owo+IEBAIC02NDQsNyArNjEzLDcgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lz dGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAg ICAgICAgICAgLmN0bF9vZmZzID0gU1BNX0RJU19QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAu c3JhbV9wZG5fYml0cyA9IEdFTk1BU0soOCwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bk bl9hY2tfYml0cyA9IEdFTk1BU0soMTIsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9 IHtDTEtfTU19LAo+ICsgICAgICAgICAgICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1tIn0sCj4g ICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAgICAg IH0sCj4gICAgICAgICBbTVQyNzEyX1BPV0VSX0RPTUFJTl9WREVDXSA9IHsKPiBAQCAtNjUzLDcg KzYyMiw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9W REVfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDgs IDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDEyLCAx MiksCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX01NLCBDTEtfVkRFQ30sCj4gKyAg ICAgICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsibW0iLCAidmRlYyJ9LAo+ICAgICAgICAg ICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4gICAgICAgICB9LAo+ICAg ICAgICAgW01UMjcxMl9QT1dFUl9ET01BSU5fVkVOQ10gPSB7Cj4gQEAgLTY2Miw3ICs2MzEsNyBA QCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1f ZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1fVkVOX1BXUl9D T04sCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4g ICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTUsIDEyKSwKPiAt ICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTU0sIENMS19WRU5DLCBDTEtfSlBHREVDfSwK PiArICAgICAgICAgICAgICAgLmJhc2ljX2Nsa19uYW1lID0geyJtbSIsICJ2ZW5jIiwgImpwZ2Rl YyJ9LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4g ICAgICAgICB9LAo+ICAgICAgICAgW01UMjcxMl9QT1dFUl9ET01BSU5fSVNQXSA9IHsKPiBAQCAt NjcxLDcgKzY0MCw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0 cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9 IFNQTV9JU1BfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5N QVNLKDExLCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFT SygxMywgMTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NTX0sCj4gKyAgICAg ICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsibW0ifSwKPiAgICAgICAgICAgICAgICAgLmNh cHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQLAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDI3 MTJfUE9XRVJfRE9NQUlOX0FVRElPXSA9IHsKPiBAQCAtNjgwLDcgKzY0OSw3IEBAIHN0YXRpYyB2 b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9BVURJT19QV1JfQ09OLAo+ICAg ICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAg ICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDE1LCAxMiksCj4gLSAgICAgICAg ICAgICAgIC5jbGtfaWQgPSB7Q0xLX0FVRElPfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Ns a19uYW1lID0geyJhdWRpbyJ9LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FD VElWRV9XQUtFVVAsCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UMjcxMl9QT1dFUl9ET01BSU5f VVNCXSA9IHsKPiBAQCAtNjg5LDcgKzY1OCw2IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9w b3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAg ICAgIC5jdGxfb2ZmcyA9IFNQTV9VU0JfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1f cGRuX2JpdHMgPSBHRU5NQVNLKDEwLCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fj a19iaXRzID0gR0VOTUFTSygxNCwgMTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NM S19OT05FfSwKPiAgICAgICAgICAgICAgICAgLmNhcHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQ LAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDI3MTJfUE9XRVJfRE9NQUlOX1VTQjJdID0gewo+ IEBAIC02OTgsNyArNjY2LDYgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFp bnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9v ZmZzID0gU1BNX1VTQjJfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMg PSBHRU5NQVNLKDEwLCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0g R0VOTUFTSygxNCwgMTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19OT05FfSwK PiAgICAgICAgICAgICAgICAgLmNhcHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQLAo+ICAgICAg ICAgfSwKPiAgICAgICAgIFtNVDI3MTJfUE9XRVJfRE9NQUlOX01GR10gPSB7Cj4gQEAgLTcwNyw3 ICs2NzQsNyBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1f TUZHX1BXUl9DT04sCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSyg4 LCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxNiwg MTYpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NRkd9LAo+ICsgICAgICAgICAg ICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1mZyJ9LAo+ICAgICAgICAgICAgICAgICAuYnVzX3By b3RfbWFzayA9IEJJVCgxNCkgfCBCSVQoMjEpIHwgQklUKDIzKSwKPiAgICAgICAgICAgICAgICAg LmNhcHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQLAo+ICAgICAgICAgfSwKPiBAQCAtNzE3LDcg KzY4NCw2IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IDB4MDJj MCwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDgsIDgpLAo+ICAg ICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDE2LCAxNiksCj4gLSAg ICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX05PTkV9LAo+ICAgICAgICAgICAgICAgICAuY2Fw cyA9IE1US19TQ1BEX0FDVElWRV9XQUtFVVAsCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UMjcx Ml9QT1dFUl9ET01BSU5fTUZHX1NDMl0gPSB7Cj4gQEAgLTcyNiw3ICs2OTIsNiBAQCBzdGF0aWMg dm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpw ZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSAweDAyYzQsCj4gICAgICAgICAgICAg ICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSyg4LCA4KSwKPiAgICAgICAgICAgICAgICAgLnNy YW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxNiwgMTYpLAo+IC0gICAgICAgICAgICAgICAuY2xr X2lkID0ge0NMS19OT05FfSwKPiAgICAgICAgICAgICAgICAgLmNhcHMgPSBNVEtfU0NQRF9BQ1RJ VkVfV0FLRVVQLAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDI3MTJfUE9XRVJfRE9NQUlOX01G R19TQzNdID0gewo+IEBAIC03MzUsNyArNzAwLDYgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVy X3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAg ICAgICAgLmN0bF9vZmZzID0gMHgwMWY4LAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0 cyA9IEdFTk1BU0soOCwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9 IEdFTk1BU0soMTYsIDE2KSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0s Cj4gICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAg ICAgIH0sCj4gIH07Cj4gQEAgLTc2MCw3ICs3MjQsNyBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0 ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAg ICAgICAgICAuY3RsX29mZnMgPSAweDMwMCwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Jp dHMgPSBHRU5NQVNLKDgsIDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMg PSBHRU5NQVNLKDEyLCAxMiksCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX1ZERUN9 LAo+ICsgICAgICAgICAgICAgICAuYmFzaWNfY2xrX25hbWUgPSB7InZkZWMifSwKPiAgICAgICAg IH0sCj4gICAgICAgICBbTVQ2Nzk3X1BPV0VSX0RPTUFJTl9WRU5DXSA9IHsKPiAgICAgICAgICAg ICAgICAgLm5hbWUgPSAidmVuYyIsCj4gQEAgLTc2OCw3ICs3MzIsNiBAQCBzdGF0aWMgdm9pZCBt dGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSAweDMwNCwKPiAgICAgICAgICAgICAgICAgLnNy YW1fcGRuX2JpdHMgPSBHRU5NQVNLKDExLCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRu X2Fja19iaXRzID0gR0VOTUFTSygxNSwgMTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0g e0NMS19OT05FfSwKPiAgICAgICAgIH0sCj4gICAgICAgICBbTVQ2Nzk3X1BPV0VSX0RPTUFJTl9J U1BdID0gewo+ICAgICAgICAgICAgICAgICAubmFtZSA9ICJpc3AiLAo+IEBAIC03NzYsNyArNzM5 LDYgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRm b3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gMHgzMDgsCj4g ICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSyg5LCA4KSwKPiAgICAgICAg ICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxMywgMTIpLAo+IC0gICAgICAg ICAgICAgICAuY2xrX2lkID0ge0NMS19OT05FfSwKPiAgICAgICAgIH0sCj4gICAgICAgICBbTVQ2 Nzk3X1BPV0VSX0RPTUFJTl9NTV0gPSB7Cj4gICAgICAgICAgICAgICAgIC5uYW1lID0gIm1tIiwK PiBAQCAtNzg0LDcgKzc0Niw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21h aW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxf b2ZmcyA9IDB4MzBDLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0so OCwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTIs IDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTU19LAo+ICsgICAgICAgICAg ICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1tIn0sCj4gICAgICAgICAgICAgICAgIC5idXNfcHJv dF9tYXNrID0gKEJJVCgxKSB8IEJJVCgyKSksCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UNjc5 N19QT1dFUl9ET01BSU5fQVVESU9dID0gewo+IEBAIC03OTMsNyArNzU1LDYgQEAgc3RhdGljIHZv aWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRl diwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gMHgzMTQsCj4gICAgICAgICAgICAgICAg IC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFt X3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTUsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19p ZCA9IHtDTEtfTk9ORX0sCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UNjc5N19QT1dFUl9ET01B SU5fTUZHX0FTWU5DXSA9IHsKPiAgICAgICAgICAgICAgICAgLm5hbWUgPSAibWZnX2FzeW5jIiwK PiBAQCAtODAxLDcgKzc2Miw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21h aW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxf b2ZmcyA9IDB4MzM0LAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IDAsCj4gICAg ICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IDAsCj4gLSAgICAgICAgICAgICAgIC5j bGtfaWQgPSB7Q0xLX01GR30sCj4gKyAgICAgICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsi bWZnIn0sCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UNjc5N19QT1dFUl9ET01BSU5fTUpDXSA9 IHsKPiAgICAgICAgICAgICAgICAgLm5hbWUgPSAibWpjIiwKPiBAQCAtODA5LDcgKzc3MCw2IEBA IHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9k ZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IDB4MzEwLAo+ICAgICAg ICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soOCwgOCksCj4gICAgICAgICAgICAg ICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTIsIDEyKSwKPiAtICAgICAgICAgICAg ICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4gICAgICAgICB9LAo+ICB9Owo+Cj4gQEAgLTgzNCw3 ICs3OTQsNiBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1f RVRIU1lTX1BXUl9DT04sCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFT SygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0so MTUsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4gICAgICAg ICAgICAgICAgIC5idXNfcHJvdF9tYXNrID0gTVQ3NjIyX1RPUF9BWElfUFJPVF9FTl9FVEhTWVMs Cj4gICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAg ICAgIH0sCj4gQEAgLTg0NCw3ICs4MDMsNyBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93 ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAg ICAuY3RsX29mZnMgPSBTUE1fSElGMF9QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9w ZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNr X2JpdHMgPSBHRU5NQVNLKDE1LCAxMiksCj4gLSAgICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xL X0hJRlNFTH0sCj4gKyAgICAgICAgICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsiaGlmX3NlbCJ9 LAo+ICAgICAgICAgICAgICAgICAuYnVzX3Byb3RfbWFzayA9IE1UNzYyMl9UT1BfQVhJX1BST1Rf RU5fSElGMCwKPiAgICAgICAgICAgICAgICAgLmNhcHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQ LAo+ICAgICAgICAgfSwKPiBAQCAtODU0LDcgKzgxMyw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdp c3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAg ICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9ISUYxX1BXUl9DT04sCj4gICAgICAgICAgICAgICAg IC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFt X3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTUsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19p ZCA9IHtDTEtfSElGU0VMfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Nsa19uYW1lID0geyJo aWZfc2VsIn0sCj4gICAgICAgICAgICAgICAgIC5idXNfcHJvdF9tYXNrID0gTVQ3NjIyX1RPUF9B WElfUFJPVF9FTl9ISUYxLAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FDVElW RV9XQUtFVVAsCj4gICAgICAgICB9LAo+IEBAIC04NjQsNyArODIzLDYgQEAgc3RhdGljIHZvaWQg bXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwK PiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX1dCX1BXUl9DT04sCj4gICAgICAgICAg ICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gMCwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fj a19iaXRzID0gMCwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4gICAg ICAgICAgICAgICAgIC5idXNfcHJvdF9tYXNrID0gTVQ3NjIyX1RPUF9BWElfUFJPVF9FTl9XQiwK PiAgICAgICAgICAgICAgICAgLmNhcHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQIHwgTVRLX1ND UERfRldBSVRfU1JBTSwKPiAgICAgICAgIH0sCj4gQEAgLTg4MSw3ICs4MzksNiBAQCBzdGF0aWMg dm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpw ZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1fQ09OTl9QV1JfQ09OLAo+ICAg ICAgICAgICAgICAgICAuYnVzX3Byb3RfbWFzayA9IE1UMjcwMV9UT1BfQVhJX1BST1RfRU5fQ09O Tl9NIHwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNVDI3MDFfVE9QX0FYSV9Q Uk9UX0VOX0NPTk5fUywKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0sCj4g ICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAgICAg IH0sCj4gICAgICAgICBbTVQ3NjIzQV9QT1dFUl9ET01BSU5fRVRIXSA9IHsKPiBAQCAtODkwLDcg Kzg0Nyw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9F VEhfUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDEx LCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxNSwg MTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19FVEhJRn0sCj4gKyAgICAgICAg ICAgICAgIC5iYXNpY19jbGtfbmFtZSA9IHsiZXRoaWYifSwKPiAgICAgICAgICAgICAgICAgLmNh cHMgPSBNVEtfU0NQRF9BQ1RJVkVfV0FLRVVQLAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDc2 MjNBX1BPV0VSX0RPTUFJTl9ISUZdID0gewo+IEBAIC04OTksMTQgKzg1NiwxMyBAQCBzdGF0aWMg dm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpw ZGV2LAo+ICAgICAgICAgICAgICAgICAuY3RsX29mZnMgPSBTUE1fSElGX1BXUl9DT04sCj4gICAg ICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAg ICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9IEdFTk1BU0soMTUsIDEyKSwKPiAtICAgICAgICAg ICAgICAgLmNsa19pZCA9IHtDTEtfRVRISUZ9LAo+ICsgICAgICAgICAgICAgICAuYmFzaWNfY2xr X25hbWUgPSB7ImV0aGlmIn0sCj4gICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNU SVZFX1dBS0VVUCwKPiAgICAgICAgIH0sCj4gICAgICAgICBbTVQ3NjIzQV9QT1dFUl9ET01BSU5f SUZSX01TQ10gPSB7Cj4gICAgICAgICAgICAgICAgIC5uYW1lID0gImlmcl9tc2MiLAo+ICAgICAg ICAgICAgICAgICAuc3RhX21hc2sgPSBQV1JfU1RBVFVTX0lGUl9NU0MsCj4gICAgICAgICAgICAg ICAgIC5jdGxfb2ZmcyA9IFNQTV9JRlJfTVNDX1BXUl9DT04sCj4gLSAgICAgICAgICAgICAgIC5j bGtfaWQgPSB7Q0xLX05PTkV9LAo+ICAgICAgICAgICAgICAgICAuY2FwcyA9IE1US19TQ1BEX0FD VElWRV9XQUtFVVAsCj4gICAgICAgICB9LAo+ICB9Owo+IEBAIC05MjIsNyArODc4LDcgQEAgc3Rh dGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2Rldmlj ZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX1ZERV9QV1JfQ09OLAo+ ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAg ICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDEyLCAxMiksCj4gLSAgICAg ICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX01NfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Ns a19uYW1lID0geyJtbSJ9LAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDgxNzNfUE9XRVJfRE9N QUlOX1ZFTkNdID0gewo+ICAgICAgICAgICAgICAgICAubmFtZSA9ICJ2ZW5jIiwKPiBAQCAtOTMw LDcgKzg4Niw3IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVj dCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQ TV9WRU5fUFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNL KDExLCA4KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygx NSwgMTIpLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NTSwgQ0xLX1ZFTkN9LAo+ ICsgICAgICAgICAgICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1tIiwgInZlbmMifSwKPiAgICAg ICAgIH0sCj4gICAgICAgICBbTVQ4MTczX1BPV0VSX0RPTUFJTl9JU1BdID0gewo+ICAgICAgICAg ICAgICAgICAubmFtZSA9ICJpc3AiLAo+IEBAIC05MzgsNyArODk0LDcgQEAgc3RhdGljIHZvaWQg bXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwK PiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX0lTUF9QV1JfQ09OLAo+ICAgICAgICAg ICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAgICAgICAg ICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDEzLCAxMiksCj4gLSAgICAgICAgICAgICAg IC5jbGtfaWQgPSB7Q0xLX01NfSwKPiArICAgICAgICAgICAgICAgLmJhc2ljX2Nsa19uYW1lID0g eyJtbSJ9LAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDgxNzNfUE9XRVJfRE9NQUlOX01NXSA9 IHsKPiAgICAgICAgICAgICAgICAgLm5hbWUgPSAibW0iLAo+IEBAIC05NDYsNyArOTAyLDcgQEAg c3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRmb3JtX2Rl dmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX0RJU19QV1JfQ09O LAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAg ICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDEyLCAxMiksCj4gLSAg ICAgICAgICAgICAgIC5jbGtfaWQgPSB7Q0xLX01NfSwKPiArICAgICAgICAgICAgICAgLmJhc2lj X2Nsa19uYW1lID0geyJtbSJ9LAo+ICAgICAgICAgICAgICAgICAuYnVzX3Byb3RfbWFzayA9IE1U ODE3M19UT1BfQVhJX1BST1RfRU5fTU1fTTAgfAo+ICAgICAgICAgICAgICAgICAgICAgICAgIE1U ODE3M19UT1BfQVhJX1BST1RfRU5fTU1fTTEsCj4gICAgICAgICB9LAo+IEBAIC05NTYsNyArOTEy LDcgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMoc3RydWN0IHBsYXRm b3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZzID0gU1BNX1ZFTjJf UFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDExLCA4 KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygxNSwgMTIp LAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NTSwgQ0xLX1ZFTkNfTFR9LAo+ICsg ICAgICAgICAgICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1tIiwgInZlbmNfbHQifSwKPiAgICAg ICAgIH0sCj4gICAgICAgICBbTVQ4MTczX1BPV0VSX0RPTUFJTl9BVURJT10gPSB7Cj4gICAgICAg ICAgICAgICAgIC5uYW1lID0gImF1ZGlvIiwKPiBAQCAtOTY0LDcgKzkyMCw2IEBAIHN0YXRpYyB2 b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9BVURJT19QV1JfQ09OLAo+ICAg ICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAg ICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMgPSBHRU5NQVNLKDE1LCAxMiksCj4gLSAgICAgICAg ICAgICAgIC5jbGtfaWQgPSB7Q0xLX05PTkV9LAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtNVDgx NzNfUE9XRVJfRE9NQUlOX1VTQl0gPSB7Cj4gICAgICAgICAgICAgICAgIC5uYW1lID0gInVzYiIs Cj4gQEAgLTk3Miw3ICs5MjcsNiBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJfcG93ZXJfZG9t YWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAgICAgICAuY3Rs X29mZnMgPSBTUE1fVVNCX1BXUl9DT04sCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9iaXRz ID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bkbl9hY2tfYml0cyA9 IEdFTk1BU0soMTUsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9IHtDTEtfTk9ORX0s Cj4gICAgICAgICAgICAgICAgIC5jYXBzID0gTVRLX1NDUERfQUNUSVZFX1dBS0VVUCwKPiAgICAg ICAgIH0sCj4gICAgICAgICBbTVQ4MTczX1BPV0VSX0RPTUFJTl9NRkdfQVNZTkNdID0gewo+IEBA IC05ODEsNyArOTM1LDcgQEAgc3RhdGljIHZvaWQgbXRrX3JlZ2lzdGVyX3Bvd2VyX2RvbWFpbnMo c3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKPiAgICAgICAgICAgICAgICAgLmN0bF9vZmZz ID0gU1BNX01GR19BU1lOQ19QV1JfQ09OLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYml0 cyA9IEdFTk1BU0soMTEsIDgpLAo+ICAgICAgICAgICAgICAgICAuc3JhbV9wZG5fYWNrX2JpdHMg PSAwLAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19NRkd9LAo+ICsgICAgICAgICAg ICAgICAuYmFzaWNfY2xrX25hbWUgPSB7Im1mZyJ9LAo+ICAgICAgICAgfSwKPiAgICAgICAgIFtN VDgxNzNfUE9XRVJfRE9NQUlOX01GR18yRF0gPSB7Cj4gICAgICAgICAgICAgICAgIC5uYW1lID0g Im1mZ18yZCIsCj4gQEAgLTk4OSw3ICs5NDMsNiBAQCBzdGF0aWMgdm9pZCBtdGtfcmVnaXN0ZXJf cG93ZXJfZG9tYWlucyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAgICAgICAgICAg ICAgICAuY3RsX29mZnMgPSBTUE1fTUZHXzJEX1BXUl9DT04sCj4gICAgICAgICAgICAgICAgIC5z cmFtX3Bkbl9iaXRzID0gR0VOTUFTSygxMSwgOCksCj4gICAgICAgICAgICAgICAgIC5zcmFtX3Bk bl9hY2tfYml0cyA9IEdFTk1BU0soMTMsIDEyKSwKPiAtICAgICAgICAgICAgICAgLmNsa19pZCA9 IHtDTEtfTk9ORX0sCj4gICAgICAgICB9LAo+ICAgICAgICAgW01UODE3M19QT1dFUl9ET01BSU5f TUZHXSA9IHsKPiAgICAgICAgICAgICAgICAgLm5hbWUgPSAibWZnIiwKPiBAQCAtOTk3LDcgKzk1 MCw2IEBAIHN0YXRpYyB2b2lkIG10a19yZWdpc3Rlcl9wb3dlcl9kb21haW5zKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAgICAgICAgICAgICAgIC5jdGxfb2ZmcyA9IFNQTV9NRkdf UFdSX0NPTiwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2JpdHMgPSBHRU5NQVNLKDEzLCA4 KSwKPiAgICAgICAgICAgICAgICAgLnNyYW1fcGRuX2Fja19iaXRzID0gR0VOTUFTSygyMSwgMTYp LAo+IC0gICAgICAgICAgICAgICAuY2xrX2lkID0ge0NMS19OT05FfSwKPiAgICAgICAgICAgICAg ICAgLmJ1c19wcm90X21hc2sgPSBNVDgxNzNfVE9QX0FYSV9QUk9UX0VOX01GR19TIHwKPiAgICAg ICAgICAgICAgICAgICAgICAgICBNVDgxNzNfVE9QX0FYSV9QUk9UX0VOX01GR19NMCB8Cj4gICAg ICAgICAgICAgICAgICAgICAgICAgTVQ4MTczX1RPUF9BWElfUFJPVF9FTl9NRkdfTTEgfAo+IC0t Cj4gMS44LjEuMS5kaXJ0eQo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCj4gTGludXgtbWVkaWF0ZWsgbWFpbGluZyBsaXN0Cj4gTGludXgtbWVkaWF0ZWtA bGlzdHMuaW5mcmFkZWFkLm9yZwo+IGh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4v bGlzdGluZm8vbGludXgtbWVkaWF0ZWsKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1r ZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWls bWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK