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=-16.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,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 E854BC4338F for ; Thu, 19 Aug 2021 23:14:44 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 90BBF610A5 for ; Thu, 19 Aug 2021 23:14:44 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 90BBF610A5 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id E8A596E82D; Thu, 19 Aug 2021 23:14:43 +0000 (UTC) Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3D7966E82D for ; Thu, 19 Aug 2021 23:14:43 +0000 (UTC) Received: by mail.kernel.org (Postfix) with ESMTPSA id DCB66610CF for ; Thu, 19 Aug 2021 23:14:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1629414883; bh=MnMKoiEsPI8MxcU9wOGQK/b3k2bojlD0gEpNceWtW6Y=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=g9sFQNge2zIpwuH4EaVuY26gpUjzm/FnsJmJsmFIr3WFQ+BwIHwI/4xgtpMzsLHru 9Nu5kuvwhoqS4J2I384gygQeYzlDhKWjrVUzBH+TJI32Asdz2+EOeMmsCYmHSHAa6C lmugKpd3SAOBUHg91LGg7pSvv0aZ8piqzTyrQn8+riNUhsvDw39TWEkhZ0wedmzvsN 2rNUAI5eTekNOtHJcgd9pWkwtxJUE+0CpHfo6TktdxqyX8qNwRuJ/mmYX/K/1hfwkQ pGzgeKNvzvkY4DCWDRqXq+BGVW1SRmy+i9um1qTuCGIPNL1VkORhmAV7+YmCWJ88n8 Ri7fAh7CTHvIg== Received: by mail-ej1-f43.google.com with SMTP id b10so16117668eju.9 for ; Thu, 19 Aug 2021 16:14:42 -0700 (PDT) X-Gm-Message-State: AOAM532XvyVSo5S5hjKjfT3VjBf1x2o2JMK22nulzqZQAf8eZhfGQozT ouhsOtyP/ibJlsNC9XfPBQ9b0u4mQBiEqyk+Xg== X-Google-Smtp-Source: ABdhPJxBeBbSlod7NbTY61UJVAZhUOOrCl37GDHQ5RSq/gL+auKHlIurBrNcPYSL/LU+04gBLht4HDvsQh7nMVxzfVQ= X-Received: by 2002:a17:906:455:: with SMTP id e21mr18757363eja.310.1629414881386; Thu, 19 Aug 2021 16:14:41 -0700 (PDT) MIME-Version: 1.0 References: <20210819022327.13040-1-jason-jh.lin@mediatek.com> <20210819022327.13040-11-jason-jh.lin@mediatek.com> In-Reply-To: <20210819022327.13040-11-jason-jh.lin@mediatek.com> From: Chun-Kuang Hu Date: Fri, 20 Aug 2021 07:14:30 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v8 10/13] drm/mediatek: adjust to the alphabetic order for mediatek-drm To: "jason-jh.lin" Cc: Rob Herring , Matthias Brugger , Chun-Kuang Hu , fshao@chromium.org, Philipp Zabel , Enric Balletbo i Serra , David Airlie , Daniel Vetter , Fabien Parent , Hsin-Yi Wang , Yongqiang Niu , Jitao shi , Nancy Lin , singo.chang@mediatek.com, DTML , Linux ARM , "moderated list:ARM/Mediatek SoC support" , linux-kernel , DRI Development Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Hi, Jason: jason-jh.lin =E6=96=BC 2021=E5=B9=B48=E6=9C=881= 9=E6=97=A5 =E9=80=B1=E5=9B=9B =E4=B8=8A=E5=8D=8810:24=E5=AF=AB=E9=81=93=EF= =BC=9A > > Adjust to the alphabetic order for the define, function, struct > and array in mediatek-drm driver > > Signed-off-by: jason-jh.lin > --- > drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 133 ++++++++++---------- > drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h | 22 ++-- > drivers/gpu/drm/mediatek/mtk_drm_drv.c | 76 +++++------ > 3 files changed, 115 insertions(+), 116 deletions(-) > > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c b/drivers/gpu/dr= m/mediatek/mtk_drm_ddp_comp.c > index 93beb980414f..28bc42fd0b8a 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c > @@ -20,17 +20,9 @@ > #include "mtk_drm_ddp_comp.h" > #include "mtk_drm_crtc.h" > > -#define DISP_REG_OD_EN 0x0000 > -#define DISP_REG_OD_CFG 0x0020 > -#define DISP_REG_OD_SIZE 0x0030 > -#define DISP_REG_DITHER_5 0x0114 > -#define DISP_REG_DITHER_7 0x011c > -#define DISP_REG_DITHER_15 0x013c > -#define DISP_REG_DITHER_16 0x0140 > - > -#define DISP_REG_UFO_START 0x0000 > > #define DISP_REG_AAL_EN 0x0000 > +#define AAL_EN BIT(0) > #define DISP_REG_AAL_SIZE 0x0030 > > #define DISP_REG_DITHER_EN 0x0000 > @@ -38,23 +30,29 @@ > #define DISP_REG_DITHER_CFG 0x0020 > #define DITHER_RELAY_MODE BIT(0) > #define DITHER_ENGINE_EN BIT(1) > -#define DISP_REG_DITHER_SIZE 0x0030 > - > -#define OD_RELAYMODE BIT(0) > - > -#define UFO_BYPASS BIT(2) > - > -#define AAL_EN BIT(0) > > #define DISP_DITHERING BIT(2) > +#define DISP_REG_DITHER_SIZE 0x0030 > +#define DISP_REG_DITHER_5 0x0114 > +#define DISP_REG_DITHER_7 0x011c > +#define DISP_REG_DITHER_15 0x013c > #define DITHER_LSB_ERR_SHIFT_R(x) (((x) & 0x7) << 28) > #define DITHER_ADD_LSHIFT_R(x) (((x) & 0x7) << 20) > #define DITHER_NEW_BIT_MODE BIT(0) > +#define DISP_REG_DITHER_16 0x0140 > #define DITHER_LSB_ERR_SHIFT_B(x) (((x) & 0x7) << 28) > #define DITHER_ADD_LSHIFT_B(x) (((x) & 0x7) << 20) > #define DITHER_LSB_ERR_SHIFT_G(x) (((x) & 0x7) << 12) > #define DITHER_ADD_LSHIFT_G(x) (((x) & 0x7) << 4) > > +#define DISP_REG_OD_EN 0x0000 > +#define DISP_REG_OD_CFG 0x0020 > +#define OD_RELAYMODE BIT(0) > +#define DISP_REG_OD_SIZE 0x0030 > + > +#define DISP_REG_UFO_START 0x0000 > +#define UFO_BYPASS BIT(2) > + > struct mtk_ddp_comp_dev { > struct clk *clk; > void __iomem *regs; > @@ -106,20 +104,6 @@ void mtk_ddp_write_mask(struct cmdq_pkt *cmdq_pkt, u= nsigned int value, > #endif > } > > -static int mtk_ddp_clk_enable(struct device *dev) > -{ > - struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > - > - return clk_prepare_enable(priv->clk); > -} > - > -static void mtk_ddp_clk_disable(struct device *dev) > -{ > - struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > - > - clk_disable_unprepare(priv->clk); > -} > - I would like to place the same group together. mtk_ddp_clk_enable() and mtk_ddp_clk_disable() are common function not belong to any sub driver. So I would like keep these function here. Regards, Chun-Kuang. > void mtk_dither_set_common(void __iomem *regs, struct cmdq_client_reg *c= mdq_reg, > unsigned int bpc, unsigned int cfg, > unsigned int dither_en, struct cmdq_pkt *cmdq_= pkt) > @@ -146,38 +130,19 @@ void mtk_dither_set_common(void __iomem *regs, stru= ct cmdq_client_reg *cmdq_reg, > } > } > > -static void mtk_dither_set(struct device *dev, unsigned int bpc, > - unsigned int cfg, struct cmdq_pkt *cmdq_pkt) > -{ > - struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > - > - mtk_dither_set_common(priv->regs, &priv->cmdq_reg, bpc, cfg, > - DISP_DITHERING, cmdq_pkt); > -} > - > -static void mtk_od_config(struct device *dev, unsigned int w, > - unsigned int h, unsigned int vrefresh, > - unsigned int bpc, struct cmdq_pkt *cmdq_pkt) > -{ > - struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > - > - mtk_ddp_write(cmdq_pkt, w << 16 | h, &priv->cmdq_reg, priv->regs,= DISP_REG_OD_SIZE); > - mtk_ddp_write(cmdq_pkt, OD_RELAYMODE, &priv->cmdq_reg, priv->regs= , DISP_REG_OD_CFG); > - mtk_dither_set(dev, bpc, DISP_REG_OD_CFG, cmdq_pkt); > -} > > -static void mtk_od_start(struct device *dev) > +static int mtk_ddp_clk_enable(struct device *dev) > { > struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > > - writel(1, priv->regs + DISP_REG_OD_EN); > + return clk_prepare_enable(priv->clk); > } > > -static void mtk_ufoe_start(struct device *dev) > +static void mtk_ddp_clk_disable(struct device *dev) > { > struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > > - writel(UFO_BYPASS, priv->regs + DISP_REG_UFO_START); > + clk_disable_unprepare(priv->clk); > } > > static void mtk_aal_config(struct device *dev, unsigned int w, > @@ -237,6 +202,40 @@ static void mtk_dither_stop(struct device *dev) > writel_relaxed(0x0, priv->regs + DISP_REG_DITHER_EN); > } > > +static void mtk_dither_set(struct device *dev, unsigned int bpc, > + unsigned int cfg, struct cmdq_pkt *cmdq_pkt) > +{ > + struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > + > + mtk_dither_set_common(priv->regs, &priv->cmdq_reg, bpc, cfg, > + DISP_DITHERING, cmdq_pkt); > +} > + > +static void mtk_od_config(struct device *dev, unsigned int w, > + unsigned int h, unsigned int vrefresh, > + unsigned int bpc, struct cmdq_pkt *cmdq_pkt) > +{ > + struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > + > + mtk_ddp_write(cmdq_pkt, w << 16 | h, &priv->cmdq_reg, priv->regs,= DISP_REG_OD_SIZE); > + mtk_ddp_write(cmdq_pkt, OD_RELAYMODE, &priv->cmdq_reg, priv->regs= , DISP_REG_OD_CFG); > + mtk_dither_set(dev, bpc, DISP_REG_OD_CFG, cmdq_pkt); > +} > + > +static void mtk_od_start(struct device *dev) > +{ > + struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > + > + writel(1, priv->regs + DISP_REG_OD_EN); > +} > + > +static void mtk_ufoe_start(struct device *dev) > +{ > + struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > + > + writel(UFO_BYPASS, priv->regs + DISP_REG_UFO_START); > +} > + > static const struct mtk_ddp_comp_funcs ddp_aal =3D { > .clk_enable =3D mtk_ddp_clk_enable, > .clk_disable =3D mtk_ddp_clk_disable, > @@ -331,22 +330,22 @@ static const struct mtk_ddp_comp_funcs ddp_ufoe =3D= { > }; > > static const char * const mtk_ddp_comp_stem[MTK_DDP_COMP_TYPE_MAX] =3D { > + [MTK_DISP_AAL] =3D "aal", > + [MTK_DISP_BLS] =3D "bls", > + [MTK_DISP_CCORR] =3D "ccorr", > + [MTK_DISP_COLOR] =3D "color", > + [MTK_DISP_DITHER] =3D "dither", > + [MTK_DISP_GAMMA] =3D "gamma", > + [MTK_DISP_MUTEX] =3D "mutex", > + [MTK_DISP_OD] =3D "od", > [MTK_DISP_OVL] =3D "ovl", > [MTK_DISP_OVL_2L] =3D "ovl-2l", > + [MTK_DISP_PWM] =3D "pwm", > [MTK_DISP_RDMA] =3D "rdma", > - [MTK_DISP_WDMA] =3D "wdma", > - [MTK_DISP_COLOR] =3D "color", > - [MTK_DISP_CCORR] =3D "ccorr", > - [MTK_DISP_AAL] =3D "aal", > - [MTK_DISP_GAMMA] =3D "gamma", > - [MTK_DISP_DITHER] =3D "dither", > [MTK_DISP_UFOE] =3D "ufoe", > - [MTK_DSI] =3D "dsi", > + [MTK_DISP_WDMA] =3D "wdma", > [MTK_DPI] =3D "dpi", > - [MTK_DISP_PWM] =3D "pwm", > - [MTK_DISP_MUTEX] =3D "mutex", > - [MTK_DISP_OD] =3D "od", > - [MTK_DISP_BLS] =3D "bls", > + [MTK_DSI] =3D "dsi", > }; > > struct mtk_ddp_comp_match { > @@ -500,12 +499,12 @@ int mtk_ddp_comp_init(struct device_node *node, str= uct mtk_ddp_comp *comp, > type =3D=3D MTK_DISP_CCORR || > type =3D=3D MTK_DISP_COLOR || > type =3D=3D MTK_DISP_GAMMA || > - type =3D=3D MTK_DPI || > - type =3D=3D MTK_DSI || > type =3D=3D MTK_DISP_OVL || > type =3D=3D MTK_DISP_OVL_2L || > type =3D=3D MTK_DISP_PWM || > - type =3D=3D MTK_DISP_RDMA) > + type =3D=3D MTK_DISP_RDMA || > + type =3D=3D MTK_DPI || > + type =3D=3D MTK_DSI) > return 0; > > priv =3D devm_kzalloc(comp->dev, sizeof(*priv), GFP_KERNEL); > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h b/drivers/gpu/dr= m/mediatek/mtk_drm_ddp_comp.h > index bb914d976cf5..d317b944df66 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h > +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h > @@ -18,22 +18,22 @@ struct mtk_plane_state; > struct drm_crtc_state; > > enum mtk_ddp_comp_type { > - MTK_DISP_OVL, > - MTK_DISP_OVL_2L, > - MTK_DISP_RDMA, > - MTK_DISP_WDMA, > - MTK_DISP_COLOR, > + MTK_DISP_AAL, > + MTK_DISP_BLS, > MTK_DISP_CCORR, > + MTK_DISP_COLOR, > MTK_DISP_DITHER, > - MTK_DISP_AAL, > MTK_DISP_GAMMA, > - MTK_DISP_UFOE, > - MTK_DSI, > - MTK_DPI, > - MTK_DISP_PWM, > MTK_DISP_MUTEX, > MTK_DISP_OD, > - MTK_DISP_BLS, > + MTK_DISP_OVL, > + MTK_DISP_OVL_2L, > + MTK_DISP_PWM, > + MTK_DISP_RDMA, > + MTK_DISP_UFOE, > + MTK_DISP_WDMA, > + MTK_DPI, > + MTK_DSI, > MTK_DDP_COMP_TYPE_MAX, > }; > > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/med= iatek/mtk_drm_drv.c > index b46bdb8985da..a95dc1006b82 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > @@ -396,50 +396,20 @@ static const struct component_master_ops mtk_drm_op= s =3D { > }; > > static const struct of_device_id mtk_ddp_comp_dt_ids[] =3D { > - { .compatible =3D "mediatek,mt2701-disp-ovl", > - .data =3D (void *)MTK_DISP_OVL }, > - { .compatible =3D "mediatek,mt8173-disp-ovl", > - .data =3D (void *)MTK_DISP_OVL }, > - { .compatible =3D "mediatek,mt8183-disp-ovl", > - .data =3D (void *)MTK_DISP_OVL }, > - { .compatible =3D "mediatek,mt8183-disp-ovl-2l", > - .data =3D (void *)MTK_DISP_OVL_2L }, > - { .compatible =3D "mediatek,mt2701-disp-rdma", > - .data =3D (void *)MTK_DISP_RDMA }, > - { .compatible =3D "mediatek,mt8173-disp-rdma", > - .data =3D (void *)MTK_DISP_RDMA }, > - { .compatible =3D "mediatek,mt8183-disp-rdma", > - .data =3D (void *)MTK_DISP_RDMA }, > - { .compatible =3D "mediatek,mt8173-disp-wdma", > - .data =3D (void *)MTK_DISP_WDMA }, > + { .compatible =3D "mediatek,mt8173-disp-aal", > + .data =3D (void *)MTK_DISP_AAL}, > { .compatible =3D "mediatek,mt8183-disp-ccorr", > .data =3D (void *)MTK_DISP_CCORR }, > { .compatible =3D "mediatek,mt2701-disp-color", > .data =3D (void *)MTK_DISP_COLOR }, > { .compatible =3D "mediatek,mt8173-disp-color", > .data =3D (void *)MTK_DISP_COLOR }, > - { .compatible =3D "mediatek,mt8173-disp-aal", > - .data =3D (void *)MTK_DISP_AAL}, > + { .compatible =3D "mediatek,mt8183-disp-dither", > + .data =3D (void *)MTK_DISP_DITHER }, > { .compatible =3D "mediatek,mt8173-disp-gamma", > .data =3D (void *)MTK_DISP_GAMMA, }, > { .compatible =3D "mediatek,mt8183-disp-gamma", > .data =3D (void *)MTK_DISP_GAMMA, }, > - { .compatible =3D "mediatek,mt8183-disp-dither", > - .data =3D (void *)MTK_DISP_DITHER }, > - { .compatible =3D "mediatek,mt8173-disp-ufoe", > - .data =3D (void *)MTK_DISP_UFOE }, > - { .compatible =3D "mediatek,mt2701-dsi", > - .data =3D (void *)MTK_DSI }, > - { .compatible =3D "mediatek,mt8173-dsi", > - .data =3D (void *)MTK_DSI }, > - { .compatible =3D "mediatek,mt8183-dsi", > - .data =3D (void *)MTK_DSI }, > - { .compatible =3D "mediatek,mt2701-dpi", > - .data =3D (void *)MTK_DPI }, > - { .compatible =3D "mediatek,mt8173-dpi", > - .data =3D (void *)MTK_DPI }, > - { .compatible =3D "mediatek,mt8183-dpi", > - .data =3D (void *)MTK_DPI }, > { .compatible =3D "mediatek,mt2701-disp-mutex", > .data =3D (void *)MTK_DISP_MUTEX }, > { .compatible =3D "mediatek,mt2712-disp-mutex", > @@ -448,12 +418,42 @@ static const struct of_device_id mtk_ddp_comp_dt_id= s[] =3D { > .data =3D (void *)MTK_DISP_MUTEX }, > { .compatible =3D "mediatek,mt8183-disp-mutex", > .data =3D (void *)MTK_DISP_MUTEX }, > + { .compatible =3D "mediatek,mt8173-disp-od", > + .data =3D (void *)MTK_DISP_OD }, > + { .compatible =3D "mediatek,mt2701-disp-ovl", > + .data =3D (void *)MTK_DISP_OVL }, > + { .compatible =3D "mediatek,mt8173-disp-ovl", > + .data =3D (void *)MTK_DISP_OVL }, > + { .compatible =3D "mediatek,mt8183-disp-ovl", > + .data =3D (void *)MTK_DISP_OVL }, > + { .compatible =3D "mediatek,mt8183-disp-ovl-2l", > + .data =3D (void *)MTK_DISP_OVL_2L }, > { .compatible =3D "mediatek,mt2701-disp-pwm", > .data =3D (void *)MTK_DISP_BLS }, > { .compatible =3D "mediatek,mt8173-disp-pwm", > .data =3D (void *)MTK_DISP_PWM }, > - { .compatible =3D "mediatek,mt8173-disp-od", > - .data =3D (void *)MTK_DISP_OD }, > + { .compatible =3D "mediatek,mt2701-disp-rdma", > + .data =3D (void *)MTK_DISP_RDMA }, > + { .compatible =3D "mediatek,mt8173-disp-rdma", > + .data =3D (void *)MTK_DISP_RDMA }, > + { .compatible =3D "mediatek,mt8183-disp-rdma", > + .data =3D (void *)MTK_DISP_RDMA }, > + { .compatible =3D "mediatek,mt8173-disp-ufoe", > + .data =3D (void *)MTK_DISP_UFOE }, > + { .compatible =3D "mediatek,mt8173-disp-wdma", > + .data =3D (void *)MTK_DISP_WDMA }, > + { .compatible =3D "mediatek,mt2701-dpi", > + .data =3D (void *)MTK_DPI }, > + { .compatible =3D "mediatek,mt8173-dpi", > + .data =3D (void *)MTK_DPI }, > + { .compatible =3D "mediatek,mt8183-dpi", > + .data =3D (void *)MTK_DPI }, > + { .compatible =3D "mediatek,mt2701-dsi", > + .data =3D (void *)MTK_DSI }, > + { .compatible =3D "mediatek,mt8173-dsi", > + .data =3D (void *)MTK_DSI }, > + { .compatible =3D "mediatek,mt8183-dsi", > + .data =3D (void *)MTK_DSI }, > { } > }; > > @@ -542,8 +542,8 @@ static int mtk_drm_probe(struct platform_device *pdev= ) > comp_type =3D=3D MTK_DISP_OVL || > comp_type =3D=3D MTK_DISP_OVL_2L || > comp_type =3D=3D MTK_DISP_RDMA || > - comp_type =3D=3D MTK_DSI || > - comp_type =3D=3D MTK_DPI) { > + comp_type =3D=3D MTK_DPI || > + comp_type =3D=3D MTK_DSI) { > dev_info(dev, "Adding component match for %pOF\n"= , > node); > drm_of_component_match_add(dev, &match, compare_o= f, > -- > 2.18.0 > 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=-14.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI, 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 51A48C432BE for ; Thu, 19 Aug 2021 23:15:13 +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 14E7461056 for ; Thu, 19 Aug 2021 23:15:13 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 14E7461056 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:Subject:Message-ID:Date:From: In-Reply-To:References:MIME-Version:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=+b6fcx3LugNEHtiEZhEqtXASaTHBSK99O7McZ8cdM6A=; b=jwUcoXsBITG5kd R/7bDHzJpqX0OmiiKCh52l+4n2+LbrIqMcTdhxqrWunBwgwOfAhaW80uLRIWdhxLUfu3r5BK5dhQQ hBMiEHJs7RGpn4uVn8cD6LvxGwJNCKoHgp2N0yDJnzEvSES66abmKFLdZMYMwfy3cVHal3RWrmohF MMtYD9IgJRgujDbhjSYwrL8AcEPLh8NIvWyFCsiXyN0olelaru1EFyCXM00Ymy23QytvOaWbCPuq0 zaU+IWMFOrF78JqD50/7HWWskgDRHvRO0PvFrHUJZ/X7Ll2gMdRh2l2TgrTUmgE+LhEx/vdUjdIjM 9EU9LlcwOR8RGBmp0hJQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mGrFS-009iFH-8G; Thu, 19 Aug 2021 23:14:58 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mGrFD-009iDM-IY; Thu, 19 Aug 2021 23:14:45 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id E5936610A1; Thu, 19 Aug 2021 23:14:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1629414883; bh=MnMKoiEsPI8MxcU9wOGQK/b3k2bojlD0gEpNceWtW6Y=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=g9sFQNge2zIpwuH4EaVuY26gpUjzm/FnsJmJsmFIr3WFQ+BwIHwI/4xgtpMzsLHru 9Nu5kuvwhoqS4J2I384gygQeYzlDhKWjrVUzBH+TJI32Asdz2+EOeMmsCYmHSHAa6C lmugKpd3SAOBUHg91LGg7pSvv0aZ8piqzTyrQn8+riNUhsvDw39TWEkhZ0wedmzvsN 2rNUAI5eTekNOtHJcgd9pWkwtxJUE+0CpHfo6TktdxqyX8qNwRuJ/mmYX/K/1hfwkQ pGzgeKNvzvkY4DCWDRqXq+BGVW1SRmy+i9um1qTuCGIPNL1VkORhmAV7+YmCWJ88n8 Ri7fAh7CTHvIg== Received: by mail-ej1-f41.google.com with SMTP id bt14so16202778ejb.3; Thu, 19 Aug 2021 16:14:42 -0700 (PDT) X-Gm-Message-State: AOAM531K99xX9UbxOhcTGH9CMosP76jLwjoWtcn2FL2DKUnKbsfhzDZc MIguDH2VCsrp8uclzPDuqwQXnNcQKAnhGJFyVw== X-Google-Smtp-Source: ABdhPJxBeBbSlod7NbTY61UJVAZhUOOrCl37GDHQ5RSq/gL+auKHlIurBrNcPYSL/LU+04gBLht4HDvsQh7nMVxzfVQ= X-Received: by 2002:a17:906:455:: with SMTP id e21mr18757363eja.310.1629414881386; Thu, 19 Aug 2021 16:14:41 -0700 (PDT) MIME-Version: 1.0 References: <20210819022327.13040-1-jason-jh.lin@mediatek.com> <20210819022327.13040-11-jason-jh.lin@mediatek.com> In-Reply-To: <20210819022327.13040-11-jason-jh.lin@mediatek.com> From: Chun-Kuang Hu Date: Fri, 20 Aug 2021 07:14:30 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v8 10/13] drm/mediatek: adjust to the alphabetic order for mediatek-drm To: "jason-jh.lin" Cc: Rob Herring , Matthias Brugger , Chun-Kuang Hu , fshao@chromium.org, Philipp Zabel , Enric Balletbo i Serra , David Airlie , Daniel Vetter , Fabien Parent , Hsin-Yi Wang , Yongqiang Niu , Jitao shi , Nancy Lin , singo.chang@mediatek.com, DTML , Linux ARM , "moderated list:ARM/Mediatek SoC support" , linux-kernel , DRI Development X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210819_161443_703982_063275EA X-CRM114-Status: GOOD ( 22.72 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org SGksIEphc29uOgoKamFzb24tamgubGluIDxqYXNvbi1qaC5saW5AbWVkaWF0ZWsuY29tPiDmlrwg MjAyMeW5tDjmnIgxOeaXpSDpgLHlm5sg5LiK5Y2IMTA6MjTlr6vpgZPvvJoKPgo+IEFkanVzdCB0 byB0aGUgYWxwaGFiZXRpYyBvcmRlciBmb3IgdGhlIGRlZmluZSwgZnVuY3Rpb24sIHN0cnVjdAo+ IGFuZCBhcnJheSBpbiBtZWRpYXRlay1kcm0gZHJpdmVyCj4KPiBTaWduZWQtb2ZmLWJ5OiBqYXNv bi1qaC5saW4gPGphc29uLWpoLmxpbkBtZWRpYXRlay5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1 L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmMgfCAxMzMgKysrKysrKysrKy0tLS0tLS0t LS0KPiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2NvbXAuaCB8ICAyMiAr Ky0tCj4gIGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jICAgICAgfCAgNzYg KysrKystLS0tLS0KPiAgMyBmaWxlcyBjaGFuZ2VkLCAxMTUgaW5zZXJ0aW9ucygrKSwgMTE2IGRl bGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtf ZHJtX2RkcF9jb21wLmMgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29t cC5jCj4gaW5kZXggOTNiZWI5ODA0MTRmLi4yOGJjNDJmZDBiOGEgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2NvbXAuYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmMKPiBAQCAtMjAsMTcgKzIwLDkgQEAK PiAgI2luY2x1ZGUgIm10a19kcm1fZGRwX2NvbXAuaCIKPiAgI2luY2x1ZGUgIm10a19kcm1fY3J0 Yy5oIgo+Cj4gLSNkZWZpbmUgRElTUF9SRUdfT0RfRU4gICAgICAgICAgICAgICAgICAgICAgICAg MHgwMDAwCj4gLSNkZWZpbmUgRElTUF9SRUdfT0RfQ0ZHICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAweDAwMjAKPiAtI2RlZmluZSBESVNQX1JFR19PRF9TSVpFICAgICAgICAgICAgICAg ICAgICAgICAweDAwMzAKPiAtI2RlZmluZSBESVNQX1JFR19ESVRIRVJfNSAgICAgICAgICAgICAg ICAgICAgICAweDAxMTQKPiAtI2RlZmluZSBESVNQX1JFR19ESVRIRVJfNyAgICAgICAgICAgICAg ICAgICAgICAweDAxMWMKPiAtI2RlZmluZSBESVNQX1JFR19ESVRIRVJfMTUgICAgICAgICAgICAg ICAgICAgICAweDAxM2MKPiAtI2RlZmluZSBESVNQX1JFR19ESVRIRVJfMTYgICAgICAgICAgICAg ICAgICAgICAweDAxNDAKPiAtCj4gLSNkZWZpbmUgRElTUF9SRUdfVUZPX1NUQVJUICAgICAgICAg ICAgICAgICAgICAgMHgwMDAwCj4KPiAgI2RlZmluZSBESVNQX1JFR19BQUxfRU4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMAo+ICsjZGVmaW5lIEFBTF9FTiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEJJVCgwKQo+ICAjZGVmaW5lIERJU1BfUkVHX0FBTF9TSVpF ICAgICAgICAgICAgICAgICAgICAgIDB4MDAzMAo+Cj4gICNkZWZpbmUgRElTUF9SRUdfRElUSEVS X0VOICAgICAgICAgICAgICAgICAgICAgMHgwMDAwCj4gQEAgLTM4LDIzICszMCwyOSBAQAo+ICAj ZGVmaW5lIERJU1BfUkVHX0RJVEhFUl9DRkcgICAgICAgICAgICAgICAgICAgIDB4MDAyMAo+ICAj ZGVmaW5lIERJVEhFUl9SRUxBWV9NT0RFICAgICAgICAgICAgICAgICAgICAgIEJJVCgwKQo+ICAj ZGVmaW5lIERJVEhFUl9FTkdJTkVfRU4gICAgICAgICAgICAgICAgICAgICAgIEJJVCgxKQo+IC0j ZGVmaW5lIERJU1BfUkVHX0RJVEhFUl9TSVpFICAgICAgICAgICAgICAgICAgIDB4MDAzMAo+IC0K PiAtI2RlZmluZSBPRF9SRUxBWU1PREUgICAgICAgICAgICAgICAgICAgICAgICAgICBCSVQoMCkK PiAtCj4gLSNkZWZpbmUgVUZPX0JZUEFTUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQklU KDIpCj4gLQo+IC0jZGVmaW5lIEFBTF9FTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEJJVCgwKQo+Cj4gICNkZWZpbmUgRElTUF9ESVRIRVJJTkcgICAgICAgICAgICAgICAgICAgICAg ICAgQklUKDIpCj4gKyNkZWZpbmUgRElTUF9SRUdfRElUSEVSX1NJWkUgICAgICAgICAgICAgICAg ICAgMHgwMDMwCj4gKyNkZWZpbmUgRElTUF9SRUdfRElUSEVSXzUgICAgICAgICAgICAgICAgICAg ICAgMHgwMTE0Cj4gKyNkZWZpbmUgRElTUF9SRUdfRElUSEVSXzcgICAgICAgICAgICAgICAgICAg ICAgMHgwMTFjCj4gKyNkZWZpbmUgRElTUF9SRUdfRElUSEVSXzE1ICAgICAgICAgICAgICAgICAg ICAgMHgwMTNjCj4gICNkZWZpbmUgRElUSEVSX0xTQl9FUlJfU0hJRlRfUih4KSAgICAgICAgICAg ICAgKCgoeCkgJiAweDcpIDw8IDI4KQo+ICAjZGVmaW5lIERJVEhFUl9BRERfTFNISUZUX1IoeCkg ICAgICAgICAgICAgICAgICgoKHgpICYgMHg3KSA8PCAyMCkKPiAgI2RlZmluZSBESVRIRVJfTkVX X0JJVF9NT0RFICAgICAgICAgICAgICAgICAgICBCSVQoMCkKPiArI2RlZmluZSBESVNQX1JFR19E SVRIRVJfMTYgICAgICAgICAgICAgICAgICAgICAweDAxNDAKPiAgI2RlZmluZSBESVRIRVJfTFNC X0VSUl9TSElGVF9CKHgpICAgICAgICAgICAgICAoKCh4KSAmIDB4NykgPDwgMjgpCj4gICNkZWZp bmUgRElUSEVSX0FERF9MU0hJRlRfQih4KSAgICAgICAgICAgICAgICAgKCgoeCkgJiAweDcpIDw8 IDIwKQo+ICAjZGVmaW5lIERJVEhFUl9MU0JfRVJSX1NISUZUX0coeCkgICAgICAgICAgICAgICgo KHgpICYgMHg3KSA8PCAxMikKPiAgI2RlZmluZSBESVRIRVJfQUREX0xTSElGVF9HKHgpICAgICAg ICAgICAgICAgICAoKCh4KSAmIDB4NykgPDwgNCkKPgo+ICsjZGVmaW5lIERJU1BfUkVHX09EX0VO ICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMAo+ICsjZGVmaW5lIERJU1BfUkVHX09EX0NG RyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDIwCj4gKyNkZWZpbmUgT0RfUkVM QVlNT0RFICAgICAgICAgICAgICAgICAgICAgICAgICAgQklUKDApCj4gKyNkZWZpbmUgRElTUF9S RUdfT0RfU0laRSAgICAgICAgICAgICAgICAgICAgICAgMHgwMDMwCj4gKwo+ICsjZGVmaW5lIERJ U1BfUkVHX1VGT19TVEFSVCAgICAgICAgICAgICAgICAgICAgIDB4MDAwMAo+ICsjZGVmaW5lIFVG T19CWVBBU1MgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJJVCgyKQo+ICsKPiAgc3RydWN0 IG10a19kZHBfY29tcF9kZXYgewo+ICAgICAgICAgc3RydWN0IGNsayAqY2xrOwo+ICAgICAgICAg dm9pZCBfX2lvbWVtICpyZWdzOwo+IEBAIC0xMDYsMjAgKzEwNCw2IEBAIHZvaWQgbXRrX2RkcF93 cml0ZV9tYXNrKHN0cnVjdCBjbWRxX3BrdCAqY21kcV9wa3QsIHVuc2lnbmVkIGludCB2YWx1ZSwK PiAgI2VuZGlmCj4gIH0KPgo+IC1zdGF0aWMgaW50IG10a19kZHBfY2xrX2VuYWJsZShzdHJ1Y3Qg ZGV2aWNlICpkZXYpCj4gLXsKPiAtICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2 ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gLQo+IC0gICAgICAgcmV0dXJuIGNsa19wcmVwYXJl X2VuYWJsZShwcml2LT5jbGspOwo+IC19Cj4gLQo+IC1zdGF0aWMgdm9pZCBtdGtfZGRwX2Nsa19k aXNhYmxlKHN0cnVjdCBkZXZpY2UgKmRldikKPiAtewo+IC0gICAgICAgc3RydWN0IG10a19kZHBf Y29tcF9kZXYgKnByaXYgPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPiAtCj4gLSAgICAgICBjbGtf ZGlzYWJsZV91bnByZXBhcmUocHJpdi0+Y2xrKTsKPiAtfQo+IC0KCkkgd291bGQgbGlrZSB0byBw bGFjZSB0aGUgc2FtZSBncm91cCB0b2dldGhlci4gbXRrX2RkcF9jbGtfZW5hYmxlKCkKYW5kIG10 a19kZHBfY2xrX2Rpc2FibGUoKSBhcmUgY29tbW9uIGZ1bmN0aW9uIG5vdCBiZWxvbmcgdG8gYW55 IHN1Ygpkcml2ZXIuIFNvIEkgd291bGQgbGlrZSBrZWVwIHRoZXNlIGZ1bmN0aW9uIGhlcmUuCgpS ZWdhcmRzLApDaHVuLUt1YW5nLgoKPiAgdm9pZCBtdGtfZGl0aGVyX3NldF9jb21tb24odm9pZCBf X2lvbWVtICpyZWdzLCBzdHJ1Y3QgY21kcV9jbGllbnRfcmVnICpjbWRxX3JlZywKPiAgICAgICAg ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgYnBjLCB1bnNpZ25lZCBpbnQgY2ZnLAo+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBkaXRoZXJfZW4sIHN0cnVj dCBjbWRxX3BrdCAqY21kcV9wa3QpCj4gQEAgLTE0NiwzOCArMTMwLDE5IEBAIHZvaWQgbXRrX2Rp dGhlcl9zZXRfY29tbW9uKHZvaWQgX19pb21lbSAqcmVncywgc3RydWN0IGNtZHFfY2xpZW50X3Jl ZyAqY21kcV9yZWcsCj4gICAgICAgICB9Cj4gIH0KPgo+IC1zdGF0aWMgdm9pZCBtdGtfZGl0aGVy X3NldChzdHJ1Y3QgZGV2aWNlICpkZXYsIHVuc2lnbmVkIGludCBicGMsCj4gLSAgICAgICAgICAg ICAgICAgICB1bnNpZ25lZCBpbnQgY2ZnLCBzdHJ1Y3QgY21kcV9wa3QgKmNtZHFfcGt0KQo+IC17 Cj4gLSAgICAgICBzdHJ1Y3QgbXRrX2RkcF9jb21wX2RldiAqcHJpdiA9IGRldl9nZXRfZHJ2ZGF0 YShkZXYpOwo+IC0KPiAtICAgICAgIG10a19kaXRoZXJfc2V0X2NvbW1vbihwcml2LT5yZWdzLCAm cHJpdi0+Y21kcV9yZWcsIGJwYywgY2ZnLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAg IERJU1BfRElUSEVSSU5HLCBjbWRxX3BrdCk7Cj4gLX0KPiAtCj4gLXN0YXRpYyB2b2lkIG10a19v ZF9jb25maWcoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25lZCBpbnQgdywKPiAtICAgICAgICAg ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBoLCB1bnNpZ25lZCBpbnQgdnJlZnJlc2gsCj4g LSAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgYnBjLCBzdHJ1Y3QgY21kcV9w a3QgKmNtZHFfcGt0KQo+IC17Cj4gLSAgICAgICBzdHJ1Y3QgbXRrX2RkcF9jb21wX2RldiAqcHJp diA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwo+IC0KPiAtICAgICAgIG10a19kZHBfd3JpdGUoY21k cV9wa3QsIHcgPDwgMTYgfCBoLCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3MsIERJU1BfUkVH X09EX1NJWkUpOwo+IC0gICAgICAgbXRrX2RkcF93cml0ZShjbWRxX3BrdCwgT0RfUkVMQVlNT0RF LCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3MsIERJU1BfUkVHX09EX0NGRyk7Cj4gLSAgICAg ICBtdGtfZGl0aGVyX3NldChkZXYsIGJwYywgRElTUF9SRUdfT0RfQ0ZHLCBjbWRxX3BrdCk7Cj4g LX0KPgo+IC1zdGF0aWMgdm9pZCBtdGtfb2Rfc3RhcnQoc3RydWN0IGRldmljZSAqZGV2KQo+ICtz dGF0aWMgaW50IG10a19kZHBfY2xrX2VuYWJsZShzdHJ1Y3QgZGV2aWNlICpkZXYpCj4gIHsKPiAg ICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRl dik7Cj4KPiAtICAgICAgIHdyaXRlbCgxLCBwcml2LT5yZWdzICsgRElTUF9SRUdfT0RfRU4pOwo+ ICsgICAgICAgcmV0dXJuIGNsa19wcmVwYXJlX2VuYWJsZShwcml2LT5jbGspOwo+ICB9Cj4KPiAt c3RhdGljIHZvaWQgbXRrX3Vmb2Vfc3RhcnQoc3RydWN0IGRldmljZSAqZGV2KQo+ICtzdGF0aWMg dm9pZCBtdGtfZGRwX2Nsa19kaXNhYmxlKHN0cnVjdCBkZXZpY2UgKmRldikKPiAgewo+ICAgICAg ICAgc3RydWN0IG10a19kZHBfY29tcF9kZXYgKnByaXYgPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsK Pgo+IC0gICAgICAgd3JpdGVsKFVGT19CWVBBU1MsIHByaXYtPnJlZ3MgKyBESVNQX1JFR19VRk9f U1RBUlQpOwo+ICsgICAgICAgY2xrX2Rpc2FibGVfdW5wcmVwYXJlKHByaXYtPmNsayk7Cj4gIH0K Pgo+ICBzdGF0aWMgdm9pZCBtdGtfYWFsX2NvbmZpZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHVuc2ln bmVkIGludCB3LAo+IEBAIC0yMzcsNiArMjAyLDQwIEBAIHN0YXRpYyB2b2lkIG10a19kaXRoZXJf c3RvcChzdHJ1Y3QgZGV2aWNlICpkZXYpCj4gICAgICAgICB3cml0ZWxfcmVsYXhlZCgweDAsIHBy aXYtPnJlZ3MgKyBESVNQX1JFR19ESVRIRVJfRU4pOwo+ICB9Cj4KPiArc3RhdGljIHZvaWQgbXRr X2RpdGhlcl9zZXQoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25lZCBpbnQgYnBjLAo+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBjZmcsIHN0cnVjdCBjbWRxX3BrdCAq Y21kcV9wa3QpCj4gK3sKPiArICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0g ZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gKwo+ICsgICAgICAgbXRrX2RpdGhlcl9zZXRfY29tbW9u KHByaXYtPnJlZ3MsICZwcml2LT5jbWRxX3JlZywgYnBjLCBjZmcsCj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgRElTUF9ESVRIRVJJTkcsIGNtZHFfcGt0KTsKPiArfQo+ICsKPiArc3Rh dGljIHZvaWQgbXRrX29kX2NvbmZpZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHVuc2lnbmVkIGludCB3 LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGgsIHVuc2lnbmVkIGlu dCB2cmVmcmVzaCwKPiArICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBicGMs IHN0cnVjdCBjbWRxX3BrdCAqY21kcV9wa3QpCj4gK3sKPiArICAgICAgIHN0cnVjdCBtdGtfZGRw X2NvbXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gKwo+ICsgICAgICAgbXRr X2RkcF93cml0ZShjbWRxX3BrdCwgdyA8PCAxNiB8IGgsICZwcml2LT5jbWRxX3JlZywgcHJpdi0+ cmVncywgRElTUF9SRUdfT0RfU0laRSk7Cj4gKyAgICAgICBtdGtfZGRwX3dyaXRlKGNtZHFfcGt0 LCBPRF9SRUxBWU1PREUsICZwcml2LT5jbWRxX3JlZywgcHJpdi0+cmVncywgRElTUF9SRUdfT0Rf Q0ZHKTsKPiArICAgICAgIG10a19kaXRoZXJfc2V0KGRldiwgYnBjLCBESVNQX1JFR19PRF9DRkcs IGNtZHFfcGt0KTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgbXRrX29kX3N0YXJ0KHN0cnVjdCBk ZXZpY2UgKmRldikKPiArewo+ICsgICAgICAgc3RydWN0IG10a19kZHBfY29tcF9kZXYgKnByaXYg PSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPiArCj4gKyAgICAgICB3cml0ZWwoMSwgcHJpdi0+cmVn cyArIERJU1BfUkVHX09EX0VOKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgbXRrX3Vmb2Vfc3Rh cnQoc3RydWN0IGRldmljZSAqZGV2KQo+ICt7Cj4gKyAgICAgICBzdHJ1Y3QgbXRrX2RkcF9jb21w X2RldiAqcHJpdiA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwo+ICsKPiArICAgICAgIHdyaXRlbChV Rk9fQllQQVNTLCBwcml2LT5yZWdzICsgRElTUF9SRUdfVUZPX1NUQVJUKTsKPiArfQo+ICsKPiAg c3RhdGljIGNvbnN0IHN0cnVjdCBtdGtfZGRwX2NvbXBfZnVuY3MgZGRwX2FhbCA9IHsKPiAgICAg ICAgIC5jbGtfZW5hYmxlID0gbXRrX2RkcF9jbGtfZW5hYmxlLAo+ICAgICAgICAgLmNsa19kaXNh YmxlID0gbXRrX2RkcF9jbGtfZGlzYWJsZSwKPiBAQCAtMzMxLDIyICszMzAsMjIgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBtdGtfZGRwX2NvbXBfZnVuY3MgZGRwX3Vmb2UgPSB7Cj4gIH07Cj4KPiAg c3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBtdGtfZGRwX2NvbXBfc3RlbVtNVEtfRERQX0NPTVBf VFlQRV9NQVhdID0gewo+ICsgICAgICAgW01US19ESVNQX0FBTF0gPSAiYWFsIiwKPiArICAgICAg IFtNVEtfRElTUF9CTFNdID0gImJscyIsCj4gKyAgICAgICBbTVRLX0RJU1BfQ0NPUlJdID0gImNj b3JyIiwKPiArICAgICAgIFtNVEtfRElTUF9DT0xPUl0gPSAiY29sb3IiLAo+ICsgICAgICAgW01U S19ESVNQX0RJVEhFUl0gPSAiZGl0aGVyIiwKPiArICAgICAgIFtNVEtfRElTUF9HQU1NQV0gPSAi Z2FtbWEiLAo+ICsgICAgICAgW01US19ESVNQX01VVEVYXSA9ICJtdXRleCIsCj4gKyAgICAgICBb TVRLX0RJU1BfT0RdID0gIm9kIiwKPiAgICAgICAgIFtNVEtfRElTUF9PVkxdID0gIm92bCIsCj4g ICAgICAgICBbTVRLX0RJU1BfT1ZMXzJMXSA9ICJvdmwtMmwiLAo+ICsgICAgICAgW01US19ESVNQ X1BXTV0gPSAicHdtIiwKPiAgICAgICAgIFtNVEtfRElTUF9SRE1BXSA9ICJyZG1hIiwKPiAtICAg ICAgIFtNVEtfRElTUF9XRE1BXSA9ICJ3ZG1hIiwKPiAtICAgICAgIFtNVEtfRElTUF9DT0xPUl0g PSAiY29sb3IiLAo+IC0gICAgICAgW01US19ESVNQX0NDT1JSXSA9ICJjY29yciIsCj4gLSAgICAg ICBbTVRLX0RJU1BfQUFMXSA9ICJhYWwiLAo+IC0gICAgICAgW01US19ESVNQX0dBTU1BXSA9ICJn YW1tYSIsCj4gLSAgICAgICBbTVRLX0RJU1BfRElUSEVSXSA9ICJkaXRoZXIiLAo+ICAgICAgICAg W01US19ESVNQX1VGT0VdID0gInVmb2UiLAo+IC0gICAgICAgW01US19EU0ldID0gImRzaSIsCj4g KyAgICAgICBbTVRLX0RJU1BfV0RNQV0gPSAid2RtYSIsCj4gICAgICAgICBbTVRLX0RQSV0gPSAi ZHBpIiwKPiAtICAgICAgIFtNVEtfRElTUF9QV01dID0gInB3bSIsCj4gLSAgICAgICBbTVRLX0RJ U1BfTVVURVhdID0gIm11dGV4IiwKPiAtICAgICAgIFtNVEtfRElTUF9PRF0gPSAib2QiLAo+IC0g ICAgICAgW01US19ESVNQX0JMU10gPSAiYmxzIiwKPiArICAgICAgIFtNVEtfRFNJXSA9ICJkc2ki LAo+ICB9Owo+Cj4gIHN0cnVjdCBtdGtfZGRwX2NvbXBfbWF0Y2ggewo+IEBAIC01MDAsMTIgKzQ5 OSwxMiBAQCBpbnQgbXRrX2RkcF9jb21wX2luaXQoc3RydWN0IGRldmljZV9ub2RlICpub2RlLCBz dHJ1Y3QgbXRrX2RkcF9jb21wICpjb21wLAo+ICAgICAgICAgICAgIHR5cGUgPT0gTVRLX0RJU1Bf Q0NPUlIgfHwKPiAgICAgICAgICAgICB0eXBlID09IE1US19ESVNQX0NPTE9SIHx8Cj4gICAgICAg ICAgICAgdHlwZSA9PSBNVEtfRElTUF9HQU1NQSB8fAo+IC0gICAgICAgICAgIHR5cGUgPT0gTVRL X0RQSSB8fAo+IC0gICAgICAgICAgIHR5cGUgPT0gTVRLX0RTSSB8fAo+ICAgICAgICAgICAgIHR5 cGUgPT0gTVRLX0RJU1BfT1ZMIHx8Cj4gICAgICAgICAgICAgdHlwZSA9PSBNVEtfRElTUF9PVkxf MkwgfHwKPiAgICAgICAgICAgICB0eXBlID09IE1US19ESVNQX1BXTSB8fAo+IC0gICAgICAgICAg IHR5cGUgPT0gTVRLX0RJU1BfUkRNQSkKPiArICAgICAgICAgICB0eXBlID09IE1US19ESVNQX1JE TUEgfHwKPiArICAgICAgICAgICB0eXBlID09IE1US19EUEkgfHwKPiArICAgICAgICAgICB0eXBl ID09IE1US19EU0kpCj4gICAgICAgICAgICAgICAgIHJldHVybiAwOwo+Cj4gICAgICAgICBwcml2 ID0gZGV2bV9remFsbG9jKGNvbXAtPmRldiwgc2l6ZW9mKCpwcml2KSwgR0ZQX0tFUk5FTCk7Cj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmgg Yi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29tcC5oCj4gaW5kZXggYmI5 MTRkOTc2Y2Y1Li5kMzE3Yjk0NGRmNjYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21l ZGlhdGVrL210a19kcm1fZGRwX2NvbXAuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRl ay9tdGtfZHJtX2RkcF9jb21wLmgKPiBAQCAtMTgsMjIgKzE4LDIyIEBAIHN0cnVjdCBtdGtfcGxh bmVfc3RhdGU7Cj4gIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZTsKPgo+ICBlbnVtIG10a19kZHBfY29t cF90eXBlIHsKPiAtICAgICAgIE1US19ESVNQX09WTCwKPiAtICAgICAgIE1US19ESVNQX09WTF8y TCwKPiAtICAgICAgIE1US19ESVNQX1JETUEsCj4gLSAgICAgICBNVEtfRElTUF9XRE1BLAo+IC0g ICAgICAgTVRLX0RJU1BfQ09MT1IsCj4gKyAgICAgICBNVEtfRElTUF9BQUwsCj4gKyAgICAgICBN VEtfRElTUF9CTFMsCj4gICAgICAgICBNVEtfRElTUF9DQ09SUiwKPiArICAgICAgIE1US19ESVNQ X0NPTE9SLAo+ICAgICAgICAgTVRLX0RJU1BfRElUSEVSLAo+IC0gICAgICAgTVRLX0RJU1BfQUFM LAo+ICAgICAgICAgTVRLX0RJU1BfR0FNTUEsCj4gLSAgICAgICBNVEtfRElTUF9VRk9FLAo+IC0g ICAgICAgTVRLX0RTSSwKPiAtICAgICAgIE1US19EUEksCj4gLSAgICAgICBNVEtfRElTUF9QV00s Cj4gICAgICAgICBNVEtfRElTUF9NVVRFWCwKPiAgICAgICAgIE1US19ESVNQX09ELAo+IC0gICAg ICAgTVRLX0RJU1BfQkxTLAo+ICsgICAgICAgTVRLX0RJU1BfT1ZMLAo+ICsgICAgICAgTVRLX0RJ U1BfT1ZMXzJMLAo+ICsgICAgICAgTVRLX0RJU1BfUFdNLAo+ICsgICAgICAgTVRLX0RJU1BfUkRN QSwKPiArICAgICAgIE1US19ESVNQX1VGT0UsCj4gKyAgICAgICBNVEtfRElTUF9XRE1BLAo+ICsg ICAgICAgTVRLX0RQSSwKPiArICAgICAgIE1US19EU0ksCj4gICAgICAgICBNVEtfRERQX0NPTVBf VFlQRV9NQVgsCj4gIH07Cj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVr L210a19kcm1fZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuYwo+ IGluZGV4IGI0NmJkYjg5ODVkYS4uYTk1ZGMxMDA2YjgyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21l ZGlhdGVrL210a19kcm1fZHJ2LmMKPiBAQCAtMzk2LDUwICszOTYsMjAgQEAgc3RhdGljIGNvbnN0 IHN0cnVjdCBjb21wb25lbnRfbWFzdGVyX29wcyBtdGtfZHJtX29wcyA9IHsKPiAgfTsKPgo+ICBz dGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBtdGtfZGRwX2NvbXBfZHRfaWRzW10gPSB7 Cj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcwMS1kaXNwLW92bCIsCj4g LSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9PVkwgfSwKPiAtICAgICAgIHsgLmNv bXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3Atb3ZsIiwKPiAtICAgICAgICAgLmRhdGEg PSAodm9pZCAqKU1US19ESVNQX09WTCB9LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRp YXRlayxtdDgxODMtZGlzcC1vdmwiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJ U1BfT1ZMIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kaXNw LW92bC0ybCIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9PVkxfMkwgfSwK PiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQyNzAxLWRpc3AtcmRtYSIsCj4g LSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9SRE1BIH0sCj4gLSAgICAgICB7IC5j b21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLXJkbWEiLAo+IC0gICAgICAgICAuZGF0 YSA9ICh2b2lkICopTVRLX0RJU1BfUkRNQSB9LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJt ZWRpYXRlayxtdDgxODMtZGlzcC1yZG1hIiwKPiAtICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1U S19ESVNQX1JETUEgfSwKPiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTcz LWRpc3Atd2RtYSIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9XRE1BIH0s Cj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLWFhbCIsCj4g KyAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9BQUx9LAo+ICAgICAgICAgeyAuY29t cGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxODMtZGlzcC1jY29yciIsCj4gICAgICAgICAgIC5kYXRh ID0gKHZvaWQgKilNVEtfRElTUF9DQ09SUiB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJsZSA9ICJt ZWRpYXRlayxtdDI3MDEtZGlzcC1jb2xvciIsCj4gICAgICAgICAgIC5kYXRhID0gKHZvaWQgKilN VEtfRElTUF9DT0xPUiB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgx NzMtZGlzcC1jb2xvciIsCj4gICAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9DT0xP UiB9LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZGlzcC1hYWwi LAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfQUFMfSwKPiArICAgICAgIHsg LmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtZGl0aGVyIiwKPiArICAgICAgICAg LmRhdGEgPSAodm9pZCAqKU1US19ESVNQX0RJVEhFUiB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJs ZSA9ICJtZWRpYXRlayxtdDgxNzMtZGlzcC1nYW1tYSIsCj4gICAgICAgICAgIC5kYXRhID0gKHZv aWQgKilNVEtfRElTUF9HQU1NQSwgfSwKPiAgICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0 ZWssbXQ4MTgzLWRpc3AtZ2FtbWEiLAo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJ U1BfR0FNTUEsIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1k aXNwLWRpdGhlciIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9ESVRIRVIg fSwKPiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3AtdWZvZSIs Cj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9VRk9FIH0sCj4gLSAgICAgICB7 IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcwMS1kc2kiLAo+IC0gICAgICAgICAuZGF0YSA9 ICh2b2lkICopTVRLX0RTSSB9LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxt dDgxNzMtZHNpIiwKPiAtICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EU0kgfSwKPiAtICAg ICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRzaSIsCj4gLSAgICAgICAgIC5k YXRhID0gKHZvaWQgKilNVEtfRFNJIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlh dGVrLG10MjcwMS1kcGkiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RQSSB9LAo+ IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZHBpIiwKPiAtICAgICAg ICAgLmRhdGEgPSAodm9pZCAqKU1US19EUEkgfSwKPiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAi bWVkaWF0ZWssbXQ4MTgzLWRwaSIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRFBJ IH0sCj4gICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcwMS1kaXNwLW11dGV4 IiwKPiAgICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX01VVEVYIH0sCj4gICAgICAg ICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcxMi1kaXNwLW11dGV4IiwKPiBAQCAtNDQ4 LDEyICs0MTgsNDIgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXRrX2RkcF9j b21wX2R0X2lkc1tdID0gewo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfTVVU RVggfSwKPiAgICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtbXV0 ZXgiLAo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfTVVURVggfSwKPiArICAg ICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3Atb2QiLAo+ICsgICAgICAg ICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfT0QgfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUg PSAibWVkaWF0ZWssbXQyNzAxLWRpc3Atb3ZsIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAq KU1US19ESVNQX09WTCB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgx NzMtZGlzcC1vdmwiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfT1ZMIH0s Cj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kaXNwLW92bCIsCj4g KyAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9PVkwgfSwKPiArICAgICAgIHsgLmNv bXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3Atb3ZsLTJsIiwKPiArICAgICAgICAgLmRh dGEgPSAodm9pZCAqKU1US19ESVNQX09WTF8yTCB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJsZSA9 ICJtZWRpYXRlayxtdDI3MDEtZGlzcC1wd20iLAo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICop TVRLX0RJU1BfQkxTIH0sCj4gICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3 My1kaXNwLXB3bSIsCj4gICAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9QV00gfSwK PiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3Atb2QiLAo+IC0g ICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfT0QgfSwKPiArICAgICAgIHsgLmNvbXBh dGlibGUgPSAibWVkaWF0ZWssbXQyNzAxLWRpc3AtcmRtYSIsCj4gKyAgICAgICAgIC5kYXRhID0g KHZvaWQgKilNVEtfRElTUF9SRE1BIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlh dGVrLG10ODE3My1kaXNwLXJkbWEiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJ U1BfUkRNQSB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxODMtZGlz cC1yZG1hIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX1JETUEgfSwKPiAr ICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3AtdWZvZSIsCj4gKyAg ICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9VRk9FIH0sCj4gKyAgICAgICB7IC5jb21w YXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLXdkbWEiLAo+ICsgICAgICAgICAuZGF0YSA9 ICh2b2lkICopTVRLX0RJU1BfV0RNQSB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRp YXRlayxtdDI3MDEtZHBpIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EUEkgfSwK PiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRwaSIsCj4gKyAgICAg ICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRFBJIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0g Im1lZGlhdGVrLG10ODE4My1kcGkiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RQ SSB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3MDEtZHNpIiwKPiAr ICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EU0kgfSwKPiArICAgICAgIHsgLmNvbXBhdGli bGUgPSAibWVkaWF0ZWssbXQ4MTczLWRzaSIsCj4gKyAgICAgICAgIC5kYXRhID0gKHZvaWQgKilN VEtfRFNJIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kc2ki LAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RTSSB9LAo+ICAgICAgICAgeyB9Cj4g IH07Cj4KPiBAQCAtNTQyLDggKzU0Miw4IEBAIHN0YXRpYyBpbnQgbXRrX2RybV9wcm9iZShzdHJ1 Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBl ID09IE1US19ESVNQX09WTCB8fAo+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1U S19ESVNQX09WTF8yTCB8fAo+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1US19E SVNQX1JETUEgfHwKPiAtICAgICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtfRFNJIHx8 Cj4gLSAgICAgICAgICAgICAgICAgICBjb21wX3R5cGUgPT0gTVRLX0RQSSkgewo+ICsgICAgICAg ICAgICAgICAgICAgY29tcF90eXBlID09IE1US19EUEkgfHwKPiArICAgICAgICAgICAgICAgICAg IGNvbXBfdHlwZSA9PSBNVEtfRFNJKSB7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgZGV2X2lu Zm8oZGV2LCAiQWRkaW5nIGNvbXBvbmVudCBtYXRjaCBmb3IgJXBPRlxuIiwKPiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBub2RlKTsKPiAgICAgICAgICAgICAgICAgICAgICAgICBk cm1fb2ZfY29tcG9uZW50X21hdGNoX2FkZChkZXYsICZtYXRjaCwgY29tcGFyZV9vZiwKPiAtLQo+ IDIuMTguMAo+CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpMaW51eC1tZWRpYXRlayBtYWlsaW5nIGxpc3QKTGludXgtbWVkaWF0ZWtAbGlzdHMuaW5mcmFk ZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4 LW1lZGlhdGVrCg== 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=-14.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI, 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 72FA1C4338F for ; Thu, 19 Aug 2021 23:17:54 +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 3E7A0610A1 for ; Thu, 19 Aug 2021 23:17:54 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 3E7A0610A1 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:Subject:Message-ID:Date:From: In-Reply-To:References:MIME-Version:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=E82z3NlkZXBQyp5xsD2fUyHFCekmZc7pTBfynKyse70=; b=nHXxK96+8TDJiG QqvE3Ohjvt51zBwZkxUZwKcskr0AKwdmeVEd3gjPruL11oSfxATHGF0KjDwpNzVTp2QETQOlfjp8c VDtPGGsnq/TFcTjOXM+ojsAx1fMUchBI4I6kQOJ3VCEUa6jYeXiqhd7Hm9TMghZ43ulJcRjC+Xgbi EXiVXcCrfrJkU3hTv6IUr8FUBgGXNKAe7JPGg2H3TS09OyhWxmySsPrhu+4/dLytNFr3P5DhENngg 4mStvI3eUib8NYqZeeAuZBmfm0apq3IihKgCYXaCRHZ9OP/RFtu6pmMP2Cs5VvijbB0XgLSUc0Tnb ThPSkl5HVWSwUrp7SyHA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mGrFI-009iEF-Nq; Thu, 19 Aug 2021 23:14:48 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mGrFD-009iDM-IY; Thu, 19 Aug 2021 23:14:45 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id E5936610A1; Thu, 19 Aug 2021 23:14:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1629414883; bh=MnMKoiEsPI8MxcU9wOGQK/b3k2bojlD0gEpNceWtW6Y=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=g9sFQNge2zIpwuH4EaVuY26gpUjzm/FnsJmJsmFIr3WFQ+BwIHwI/4xgtpMzsLHru 9Nu5kuvwhoqS4J2I384gygQeYzlDhKWjrVUzBH+TJI32Asdz2+EOeMmsCYmHSHAa6C lmugKpd3SAOBUHg91LGg7pSvv0aZ8piqzTyrQn8+riNUhsvDw39TWEkhZ0wedmzvsN 2rNUAI5eTekNOtHJcgd9pWkwtxJUE+0CpHfo6TktdxqyX8qNwRuJ/mmYX/K/1hfwkQ pGzgeKNvzvkY4DCWDRqXq+BGVW1SRmy+i9um1qTuCGIPNL1VkORhmAV7+YmCWJ88n8 Ri7fAh7CTHvIg== Received: by mail-ej1-f41.google.com with SMTP id bt14so16202778ejb.3; Thu, 19 Aug 2021 16:14:42 -0700 (PDT) X-Gm-Message-State: AOAM531K99xX9UbxOhcTGH9CMosP76jLwjoWtcn2FL2DKUnKbsfhzDZc MIguDH2VCsrp8uclzPDuqwQXnNcQKAnhGJFyVw== X-Google-Smtp-Source: ABdhPJxBeBbSlod7NbTY61UJVAZhUOOrCl37GDHQ5RSq/gL+auKHlIurBrNcPYSL/LU+04gBLht4HDvsQh7nMVxzfVQ= X-Received: by 2002:a17:906:455:: with SMTP id e21mr18757363eja.310.1629414881386; Thu, 19 Aug 2021 16:14:41 -0700 (PDT) MIME-Version: 1.0 References: <20210819022327.13040-1-jason-jh.lin@mediatek.com> <20210819022327.13040-11-jason-jh.lin@mediatek.com> In-Reply-To: <20210819022327.13040-11-jason-jh.lin@mediatek.com> From: Chun-Kuang Hu Date: Fri, 20 Aug 2021 07:14:30 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v8 10/13] drm/mediatek: adjust to the alphabetic order for mediatek-drm To: "jason-jh.lin" Cc: Rob Herring , Matthias Brugger , Chun-Kuang Hu , fshao@chromium.org, Philipp Zabel , Enric Balletbo i Serra , David Airlie , Daniel Vetter , Fabien Parent , Hsin-Yi Wang , Yongqiang Niu , Jitao shi , Nancy Lin , singo.chang@mediatek.com, DTML , Linux ARM , "moderated list:ARM/Mediatek SoC support" , linux-kernel , DRI Development X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210819_161443_703982_063275EA X-CRM114-Status: GOOD ( 22.72 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGksIEphc29uOgoKamFzb24tamgubGluIDxqYXNvbi1qaC5saW5AbWVkaWF0ZWsuY29tPiDmlrwg MjAyMeW5tDjmnIgxOeaXpSDpgLHlm5sg5LiK5Y2IMTA6MjTlr6vpgZPvvJoKPgo+IEFkanVzdCB0 byB0aGUgYWxwaGFiZXRpYyBvcmRlciBmb3IgdGhlIGRlZmluZSwgZnVuY3Rpb24sIHN0cnVjdAo+ IGFuZCBhcnJheSBpbiBtZWRpYXRlay1kcm0gZHJpdmVyCj4KPiBTaWduZWQtb2ZmLWJ5OiBqYXNv bi1qaC5saW4gPGphc29uLWpoLmxpbkBtZWRpYXRlay5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1 L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmMgfCAxMzMgKysrKysrKysrKy0tLS0tLS0t LS0KPiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2NvbXAuaCB8ICAyMiAr Ky0tCj4gIGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jICAgICAgfCAgNzYg KysrKystLS0tLS0KPiAgMyBmaWxlcyBjaGFuZ2VkLCAxMTUgaW5zZXJ0aW9ucygrKSwgMTE2IGRl bGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtf ZHJtX2RkcF9jb21wLmMgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29t cC5jCj4gaW5kZXggOTNiZWI5ODA0MTRmLi4yOGJjNDJmZDBiOGEgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2NvbXAuYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmMKPiBAQCAtMjAsMTcgKzIwLDkgQEAK PiAgI2luY2x1ZGUgIm10a19kcm1fZGRwX2NvbXAuaCIKPiAgI2luY2x1ZGUgIm10a19kcm1fY3J0 Yy5oIgo+Cj4gLSNkZWZpbmUgRElTUF9SRUdfT0RfRU4gICAgICAgICAgICAgICAgICAgICAgICAg MHgwMDAwCj4gLSNkZWZpbmUgRElTUF9SRUdfT0RfQ0ZHICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAweDAwMjAKPiAtI2RlZmluZSBESVNQX1JFR19PRF9TSVpFICAgICAgICAgICAgICAg ICAgICAgICAweDAwMzAKPiAtI2RlZmluZSBESVNQX1JFR19ESVRIRVJfNSAgICAgICAgICAgICAg ICAgICAgICAweDAxMTQKPiAtI2RlZmluZSBESVNQX1JFR19ESVRIRVJfNyAgICAgICAgICAgICAg ICAgICAgICAweDAxMWMKPiAtI2RlZmluZSBESVNQX1JFR19ESVRIRVJfMTUgICAgICAgICAgICAg ICAgICAgICAweDAxM2MKPiAtI2RlZmluZSBESVNQX1JFR19ESVRIRVJfMTYgICAgICAgICAgICAg ICAgICAgICAweDAxNDAKPiAtCj4gLSNkZWZpbmUgRElTUF9SRUdfVUZPX1NUQVJUICAgICAgICAg ICAgICAgICAgICAgMHgwMDAwCj4KPiAgI2RlZmluZSBESVNQX1JFR19BQUxfRU4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMAo+ICsjZGVmaW5lIEFBTF9FTiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEJJVCgwKQo+ICAjZGVmaW5lIERJU1BfUkVHX0FBTF9TSVpF ICAgICAgICAgICAgICAgICAgICAgIDB4MDAzMAo+Cj4gICNkZWZpbmUgRElTUF9SRUdfRElUSEVS X0VOICAgICAgICAgICAgICAgICAgICAgMHgwMDAwCj4gQEAgLTM4LDIzICszMCwyOSBAQAo+ICAj ZGVmaW5lIERJU1BfUkVHX0RJVEhFUl9DRkcgICAgICAgICAgICAgICAgICAgIDB4MDAyMAo+ICAj ZGVmaW5lIERJVEhFUl9SRUxBWV9NT0RFICAgICAgICAgICAgICAgICAgICAgIEJJVCgwKQo+ICAj ZGVmaW5lIERJVEhFUl9FTkdJTkVfRU4gICAgICAgICAgICAgICAgICAgICAgIEJJVCgxKQo+IC0j ZGVmaW5lIERJU1BfUkVHX0RJVEhFUl9TSVpFICAgICAgICAgICAgICAgICAgIDB4MDAzMAo+IC0K PiAtI2RlZmluZSBPRF9SRUxBWU1PREUgICAgICAgICAgICAgICAgICAgICAgICAgICBCSVQoMCkK PiAtCj4gLSNkZWZpbmUgVUZPX0JZUEFTUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQklU KDIpCj4gLQo+IC0jZGVmaW5lIEFBTF9FTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEJJVCgwKQo+Cj4gICNkZWZpbmUgRElTUF9ESVRIRVJJTkcgICAgICAgICAgICAgICAgICAgICAg ICAgQklUKDIpCj4gKyNkZWZpbmUgRElTUF9SRUdfRElUSEVSX1NJWkUgICAgICAgICAgICAgICAg ICAgMHgwMDMwCj4gKyNkZWZpbmUgRElTUF9SRUdfRElUSEVSXzUgICAgICAgICAgICAgICAgICAg ICAgMHgwMTE0Cj4gKyNkZWZpbmUgRElTUF9SRUdfRElUSEVSXzcgICAgICAgICAgICAgICAgICAg ICAgMHgwMTFjCj4gKyNkZWZpbmUgRElTUF9SRUdfRElUSEVSXzE1ICAgICAgICAgICAgICAgICAg ICAgMHgwMTNjCj4gICNkZWZpbmUgRElUSEVSX0xTQl9FUlJfU0hJRlRfUih4KSAgICAgICAgICAg ICAgKCgoeCkgJiAweDcpIDw8IDI4KQo+ICAjZGVmaW5lIERJVEhFUl9BRERfTFNISUZUX1IoeCkg ICAgICAgICAgICAgICAgICgoKHgpICYgMHg3KSA8PCAyMCkKPiAgI2RlZmluZSBESVRIRVJfTkVX X0JJVF9NT0RFICAgICAgICAgICAgICAgICAgICBCSVQoMCkKPiArI2RlZmluZSBESVNQX1JFR19E SVRIRVJfMTYgICAgICAgICAgICAgICAgICAgICAweDAxNDAKPiAgI2RlZmluZSBESVRIRVJfTFNC X0VSUl9TSElGVF9CKHgpICAgICAgICAgICAgICAoKCh4KSAmIDB4NykgPDwgMjgpCj4gICNkZWZp bmUgRElUSEVSX0FERF9MU0hJRlRfQih4KSAgICAgICAgICAgICAgICAgKCgoeCkgJiAweDcpIDw8 IDIwKQo+ICAjZGVmaW5lIERJVEhFUl9MU0JfRVJSX1NISUZUX0coeCkgICAgICAgICAgICAgICgo KHgpICYgMHg3KSA8PCAxMikKPiAgI2RlZmluZSBESVRIRVJfQUREX0xTSElGVF9HKHgpICAgICAg ICAgICAgICAgICAoKCh4KSAmIDB4NykgPDwgNCkKPgo+ICsjZGVmaW5lIERJU1BfUkVHX09EX0VO ICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMAo+ICsjZGVmaW5lIERJU1BfUkVHX09EX0NG RyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDIwCj4gKyNkZWZpbmUgT0RfUkVM QVlNT0RFICAgICAgICAgICAgICAgICAgICAgICAgICAgQklUKDApCj4gKyNkZWZpbmUgRElTUF9S RUdfT0RfU0laRSAgICAgICAgICAgICAgICAgICAgICAgMHgwMDMwCj4gKwo+ICsjZGVmaW5lIERJ U1BfUkVHX1VGT19TVEFSVCAgICAgICAgICAgICAgICAgICAgIDB4MDAwMAo+ICsjZGVmaW5lIFVG T19CWVBBU1MgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJJVCgyKQo+ICsKPiAgc3RydWN0 IG10a19kZHBfY29tcF9kZXYgewo+ICAgICAgICAgc3RydWN0IGNsayAqY2xrOwo+ICAgICAgICAg dm9pZCBfX2lvbWVtICpyZWdzOwo+IEBAIC0xMDYsMjAgKzEwNCw2IEBAIHZvaWQgbXRrX2RkcF93 cml0ZV9tYXNrKHN0cnVjdCBjbWRxX3BrdCAqY21kcV9wa3QsIHVuc2lnbmVkIGludCB2YWx1ZSwK PiAgI2VuZGlmCj4gIH0KPgo+IC1zdGF0aWMgaW50IG10a19kZHBfY2xrX2VuYWJsZShzdHJ1Y3Qg ZGV2aWNlICpkZXYpCj4gLXsKPiAtICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2 ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gLQo+IC0gICAgICAgcmV0dXJuIGNsa19wcmVwYXJl X2VuYWJsZShwcml2LT5jbGspOwo+IC19Cj4gLQo+IC1zdGF0aWMgdm9pZCBtdGtfZGRwX2Nsa19k aXNhYmxlKHN0cnVjdCBkZXZpY2UgKmRldikKPiAtewo+IC0gICAgICAgc3RydWN0IG10a19kZHBf Y29tcF9kZXYgKnByaXYgPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPiAtCj4gLSAgICAgICBjbGtf ZGlzYWJsZV91bnByZXBhcmUocHJpdi0+Y2xrKTsKPiAtfQo+IC0KCkkgd291bGQgbGlrZSB0byBw bGFjZSB0aGUgc2FtZSBncm91cCB0b2dldGhlci4gbXRrX2RkcF9jbGtfZW5hYmxlKCkKYW5kIG10 a19kZHBfY2xrX2Rpc2FibGUoKSBhcmUgY29tbW9uIGZ1bmN0aW9uIG5vdCBiZWxvbmcgdG8gYW55 IHN1Ygpkcml2ZXIuIFNvIEkgd291bGQgbGlrZSBrZWVwIHRoZXNlIGZ1bmN0aW9uIGhlcmUuCgpS ZWdhcmRzLApDaHVuLUt1YW5nLgoKPiAgdm9pZCBtdGtfZGl0aGVyX3NldF9jb21tb24odm9pZCBf X2lvbWVtICpyZWdzLCBzdHJ1Y3QgY21kcV9jbGllbnRfcmVnICpjbWRxX3JlZywKPiAgICAgICAg ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgYnBjLCB1bnNpZ25lZCBpbnQgY2ZnLAo+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBkaXRoZXJfZW4sIHN0cnVj dCBjbWRxX3BrdCAqY21kcV9wa3QpCj4gQEAgLTE0NiwzOCArMTMwLDE5IEBAIHZvaWQgbXRrX2Rp dGhlcl9zZXRfY29tbW9uKHZvaWQgX19pb21lbSAqcmVncywgc3RydWN0IGNtZHFfY2xpZW50X3Jl ZyAqY21kcV9yZWcsCj4gICAgICAgICB9Cj4gIH0KPgo+IC1zdGF0aWMgdm9pZCBtdGtfZGl0aGVy X3NldChzdHJ1Y3QgZGV2aWNlICpkZXYsIHVuc2lnbmVkIGludCBicGMsCj4gLSAgICAgICAgICAg ICAgICAgICB1bnNpZ25lZCBpbnQgY2ZnLCBzdHJ1Y3QgY21kcV9wa3QgKmNtZHFfcGt0KQo+IC17 Cj4gLSAgICAgICBzdHJ1Y3QgbXRrX2RkcF9jb21wX2RldiAqcHJpdiA9IGRldl9nZXRfZHJ2ZGF0 YShkZXYpOwo+IC0KPiAtICAgICAgIG10a19kaXRoZXJfc2V0X2NvbW1vbihwcml2LT5yZWdzLCAm cHJpdi0+Y21kcV9yZWcsIGJwYywgY2ZnLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAg IERJU1BfRElUSEVSSU5HLCBjbWRxX3BrdCk7Cj4gLX0KPiAtCj4gLXN0YXRpYyB2b2lkIG10a19v ZF9jb25maWcoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25lZCBpbnQgdywKPiAtICAgICAgICAg ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBoLCB1bnNpZ25lZCBpbnQgdnJlZnJlc2gsCj4g LSAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgYnBjLCBzdHJ1Y3QgY21kcV9w a3QgKmNtZHFfcGt0KQo+IC17Cj4gLSAgICAgICBzdHJ1Y3QgbXRrX2RkcF9jb21wX2RldiAqcHJp diA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwo+IC0KPiAtICAgICAgIG10a19kZHBfd3JpdGUoY21k cV9wa3QsIHcgPDwgMTYgfCBoLCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3MsIERJU1BfUkVH X09EX1NJWkUpOwo+IC0gICAgICAgbXRrX2RkcF93cml0ZShjbWRxX3BrdCwgT0RfUkVMQVlNT0RF LCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3MsIERJU1BfUkVHX09EX0NGRyk7Cj4gLSAgICAg ICBtdGtfZGl0aGVyX3NldChkZXYsIGJwYywgRElTUF9SRUdfT0RfQ0ZHLCBjbWRxX3BrdCk7Cj4g LX0KPgo+IC1zdGF0aWMgdm9pZCBtdGtfb2Rfc3RhcnQoc3RydWN0IGRldmljZSAqZGV2KQo+ICtz dGF0aWMgaW50IG10a19kZHBfY2xrX2VuYWJsZShzdHJ1Y3QgZGV2aWNlICpkZXYpCj4gIHsKPiAg ICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRl dik7Cj4KPiAtICAgICAgIHdyaXRlbCgxLCBwcml2LT5yZWdzICsgRElTUF9SRUdfT0RfRU4pOwo+ ICsgICAgICAgcmV0dXJuIGNsa19wcmVwYXJlX2VuYWJsZShwcml2LT5jbGspOwo+ICB9Cj4KPiAt c3RhdGljIHZvaWQgbXRrX3Vmb2Vfc3RhcnQoc3RydWN0IGRldmljZSAqZGV2KQo+ICtzdGF0aWMg dm9pZCBtdGtfZGRwX2Nsa19kaXNhYmxlKHN0cnVjdCBkZXZpY2UgKmRldikKPiAgewo+ICAgICAg ICAgc3RydWN0IG10a19kZHBfY29tcF9kZXYgKnByaXYgPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsK Pgo+IC0gICAgICAgd3JpdGVsKFVGT19CWVBBU1MsIHByaXYtPnJlZ3MgKyBESVNQX1JFR19VRk9f U1RBUlQpOwo+ICsgICAgICAgY2xrX2Rpc2FibGVfdW5wcmVwYXJlKHByaXYtPmNsayk7Cj4gIH0K Pgo+ICBzdGF0aWMgdm9pZCBtdGtfYWFsX2NvbmZpZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHVuc2ln bmVkIGludCB3LAo+IEBAIC0yMzcsNiArMjAyLDQwIEBAIHN0YXRpYyB2b2lkIG10a19kaXRoZXJf c3RvcChzdHJ1Y3QgZGV2aWNlICpkZXYpCj4gICAgICAgICB3cml0ZWxfcmVsYXhlZCgweDAsIHBy aXYtPnJlZ3MgKyBESVNQX1JFR19ESVRIRVJfRU4pOwo+ICB9Cj4KPiArc3RhdGljIHZvaWQgbXRr X2RpdGhlcl9zZXQoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25lZCBpbnQgYnBjLAo+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBjZmcsIHN0cnVjdCBjbWRxX3BrdCAq Y21kcV9wa3QpCj4gK3sKPiArICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0g ZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gKwo+ICsgICAgICAgbXRrX2RpdGhlcl9zZXRfY29tbW9u KHByaXYtPnJlZ3MsICZwcml2LT5jbWRxX3JlZywgYnBjLCBjZmcsCj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgRElTUF9ESVRIRVJJTkcsIGNtZHFfcGt0KTsKPiArfQo+ICsKPiArc3Rh dGljIHZvaWQgbXRrX29kX2NvbmZpZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHVuc2lnbmVkIGludCB3 LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGgsIHVuc2lnbmVkIGlu dCB2cmVmcmVzaCwKPiArICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBicGMs IHN0cnVjdCBjbWRxX3BrdCAqY21kcV9wa3QpCj4gK3sKPiArICAgICAgIHN0cnVjdCBtdGtfZGRw X2NvbXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gKwo+ICsgICAgICAgbXRr X2RkcF93cml0ZShjbWRxX3BrdCwgdyA8PCAxNiB8IGgsICZwcml2LT5jbWRxX3JlZywgcHJpdi0+ cmVncywgRElTUF9SRUdfT0RfU0laRSk7Cj4gKyAgICAgICBtdGtfZGRwX3dyaXRlKGNtZHFfcGt0 LCBPRF9SRUxBWU1PREUsICZwcml2LT5jbWRxX3JlZywgcHJpdi0+cmVncywgRElTUF9SRUdfT0Rf Q0ZHKTsKPiArICAgICAgIG10a19kaXRoZXJfc2V0KGRldiwgYnBjLCBESVNQX1JFR19PRF9DRkcs IGNtZHFfcGt0KTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgbXRrX29kX3N0YXJ0KHN0cnVjdCBk ZXZpY2UgKmRldikKPiArewo+ICsgICAgICAgc3RydWN0IG10a19kZHBfY29tcF9kZXYgKnByaXYg PSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPiArCj4gKyAgICAgICB3cml0ZWwoMSwgcHJpdi0+cmVn cyArIERJU1BfUkVHX09EX0VOKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgbXRrX3Vmb2Vfc3Rh cnQoc3RydWN0IGRldmljZSAqZGV2KQo+ICt7Cj4gKyAgICAgICBzdHJ1Y3QgbXRrX2RkcF9jb21w X2RldiAqcHJpdiA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwo+ICsKPiArICAgICAgIHdyaXRlbChV Rk9fQllQQVNTLCBwcml2LT5yZWdzICsgRElTUF9SRUdfVUZPX1NUQVJUKTsKPiArfQo+ICsKPiAg c3RhdGljIGNvbnN0IHN0cnVjdCBtdGtfZGRwX2NvbXBfZnVuY3MgZGRwX2FhbCA9IHsKPiAgICAg ICAgIC5jbGtfZW5hYmxlID0gbXRrX2RkcF9jbGtfZW5hYmxlLAo+ICAgICAgICAgLmNsa19kaXNh YmxlID0gbXRrX2RkcF9jbGtfZGlzYWJsZSwKPiBAQCAtMzMxLDIyICszMzAsMjIgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBtdGtfZGRwX2NvbXBfZnVuY3MgZGRwX3Vmb2UgPSB7Cj4gIH07Cj4KPiAg c3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBtdGtfZGRwX2NvbXBfc3RlbVtNVEtfRERQX0NPTVBf VFlQRV9NQVhdID0gewo+ICsgICAgICAgW01US19ESVNQX0FBTF0gPSAiYWFsIiwKPiArICAgICAg IFtNVEtfRElTUF9CTFNdID0gImJscyIsCj4gKyAgICAgICBbTVRLX0RJU1BfQ0NPUlJdID0gImNj b3JyIiwKPiArICAgICAgIFtNVEtfRElTUF9DT0xPUl0gPSAiY29sb3IiLAo+ICsgICAgICAgW01U S19ESVNQX0RJVEhFUl0gPSAiZGl0aGVyIiwKPiArICAgICAgIFtNVEtfRElTUF9HQU1NQV0gPSAi Z2FtbWEiLAo+ICsgICAgICAgW01US19ESVNQX01VVEVYXSA9ICJtdXRleCIsCj4gKyAgICAgICBb TVRLX0RJU1BfT0RdID0gIm9kIiwKPiAgICAgICAgIFtNVEtfRElTUF9PVkxdID0gIm92bCIsCj4g ICAgICAgICBbTVRLX0RJU1BfT1ZMXzJMXSA9ICJvdmwtMmwiLAo+ICsgICAgICAgW01US19ESVNQ X1BXTV0gPSAicHdtIiwKPiAgICAgICAgIFtNVEtfRElTUF9SRE1BXSA9ICJyZG1hIiwKPiAtICAg ICAgIFtNVEtfRElTUF9XRE1BXSA9ICJ3ZG1hIiwKPiAtICAgICAgIFtNVEtfRElTUF9DT0xPUl0g PSAiY29sb3IiLAo+IC0gICAgICAgW01US19ESVNQX0NDT1JSXSA9ICJjY29yciIsCj4gLSAgICAg ICBbTVRLX0RJU1BfQUFMXSA9ICJhYWwiLAo+IC0gICAgICAgW01US19ESVNQX0dBTU1BXSA9ICJn YW1tYSIsCj4gLSAgICAgICBbTVRLX0RJU1BfRElUSEVSXSA9ICJkaXRoZXIiLAo+ICAgICAgICAg W01US19ESVNQX1VGT0VdID0gInVmb2UiLAo+IC0gICAgICAgW01US19EU0ldID0gImRzaSIsCj4g KyAgICAgICBbTVRLX0RJU1BfV0RNQV0gPSAid2RtYSIsCj4gICAgICAgICBbTVRLX0RQSV0gPSAi ZHBpIiwKPiAtICAgICAgIFtNVEtfRElTUF9QV01dID0gInB3bSIsCj4gLSAgICAgICBbTVRLX0RJ U1BfTVVURVhdID0gIm11dGV4IiwKPiAtICAgICAgIFtNVEtfRElTUF9PRF0gPSAib2QiLAo+IC0g ICAgICAgW01US19ESVNQX0JMU10gPSAiYmxzIiwKPiArICAgICAgIFtNVEtfRFNJXSA9ICJkc2ki LAo+ICB9Owo+Cj4gIHN0cnVjdCBtdGtfZGRwX2NvbXBfbWF0Y2ggewo+IEBAIC01MDAsMTIgKzQ5 OSwxMiBAQCBpbnQgbXRrX2RkcF9jb21wX2luaXQoc3RydWN0IGRldmljZV9ub2RlICpub2RlLCBz dHJ1Y3QgbXRrX2RkcF9jb21wICpjb21wLAo+ICAgICAgICAgICAgIHR5cGUgPT0gTVRLX0RJU1Bf Q0NPUlIgfHwKPiAgICAgICAgICAgICB0eXBlID09IE1US19ESVNQX0NPTE9SIHx8Cj4gICAgICAg ICAgICAgdHlwZSA9PSBNVEtfRElTUF9HQU1NQSB8fAo+IC0gICAgICAgICAgIHR5cGUgPT0gTVRL X0RQSSB8fAo+IC0gICAgICAgICAgIHR5cGUgPT0gTVRLX0RTSSB8fAo+ICAgICAgICAgICAgIHR5 cGUgPT0gTVRLX0RJU1BfT1ZMIHx8Cj4gICAgICAgICAgICAgdHlwZSA9PSBNVEtfRElTUF9PVkxf MkwgfHwKPiAgICAgICAgICAgICB0eXBlID09IE1US19ESVNQX1BXTSB8fAo+IC0gICAgICAgICAg IHR5cGUgPT0gTVRLX0RJU1BfUkRNQSkKPiArICAgICAgICAgICB0eXBlID09IE1US19ESVNQX1JE TUEgfHwKPiArICAgICAgICAgICB0eXBlID09IE1US19EUEkgfHwKPiArICAgICAgICAgICB0eXBl ID09IE1US19EU0kpCj4gICAgICAgICAgICAgICAgIHJldHVybiAwOwo+Cj4gICAgICAgICBwcml2 ID0gZGV2bV9remFsbG9jKGNvbXAtPmRldiwgc2l6ZW9mKCpwcml2KSwgR0ZQX0tFUk5FTCk7Cj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmgg Yi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29tcC5oCj4gaW5kZXggYmI5 MTRkOTc2Y2Y1Li5kMzE3Yjk0NGRmNjYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21l ZGlhdGVrL210a19kcm1fZGRwX2NvbXAuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRl ay9tdGtfZHJtX2RkcF9jb21wLmgKPiBAQCAtMTgsMjIgKzE4LDIyIEBAIHN0cnVjdCBtdGtfcGxh bmVfc3RhdGU7Cj4gIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZTsKPgo+ICBlbnVtIG10a19kZHBfY29t cF90eXBlIHsKPiAtICAgICAgIE1US19ESVNQX09WTCwKPiAtICAgICAgIE1US19ESVNQX09WTF8y TCwKPiAtICAgICAgIE1US19ESVNQX1JETUEsCj4gLSAgICAgICBNVEtfRElTUF9XRE1BLAo+IC0g ICAgICAgTVRLX0RJU1BfQ09MT1IsCj4gKyAgICAgICBNVEtfRElTUF9BQUwsCj4gKyAgICAgICBN VEtfRElTUF9CTFMsCj4gICAgICAgICBNVEtfRElTUF9DQ09SUiwKPiArICAgICAgIE1US19ESVNQ X0NPTE9SLAo+ICAgICAgICAgTVRLX0RJU1BfRElUSEVSLAo+IC0gICAgICAgTVRLX0RJU1BfQUFM LAo+ICAgICAgICAgTVRLX0RJU1BfR0FNTUEsCj4gLSAgICAgICBNVEtfRElTUF9VRk9FLAo+IC0g ICAgICAgTVRLX0RTSSwKPiAtICAgICAgIE1US19EUEksCj4gLSAgICAgICBNVEtfRElTUF9QV00s Cj4gICAgICAgICBNVEtfRElTUF9NVVRFWCwKPiAgICAgICAgIE1US19ESVNQX09ELAo+IC0gICAg ICAgTVRLX0RJU1BfQkxTLAo+ICsgICAgICAgTVRLX0RJU1BfT1ZMLAo+ICsgICAgICAgTVRLX0RJ U1BfT1ZMXzJMLAo+ICsgICAgICAgTVRLX0RJU1BfUFdNLAo+ICsgICAgICAgTVRLX0RJU1BfUkRN QSwKPiArICAgICAgIE1US19ESVNQX1VGT0UsCj4gKyAgICAgICBNVEtfRElTUF9XRE1BLAo+ICsg ICAgICAgTVRLX0RQSSwKPiArICAgICAgIE1US19EU0ksCj4gICAgICAgICBNVEtfRERQX0NPTVBf VFlQRV9NQVgsCj4gIH07Cj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVr L210a19kcm1fZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuYwo+ IGluZGV4IGI0NmJkYjg5ODVkYS4uYTk1ZGMxMDA2YjgyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21l ZGlhdGVrL210a19kcm1fZHJ2LmMKPiBAQCAtMzk2LDUwICszOTYsMjAgQEAgc3RhdGljIGNvbnN0 IHN0cnVjdCBjb21wb25lbnRfbWFzdGVyX29wcyBtdGtfZHJtX29wcyA9IHsKPiAgfTsKPgo+ICBz dGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBtdGtfZGRwX2NvbXBfZHRfaWRzW10gPSB7 Cj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcwMS1kaXNwLW92bCIsCj4g LSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9PVkwgfSwKPiAtICAgICAgIHsgLmNv bXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3Atb3ZsIiwKPiAtICAgICAgICAgLmRhdGEg PSAodm9pZCAqKU1US19ESVNQX09WTCB9LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRp YXRlayxtdDgxODMtZGlzcC1vdmwiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJ U1BfT1ZMIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kaXNw LW92bC0ybCIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9PVkxfMkwgfSwK PiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQyNzAxLWRpc3AtcmRtYSIsCj4g LSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9SRE1BIH0sCj4gLSAgICAgICB7IC5j b21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLXJkbWEiLAo+IC0gICAgICAgICAuZGF0 YSA9ICh2b2lkICopTVRLX0RJU1BfUkRNQSB9LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJt ZWRpYXRlayxtdDgxODMtZGlzcC1yZG1hIiwKPiAtICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1U S19ESVNQX1JETUEgfSwKPiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTcz LWRpc3Atd2RtYSIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9XRE1BIH0s Cj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLWFhbCIsCj4g KyAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9BQUx9LAo+ICAgICAgICAgeyAuY29t cGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxODMtZGlzcC1jY29yciIsCj4gICAgICAgICAgIC5kYXRh ID0gKHZvaWQgKilNVEtfRElTUF9DQ09SUiB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJsZSA9ICJt ZWRpYXRlayxtdDI3MDEtZGlzcC1jb2xvciIsCj4gICAgICAgICAgIC5kYXRhID0gKHZvaWQgKilN VEtfRElTUF9DT0xPUiB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgx NzMtZGlzcC1jb2xvciIsCj4gICAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9DT0xP UiB9LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZGlzcC1hYWwi LAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfQUFMfSwKPiArICAgICAgIHsg LmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtZGl0aGVyIiwKPiArICAgICAgICAg LmRhdGEgPSAodm9pZCAqKU1US19ESVNQX0RJVEhFUiB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJs ZSA9ICJtZWRpYXRlayxtdDgxNzMtZGlzcC1nYW1tYSIsCj4gICAgICAgICAgIC5kYXRhID0gKHZv aWQgKilNVEtfRElTUF9HQU1NQSwgfSwKPiAgICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0 ZWssbXQ4MTgzLWRpc3AtZ2FtbWEiLAo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJ U1BfR0FNTUEsIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1k aXNwLWRpdGhlciIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9ESVRIRVIg fSwKPiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3AtdWZvZSIs Cj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9VRk9FIH0sCj4gLSAgICAgICB7 IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcwMS1kc2kiLAo+IC0gICAgICAgICAuZGF0YSA9 ICh2b2lkICopTVRLX0RTSSB9LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxt dDgxNzMtZHNpIiwKPiAtICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EU0kgfSwKPiAtICAg ICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRzaSIsCj4gLSAgICAgICAgIC5k YXRhID0gKHZvaWQgKilNVEtfRFNJIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlh dGVrLG10MjcwMS1kcGkiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RQSSB9LAo+ IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZHBpIiwKPiAtICAgICAg ICAgLmRhdGEgPSAodm9pZCAqKU1US19EUEkgfSwKPiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAi bWVkaWF0ZWssbXQ4MTgzLWRwaSIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRFBJ IH0sCj4gICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcwMS1kaXNwLW11dGV4 IiwKPiAgICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX01VVEVYIH0sCj4gICAgICAg ICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcxMi1kaXNwLW11dGV4IiwKPiBAQCAtNDQ4 LDEyICs0MTgsNDIgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXRrX2RkcF9j b21wX2R0X2lkc1tdID0gewo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfTVVU RVggfSwKPiAgICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtbXV0 ZXgiLAo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfTVVURVggfSwKPiArICAg ICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3Atb2QiLAo+ICsgICAgICAg ICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfT0QgfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUg PSAibWVkaWF0ZWssbXQyNzAxLWRpc3Atb3ZsIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAq KU1US19ESVNQX09WTCB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgx NzMtZGlzcC1vdmwiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfT1ZMIH0s Cj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kaXNwLW92bCIsCj4g KyAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9PVkwgfSwKPiArICAgICAgIHsgLmNv bXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3Atb3ZsLTJsIiwKPiArICAgICAgICAgLmRh dGEgPSAodm9pZCAqKU1US19ESVNQX09WTF8yTCB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJsZSA9 ICJtZWRpYXRlayxtdDI3MDEtZGlzcC1wd20iLAo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICop TVRLX0RJU1BfQkxTIH0sCj4gICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3 My1kaXNwLXB3bSIsCj4gICAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9QV00gfSwK PiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3Atb2QiLAo+IC0g ICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfT0QgfSwKPiArICAgICAgIHsgLmNvbXBh dGlibGUgPSAibWVkaWF0ZWssbXQyNzAxLWRpc3AtcmRtYSIsCj4gKyAgICAgICAgIC5kYXRhID0g KHZvaWQgKilNVEtfRElTUF9SRE1BIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlh dGVrLG10ODE3My1kaXNwLXJkbWEiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJ U1BfUkRNQSB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxODMtZGlz cC1yZG1hIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX1JETUEgfSwKPiAr ICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3AtdWZvZSIsCj4gKyAg ICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9VRk9FIH0sCj4gKyAgICAgICB7IC5jb21w YXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLXdkbWEiLAo+ICsgICAgICAgICAuZGF0YSA9 ICh2b2lkICopTVRLX0RJU1BfV0RNQSB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRp YXRlayxtdDI3MDEtZHBpIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EUEkgfSwK PiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRwaSIsCj4gKyAgICAg ICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRFBJIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0g Im1lZGlhdGVrLG10ODE4My1kcGkiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RQ SSB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3MDEtZHNpIiwKPiAr ICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EU0kgfSwKPiArICAgICAgIHsgLmNvbXBhdGli bGUgPSAibWVkaWF0ZWssbXQ4MTczLWRzaSIsCj4gKyAgICAgICAgIC5kYXRhID0gKHZvaWQgKilN VEtfRFNJIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kc2ki LAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RTSSB9LAo+ICAgICAgICAgeyB9Cj4g IH07Cj4KPiBAQCAtNTQyLDggKzU0Miw4IEBAIHN0YXRpYyBpbnQgbXRrX2RybV9wcm9iZShzdHJ1 Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBl ID09IE1US19ESVNQX09WTCB8fAo+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1U S19ESVNQX09WTF8yTCB8fAo+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1US19E SVNQX1JETUEgfHwKPiAtICAgICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtfRFNJIHx8 Cj4gLSAgICAgICAgICAgICAgICAgICBjb21wX3R5cGUgPT0gTVRLX0RQSSkgewo+ICsgICAgICAg ICAgICAgICAgICAgY29tcF90eXBlID09IE1US19EUEkgfHwKPiArICAgICAgICAgICAgICAgICAg IGNvbXBfdHlwZSA9PSBNVEtfRFNJKSB7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgZGV2X2lu Zm8oZGV2LCAiQWRkaW5nIGNvbXBvbmVudCBtYXRjaCBmb3IgJXBPRlxuIiwKPiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBub2RlKTsKPiAgICAgICAgICAgICAgICAgICAgICAgICBk cm1fb2ZfY29tcG9uZW50X21hdGNoX2FkZChkZXYsICZtYXRjaCwgY29tcGFyZV9vZiwKPiAtLQo+ IDIuMTguMAo+CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmlu ZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9s aW51eC1hcm0ta2VybmVsCg==