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.4 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,URIBL_BLOCKED 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 1AC82C433EF for ; Sun, 5 Sep 2021 04:24:08 +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 C9E2960F4A for ; Sun, 5 Sep 2021 04:24:07 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org C9E2960F4A 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 7DA4789E9E; Sun, 5 Sep 2021 04:24:06 +0000 (UTC) Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8798789E9E for ; Sun, 5 Sep 2021 04:24:05 +0000 (UTC) Received: by mail.kernel.org (Postfix) with ESMTPSA id 1E05460EE3 for ; Sun, 5 Sep 2021 04:24:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1630815845; bh=LkWhB1awpJTHTIbp/bTp5A/3gKUI3ZWkbgxMQEWEn+Q=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=jqQ7CP9elKCQXTej/C6aVs8LzGlBZD/3La5wi/olqehSziizDEu6FEQtS338XIAEq 5zxJrbTxRtxnzESkWa5snv5U1ecIZFjUyCkQnthsRt4JXppcZY3uJOY1Yo3GR/uDA7 m8qqu6t+Y4Zk1eB4IxZgCN2SrPOdDG2c1PfYlIo5eQYK3k6FqGpGT4AzbkNrUw7sQq nODBHBuEhRZ+j4NyTRfQ1ZrwnIeJKEezpAH6/jw0kMaZRyMtqgaD6iyMdaWLB44FHp mGGT8UfJCCm5RN0gpc004daD+fEmX0CA9AUt+DOo5maGf4fw0IhNXNEuPJe1gU5G1a ASFo1pQbnxa9w== Received: by mail-ej1-f44.google.com with SMTP id u14so6335670ejf.13 for ; Sat, 04 Sep 2021 21:24:05 -0700 (PDT) X-Gm-Message-State: AOAM532POziSa5c3JsxhJt33JMIEnT1DGnGeaDDawhyFIzGD0Qfe0UHz SpLZUgseOlgGKuXBEiV1uPYET0d2IJFj5pHT9A== X-Google-Smtp-Source: ABdhPJx0RXOSZysc2Fh4EclQxoZIt/0jr/Jw2ew3ucBC8KeeJ6A36E8r5Wr1ZnNo3cW32Aiv/I1vyhF8j81TZTYmXdM= X-Received: by 2002:a17:906:6b96:: with SMTP id l22mr7280786ejr.430.1630815843638; Sat, 04 Sep 2021 21:24:03 -0700 (PDT) MIME-Version: 1.0 References: <20210825144833.7757-1-jason-jh.lin@mediatek.com> <20210825144833.7757-12-jason-jh.lin@mediatek.com> In-Reply-To: <20210825144833.7757-12-jason-jh.lin@mediatek.com> From: Chun-Kuang Hu Date: Sun, 5 Sep 2021 12:23:52 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v9 11/14] drm/mediatek: adjust to the alphabetic order for mediatek-drm To: "jason-jh.lin" Cc: Rob Herring , Matthias Brugger , Chun-Kuang Hu , Philipp Zabel , Enric Balletbo i Serra , Frank Wunderlich , David Airlie , Daniel Vetter , Fabien Parent , Hsin-Yi Wang , fshao@chromium.org, 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=882= 5=E6=97=A5 =E9=80=B1=E4=B8=89 =E4=B8=8B=E5=8D=8810:48=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 Reviewed-by: Chun-Kuang Hu > > Signed-off-by: jason-jh.lin > --- > rebase on [1] series > [1] drm/mediatek: Separate aal module > - https://patchwork.kernel.org/project/linux-mediatek/list/?series=3D5164= 63 > --- > drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 108 ++++++++++---------- > drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h | 22 ++-- > drivers/gpu/drm/mediatek/mtk_drm_drv.c | 80 +++++++-------- > 3 files changed, 104 insertions(+), 106 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 0b5ca9025b3a..ef0d2066fae1 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c > @@ -20,36 +20,34 @@ > #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_DITHER_EN 0x0000 > #define DITHER_EN BIT(0) > #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 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; > @@ -141,65 +139,65 @@ 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) > +static void mtk_dither_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_dither_set_common(priv->regs, &priv->cmdq_reg, bpc, cfg, > - DISP_DITHERING, cmdq_pkt); > + mtk_ddp_write(cmdq_pkt, h << 16 | w, &priv->cmdq_reg, priv->regs,= DISP_REG_DITHER_SIZE); > + mtk_ddp_write(cmdq_pkt, DITHER_RELAY_MODE, &priv->cmdq_reg, priv-= >regs, > + DISP_REG_DITHER_CFG); > + mtk_dither_set_common(priv->regs, &priv->cmdq_reg, bpc, DISP_REG_= DITHER_CFG, > + DITHER_ENGINE_EN, 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) > +static void mtk_dither_start(struct device *dev) > { > 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); > + writel(DITHER_EN, priv->regs + DISP_REG_DITHER_EN); > } > > -static void mtk_od_start(struct device *dev) > +static void mtk_dither_stop(struct device *dev) > { > struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > > - writel(1, priv->regs + DISP_REG_OD_EN); > + writel_relaxed(0x0, priv->regs + DISP_REG_DITHER_EN); > } > > -static void mtk_ufoe_start(struct device *dev) > +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); > > - writel(UFO_BYPASS, priv->regs + DISP_REG_UFO_START); > + mtk_dither_set_common(priv->regs, &priv->cmdq_reg, bpc, cfg, > + DISP_DITHERING, cmdq_pkt); > } > > -static void mtk_dither_config(struct device *dev, unsigned int w, > - unsigned int h, unsigned int vrefresh, > - unsigned int bpc, struct cmdq_pkt *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, h << 16 | w, &priv->cmdq_reg, priv->regs,= DISP_REG_DITHER_SIZE); > - mtk_ddp_write(cmdq_pkt, DITHER_RELAY_MODE, &priv->cmdq_reg, priv-= >regs, > - DISP_REG_DITHER_CFG); > - mtk_dither_set_common(priv->regs, &priv->cmdq_reg, bpc, DISP_REG_= DITHER_CFG, > - DITHER_ENGINE_EN, cmdq_pkt); > + 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_dither_start(struct device *dev) > +static void mtk_od_start(struct device *dev) > { > struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > > - writel(DITHER_EN, priv->regs + DISP_REG_DITHER_EN); > + writel(1, priv->regs + DISP_REG_OD_EN); > } > > -static void mtk_dither_stop(struct device *dev) > +static void mtk_ufoe_start(struct device *dev) > { > struct mtk_ddp_comp_dev *priv =3D dev_get_drvdata(dev); > > - writel_relaxed(0x0, priv->regs + DISP_REG_DITHER_EN); > + writel(UFO_BYPASS, priv->regs + DISP_REG_UFO_START); > } > > static const struct mtk_ddp_comp_funcs ddp_aal =3D { > @@ -296,22 +294,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 { > @@ -466,12 +464,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 143ba247c627..22d8f13080f2 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > @@ -396,52 +396,22 @@ 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-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-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", > @@ -450,12 +420,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 }, > { } > }; > > @@ -545,8 +545,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.4 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,URIBL_BLOCKED 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 4D32DC433EF for ; Sun, 5 Sep 2021 04:24:34 +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 080FF60F6D for ; Sun, 5 Sep 2021 04:24:34 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 080FF60F6D 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=yxGzVTmwxz+xZU0iaWzNqAwL+1opr6aChiT50Gj7fNs=; b=IG+ZX7LEY2AMGK BUlqN8LXbB0t+a6KuxJ+m3ELVRNxRxyxhWf4m5+obqPUb3moI4PcuzC4A+7UrmQspA8H0Fuz4LxOS jE4Ast0yvQ9YAjicvDszxHjrIas/d8WJOBpryO1DGeQ5z5Iz8KY5CvCWYukoGO9rlKEs+YcGSZA1n M2T9VM6mHl/z/7LKRDfD00e2MI+5sBregx9m3n62jQKbOUAsPNKYNp4b4RANP1GPP3tcPXnRSX5Ru 8K6CgGAi+7HAeTTsrRTUctzOaIoQgA+a/A1TCnYe0/HV2rYSh/1bwY4COOPBqw7jDW6ySs3KKoTxA Z2BnhWen4XOrcPjUBHTQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mMjhc-00FDzJ-T5; Sun, 05 Sep 2021 04:24:20 +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 1mMjhO-00FDxK-T0; Sun, 05 Sep 2021 04:24:09 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id 20A7F60F6D; Sun, 5 Sep 2021 04:24:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1630815845; bh=LkWhB1awpJTHTIbp/bTp5A/3gKUI3ZWkbgxMQEWEn+Q=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=jqQ7CP9elKCQXTej/C6aVs8LzGlBZD/3La5wi/olqehSziizDEu6FEQtS338XIAEq 5zxJrbTxRtxnzESkWa5snv5U1ecIZFjUyCkQnthsRt4JXppcZY3uJOY1Yo3GR/uDA7 m8qqu6t+Y4Zk1eB4IxZgCN2SrPOdDG2c1PfYlIo5eQYK3k6FqGpGT4AzbkNrUw7sQq nODBHBuEhRZ+j4NyTRfQ1ZrwnIeJKEezpAH6/jw0kMaZRyMtqgaD6iyMdaWLB44FHp mGGT8UfJCCm5RN0gpc004daD+fEmX0CA9AUt+DOo5maGf4fw0IhNXNEuPJe1gU5G1a ASFo1pQbnxa9w== Received: by mail-ej1-f42.google.com with SMTP id t19so6361897ejr.8; Sat, 04 Sep 2021 21:24:05 -0700 (PDT) X-Gm-Message-State: AOAM530RPadu4vLyV/m/c33PxlFnsg7sDRyTVA3fqbMhvgHogOIAP/4E QXjKJ8efgHUpoV3ZROwOjaydOqhBq9oCuS/wFg== X-Google-Smtp-Source: ABdhPJx0RXOSZysc2Fh4EclQxoZIt/0jr/Jw2ew3ucBC8KeeJ6A36E8r5Wr1ZnNo3cW32Aiv/I1vyhF8j81TZTYmXdM= X-Received: by 2002:a17:906:6b96:: with SMTP id l22mr7280786ejr.430.1630815843638; Sat, 04 Sep 2021 21:24:03 -0700 (PDT) MIME-Version: 1.0 References: <20210825144833.7757-1-jason-jh.lin@mediatek.com> <20210825144833.7757-12-jason-jh.lin@mediatek.com> In-Reply-To: <20210825144833.7757-12-jason-jh.lin@mediatek.com> From: Chun-Kuang Hu Date: Sun, 5 Sep 2021 12:23:52 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v9 11/14] drm/mediatek: adjust to the alphabetic order for mediatek-drm To: "jason-jh.lin" Cc: Rob Herring , Matthias Brugger , Chun-Kuang Hu , Philipp Zabel , Enric Balletbo i Serra , Frank Wunderlich , David Airlie , Daniel Vetter , Fabien Parent , Hsin-Yi Wang , fshao@chromium.org, 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-20210904_212407_037799_662F7C8E X-CRM114-Status: GOOD ( 18.80 ) 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 MjAyMeW5tDjmnIgyNeaXpSDpgLHkuIkg5LiL5Y2IMTA6NDjlr6vpgZPvvJoKPgo+IEFkanVzdCB0 byB0aGUgYWxwaGFiZXRpYyBvcmRlciBmb3IgdGhlIGRlZmluZSwgZnVuY3Rpb24sIHN0cnVjdAo+ IGFuZCBhcnJheSBpbiBtZWRpYXRlay1kcm0gZHJpdmVyCgpSZXZpZXdlZC1ieTogQ2h1bi1LdWFu ZyBIdSA8Y2h1bmt1YW5nLmh1QGtlcm5lbC5vcmc+Cgo+Cj4gU2lnbmVkLW9mZi1ieTogamFzb24t amgubGluIDxqYXNvbi1qaC5saW5AbWVkaWF0ZWsuY29tPgo+IC0tLQo+IHJlYmFzZSBvbiBbMV0g c2VyaWVzCj4gWzFdIGRybS9tZWRpYXRlazogU2VwYXJhdGUgYWFsIG1vZHVsZQo+IC0gaHR0cHM6 Ly9wYXRjaHdvcmsua2VybmVsLm9yZy9wcm9qZWN0L2xpbnV4LW1lZGlhdGVrL2xpc3QvP3Nlcmll cz01MTY0NjMKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2Nv bXAuYyB8IDEwOCArKysrKysrKysrLS0tLS0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vbWVkaWF0 ZWsvbXRrX2RybV9kZHBfY29tcC5oIHwgIDIyICsrLS0KPiAgZHJpdmVycy9ncHUvZHJtL21lZGlh dGVrL210a19kcm1fZHJ2LmMgICAgICB8ICA4MCArKysrKysrLS0tLS0tLS0KPiAgMyBmaWxlcyBj aGFuZ2VkLCAxMDQgaW5zZXJ0aW9ucygrKSwgMTA2IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmMgYi9kcml2ZXJz L2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29tcC5jCj4gaW5kZXggMGI1Y2E5MDI1YjNh Li5lZjBkMjA2NmZhZTEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210 a19kcm1fZGRwX2NvbXAuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJt X2RkcF9jb21wLmMKPiBAQCAtMjAsMzYgKzIwLDM0IEBACj4gICNpbmNsdWRlICJtdGtfZHJtX2Rk cF9jb21wLmgiCj4gICNpbmNsdWRlICJtdGtfZHJtX2NydGMuaCIKPgo+IC0jZGVmaW5lIERJU1Bf UkVHX09EX0VOICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMAo+IC0jZGVmaW5lIERJU1Bf UkVHX09EX0NGRyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDIwCj4gLSNkZWZp bmUgRElTUF9SRUdfT0RfU0laRSAgICAgICAgICAgICAgICAgICAgICAgMHgwMDMwCj4gLSNkZWZp bmUgRElTUF9SRUdfRElUSEVSXzUgICAgICAgICAgICAgICAgICAgICAgMHgwMTE0Cj4gLSNkZWZp bmUgRElTUF9SRUdfRElUSEVSXzcgICAgICAgICAgICAgICAgICAgICAgMHgwMTFjCj4gLSNkZWZp bmUgRElTUF9SRUdfRElUSEVSXzE1ICAgICAgICAgICAgICAgICAgICAgMHgwMTNjCj4gLSNkZWZp bmUgRElTUF9SRUdfRElUSEVSXzE2ICAgICAgICAgICAgICAgICAgICAgMHgwMTQwCj4gLQo+IC0j ZGVmaW5lIERJU1BfUkVHX1VGT19TVEFSVCAgICAgICAgICAgICAgICAgICAgIDB4MDAwMAo+Cj4g ICNkZWZpbmUgRElTUF9SRUdfRElUSEVSX0VOICAgICAgICAgICAgICAgICAgICAgMHgwMDAwCj4g ICNkZWZpbmUgRElUSEVSX0VOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQklUKDApCj4g ICNkZWZpbmUgRElTUF9SRUdfRElUSEVSX0NGRyAgICAgICAgICAgICAgICAgICAgMHgwMDIwCj4g ICNkZWZpbmUgRElUSEVSX1JFTEFZX01PREUgICAgICAgICAgICAgICAgICAgICAgQklUKDApCj4g ICNkZWZpbmUgRElUSEVSX0VOR0lORV9FTiAgICAgICAgICAgICAgICAgICAgICAgQklUKDEpCj4g LSNkZWZpbmUgRElTUF9SRUdfRElUSEVSX1NJWkUgICAgICAgICAgICAgICAgICAgMHgwMDMwCj4g LQo+IC0jZGVmaW5lIE9EX1JFTEFZTU9ERSAgICAgICAgICAgICAgICAgICAgICAgICAgIEJJVCgw KQo+IC0KPiAtI2RlZmluZSBVRk9fQllQQVNTICAgICAgICAgICAgICAgICAgICAgICAgICAgICBC SVQoMikKPiAtCj4gICNkZWZpbmUgRElTUF9ESVRIRVJJTkcgICAgICAgICAgICAgICAgICAgICAg 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+IEBAIC0xNDEsNjUgKzEzOSw2NSBAQCB2b2lkIG10a19kaXRo ZXJfc2V0X2NvbW1vbih2b2lkIF9faW9tZW0gKnJlZ3MsIHN0cnVjdCBjbWRxX2NsaWVudF9yZWcg KmNtZHFfcmVnLAo+ICAgICAgICAgfQo+ICB9Cj4KPiAtc3RhdGljIHZvaWQgbXRrX2RpdGhlcl9z ZXQoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25lZCBpbnQgYnBjLAo+IC0gICAgICAgICAgICAg ICAgICAgdW5zaWduZWQgaW50IGNmZywgc3RydWN0IGNtZHFfcGt0ICpjbWRxX3BrdCkKPiArc3Rh dGljIHZvaWQgbXRrX2RpdGhlcl9jb25maWcoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25lZCBp bnQgdywKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgaCwgdW5z aWduZWQgaW50IHZyZWZyZXNoLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln bmVkIGludCBicGMsIHN0cnVjdCBjbWRxX3BrdCAqY21kcV9wa3QpCj4gIHsKPiAgICAgICAgIHN0 cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4KPiAt ICAgICAgIG10a19kaXRoZXJfc2V0X2NvbW1vbihwcml2LT5yZWdzLCAmcHJpdi0+Y21kcV9yZWcs IGJwYywgY2ZnLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIERJU1BfRElUSEVSSU5H LCBjbWRxX3BrdCk7Cj4gKyAgICAgICBtdGtfZGRwX3dyaXRlKGNtZHFfcGt0LCBoIDw8IDE2IHwg dywgJnByaXYtPmNtZHFfcmVnLCBwcml2LT5yZWdzLCBESVNQX1JFR19ESVRIRVJfU0laRSk7Cj4g KyAgICAgICBtdGtfZGRwX3dyaXRlKGNtZHFfcGt0LCBESVRIRVJfUkVMQVlfTU9ERSwgJnByaXYt PmNtZHFfcmVnLCBwcml2LT5yZWdzLAo+ICsgICAgICAgICAgICAgICAgICAgICBESVNQX1JFR19E SVRIRVJfQ0ZHKTsKPiArICAgICAgIG10a19kaXRoZXJfc2V0X2NvbW1vbihwcml2LT5yZWdzLCAm cHJpdi0+Y21kcV9yZWcsIGJwYywgRElTUF9SRUdfRElUSEVSX0NGRywKPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBESVRIRVJfRU5HSU5FX0VOLCBjbWRxX3BrdCk7Cj4gIH0KPgo+IC1z dGF0aWMgdm9pZCBtdGtfb2RfY29uZmlnKHN0cnVjdCBkZXZpY2UgKmRldiwgdW5zaWduZWQgaW50 IHcsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgaCwgdW5zaWduZWQg aW50IHZyZWZyZXNoLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJw Yywgc3RydWN0IGNtZHFfcGt0ICpjbWRxX3BrdCkKPiArc3RhdGljIHZvaWQgbXRrX2RpdGhlcl9z dGFydChzdHJ1Y3QgZGV2aWNlICpkZXYpCj4gIHsKPiAgICAgICAgIHN0cnVjdCBtdGtfZGRwX2Nv bXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4KPiAtICAgICAgIG10a19kZHBf d3JpdGUoY21kcV9wa3QsIHcgPDwgMTYgfCBoLCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3Ms IERJU1BfUkVHX09EX1NJWkUpOwo+IC0gICAgICAgbXRrX2RkcF93cml0ZShjbWRxX3BrdCwgT0Rf UkVMQVlNT0RFLCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3MsIERJU1BfUkVHX09EX0NGRyk7 Cj4gLSAgICAgICBtdGtfZGl0aGVyX3NldChkZXYsIGJwYywgRElTUF9SRUdfT0RfQ0ZHLCBjbWRx X3BrdCk7Cj4gKyAgICAgICB3cml0ZWwoRElUSEVSX0VOLCBwcml2LT5yZWdzICsgRElTUF9SRUdf RElUSEVSX0VOKTsKPiAgfQo+Cj4gLXN0YXRpYyB2b2lkIG10a19vZF9zdGFydChzdHJ1Y3QgZGV2 aWNlICpkZXYpCj4gK3N0YXRpYyB2b2lkIG10a19kaXRoZXJfc3RvcChzdHJ1Y3QgZGV2aWNlICpk ZXYpCj4gIHsKPiAgICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0gZGV2X2dl dF9kcnZkYXRhKGRldik7Cj4KPiAtICAgICAgIHdyaXRlbCgxLCBwcml2LT5yZWdzICsgRElTUF9S RUdfT0RfRU4pOwo+ICsgICAgICAgd3JpdGVsX3JlbGF4ZWQoMHgwLCBwcml2LT5yZWdzICsgRElT UF9SRUdfRElUSEVSX0VOKTsKPiAgfQo+Cj4gLXN0YXRpYyB2b2lkIG10a191Zm9lX3N0YXJ0KHN0 cnVjdCBkZXZpY2UgKmRldikKPiArc3RhdGljIHZvaWQgbXRrX2RpdGhlcl9zZXQoc3RydWN0IGRl dmljZSAqZGV2LCB1bnNpZ25lZCBpbnQgYnBjLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg IHVuc2lnbmVkIGludCBjZmcsIHN0cnVjdCBjbWRxX3BrdCAqY21kcV9wa3QpCj4gIHsKPiAgICAg ICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRldik7 Cj4KPiAtICAgICAgIHdyaXRlbChVRk9fQllQQVNTLCBwcml2LT5yZWdzICsgRElTUF9SRUdfVUZP X1NUQVJUKTsKPiArICAgICAgIG10a19kaXRoZXJfc2V0X2NvbW1vbihwcml2LT5yZWdzLCAmcHJp di0+Y21kcV9yZWcsIGJwYywgY2ZnLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERJ U1BfRElUSEVSSU5HLCBjbWRxX3BrdCk7Cj4gIH0KPgo+IC1zdGF0aWMgdm9pZCBtdGtfZGl0aGVy X2NvbmZpZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHVuc2lnbmVkIGludCB3LAo+IC0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBoLCB1bnNpZ25lZCBpbnQgdnJlZnJlc2gs Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJwYywgc3RydWN0 IGNtZHFfcGt0ICpjbWRxX3BrdCkKPiArc3RhdGljIHZvaWQgbXRrX29kX2NvbmZpZyhzdHJ1Y3Qg ZGV2aWNlICpkZXYsIHVuc2lnbmVkIGludCB3LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg dW5zaWduZWQgaW50IGgsIHVuc2lnbmVkIGludCB2cmVmcmVzaCwKPiArICAgICAgICAgICAgICAg ICAgICAgICAgIHVuc2lnbmVkIGludCBicGMsIHN0cnVjdCBjbWRxX3BrdCAqY21kcV9wa3QpCj4g IHsKPiAgICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZk YXRhKGRldik7Cj4KPiAtICAgICAgIG10a19kZHBfd3JpdGUoY21kcV9wa3QsIGggPDwgMTYgfCB3 LCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3MsIERJU1BfUkVHX0RJVEhFUl9TSVpFKTsKPiAt ICAgICAgIG10a19kZHBfd3JpdGUoY21kcV9wa3QsIERJVEhFUl9SRUxBWV9NT0RFLCAmcHJpdi0+ Y21kcV9yZWcsIHByaXYtPnJlZ3MsCj4gLSAgICAgICAgICAgICAgICAgICAgIERJU1BfUkVHX0RJ VEhFUl9DRkcpOwo+IC0gICAgICAgbXRrX2RpdGhlcl9zZXRfY29tbW9uKHByaXYtPnJlZ3MsICZw cml2LT5jbWRxX3JlZywgYnBjLCBESVNQX1JFR19ESVRIRVJfQ0ZHLAo+IC0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgIERJVEhFUl9FTkdJTkVfRU4sIGNtZHFfcGt0KTsKPiArICAgICAgIG10 a19kZHBfd3JpdGUoY21kcV9wa3QsIHcgPDwgMTYgfCBoLCAmcHJpdi0+Y21kcV9yZWcsIHByaXYt PnJlZ3MsIERJU1BfUkVHX09EX1NJWkUpOwo+ICsgICAgICAgbXRrX2RkcF93cml0ZShjbWRxX3Br dCwgT0RfUkVMQVlNT0RFLCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3MsIERJU1BfUkVHX09E X0NGRyk7Cj4gKyAgICAgICBtdGtfZGl0aGVyX3NldChkZXYsIGJwYywgRElTUF9SRUdfT0RfQ0ZH LCBjbWRxX3BrdCk7Cj4gIH0KPgo+IC1zdGF0aWMgdm9pZCBtdGtfZGl0aGVyX3N0YXJ0KHN0cnVj dCBkZXZpY2UgKmRldikKPiArc3RhdGljIHZvaWQgbXRrX29kX3N0YXJ0KHN0cnVjdCBkZXZpY2Ug KmRldikKPiAgewo+ICAgICAgICAgc3RydWN0IG10a19kZHBfY29tcF9kZXYgKnByaXYgPSBkZXZf Z2V0X2RydmRhdGEoZGV2KTsKPgo+IC0gICAgICAgd3JpdGVsKERJVEhFUl9FTiwgcHJpdi0+cmVn cyArIERJU1BfUkVHX0RJVEhFUl9FTik7Cj4gKyAgICAgICB3cml0ZWwoMSwgcHJpdi0+cmVncyAr IERJU1BfUkVHX09EX0VOKTsKPiAgfQo+Cj4gLXN0YXRpYyB2b2lkIG10a19kaXRoZXJfc3RvcChz dHJ1Y3QgZGV2aWNlICpkZXYpCj4gK3N0YXRpYyB2b2lkIG10a191Zm9lX3N0YXJ0KHN0cnVjdCBk ZXZpY2UgKmRldikKPiAgewo+ICAgICAgICAgc3RydWN0IG10a19kZHBfY29tcF9kZXYgKnByaXYg PSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPgo+IC0gICAgICAgd3JpdGVsX3JlbGF4ZWQoMHgwLCBw cml2LT5yZWdzICsgRElTUF9SRUdfRElUSEVSX0VOKTsKPiArICAgICAgIHdyaXRlbChVRk9fQllQ QVNTLCBwcml2LT5yZWdzICsgRElTUF9SRUdfVUZPX1NUQVJUKTsKPiAgfQo+Cj4gIHN0YXRpYyBj b25zdCBzdHJ1Y3QgbXRrX2RkcF9jb21wX2Z1bmNzIGRkcF9hYWwgPSB7Cj4gQEAgLTI5NiwyMiAr Mjk0LDIyIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXRrX2RkcF9jb21wX2Z1bmNzIGRkcF91Zm9l ID0gewo+ICB9Owo+Cj4gIHN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgbXRrX2RkcF9jb21wX3N0 ZW1bTVRLX0REUF9DT01QX1RZUEVfTUFYXSA9IHsKPiArICAgICAgIFtNVEtfRElTUF9BQUxdID0g ImFhbCIsCj4gKyAgICAgICBbTVRLX0RJU1BfQkxTXSA9ICJibHMiLAo+ICsgICAgICAgW01US19E SVNQX0NDT1JSXSA9ICJjY29yciIsCj4gKyAgICAgICBbTVRLX0RJU1BfQ09MT1JdID0gImNvbG9y IiwKPiArICAgICAgIFtNVEtfRElTUF9ESVRIRVJdID0gImRpdGhlciIsCj4gKyAgICAgICBbTVRL X0RJU1BfR0FNTUFdID0gImdhbW1hIiwKPiArICAgICAgIFtNVEtfRElTUF9NVVRFWF0gPSAibXV0 ZXgiLAo+ICsgICAgICAgW01US19ESVNQX09EXSA9ICJvZCIsCj4gICAgICAgICBbTVRLX0RJU1Bf T1ZMXSA9ICJvdmwiLAo+ICAgICAgICAgW01US19ESVNQX09WTF8yTF0gPSAib3ZsLTJsIiwKPiAr ICAgICAgIFtNVEtfRElTUF9QV01dID0gInB3bSIsCj4gICAgICAgICBbTVRLX0RJU1BfUkRNQV0g PSAicmRtYSIsCj4gLSAgICAgICBbTVRLX0RJU1BfV0RNQV0gPSAid2RtYSIsCj4gLSAgICAgICBb TVRLX0RJU1BfQ09MT1JdID0gImNvbG9yIiwKPiAtICAgICAgIFtNVEtfRElTUF9DQ09SUl0gPSAi Y2NvcnIiLAo+IC0gICAgICAgW01US19ESVNQX0FBTF0gPSAiYWFsIiwKPiAtICAgICAgIFtNVEtf RElTUF9HQU1NQV0gPSAiZ2FtbWEiLAo+IC0gICAgICAgW01US19ESVNQX0RJVEhFUl0gPSAiZGl0 aGVyIiwKPiAgICAgICAgIFtNVEtfRElTUF9VRk9FXSA9ICJ1Zm9lIiwKPiAtICAgICAgIFtNVEtf RFNJXSA9ICJkc2kiLAo+ICsgICAgICAgW01US19ESVNQX1dETUFdID0gIndkbWEiLAo+ICAgICAg ICAgW01US19EUEldID0gImRwaSIsCj4gLSAgICAgICBbTVRLX0RJU1BfUFdNXSA9ICJwd20iLAo+ IC0gICAgICAgW01US19ESVNQX01VVEVYXSA9ICJtdXRleCIsCj4gLSAgICAgICBbTVRLX0RJU1Bf T0RdID0gIm9kIiwKPiAtICAgICAgIFtNVEtfRElTUF9CTFNdID0gImJscyIsCj4gKyAgICAgICBb TVRLX0RTSV0gPSAiZHNpIiwKPiAgfTsKPgo+ICBzdHJ1Y3QgbXRrX2RkcF9jb21wX21hdGNoIHsK PiBAQCAtNDY2LDEyICs0NjQsMTIgQEAgaW50IG10a19kZHBfY29tcF9pbml0KHN0cnVjdCBkZXZp Y2Vfbm9kZSAqbm9kZSwgc3RydWN0IG10a19kZHBfY29tcCAqY29tcCwKPiAgICAgICAgICAgICB0 eXBlID09IE1US19ESVNQX0NDT1JSIHx8Cj4gICAgICAgICAgICAgdHlwZSA9PSBNVEtfRElTUF9D T0xPUiB8fAo+ICAgICAgICAgICAgIHR5cGUgPT0gTVRLX0RJU1BfR0FNTUEgfHwKPiAtICAgICAg ICAgICB0eXBlID09IE1US19EUEkgfHwKPiAtICAgICAgICAgICB0eXBlID09IE1US19EU0kgfHwK PiAgICAgICAgICAgICB0eXBlID09IE1US19ESVNQX09WTCB8fAo+ICAgICAgICAgICAgIHR5cGUg PT0gTVRLX0RJU1BfT1ZMXzJMIHx8Cj4gICAgICAgICAgICAgdHlwZSA9PSBNVEtfRElTUF9QV00g fHwKPiAtICAgICAgICAgICB0eXBlID09IE1US19ESVNQX1JETUEpCj4gKyAgICAgICAgICAgdHlw ZSA9PSBNVEtfRElTUF9SRE1BIHx8Cj4gKyAgICAgICAgICAgdHlwZSA9PSBNVEtfRFBJIHx8Cj4g KyAgICAgICAgICAgdHlwZSA9PSBNVEtfRFNJKQo+ICAgICAgICAgICAgICAgICByZXR1cm4gMDsK Pgo+ICAgICAgICAgcHJpdiA9IGRldm1fa3phbGxvYyhjb21wLT5kZXYsIHNpemVvZigqcHJpdiks IEdGUF9LRVJORUwpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRr X2RybV9kZHBfY29tcC5oIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2Nv bXAuaAo+IGluZGV4IGJiOTE0ZDk3NmNmNS4uZDMxN2I5NDRkZjY2IDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmgKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29tcC5oCj4gQEAgLTE4LDIyICsxOCwyMiBA QCBzdHJ1Y3QgbXRrX3BsYW5lX3N0YXRlOwo+ICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGU7Cj4KPiAg ZW51bSBtdGtfZGRwX2NvbXBfdHlwZSB7Cj4gLSAgICAgICBNVEtfRElTUF9PVkwsCj4gLSAgICAg ICBNVEtfRElTUF9PVkxfMkwsCj4gLSAgICAgICBNVEtfRElTUF9SRE1BLAo+IC0gICAgICAgTVRL X0RJU1BfV0RNQSwKPiAtICAgICAgIE1US19ESVNQX0NPTE9SLAo+ICsgICAgICAgTVRLX0RJU1Bf QUFMLAo+ICsgICAgICAgTVRLX0RJU1BfQkxTLAo+ICAgICAgICAgTVRLX0RJU1BfQ0NPUlIsCj4g KyAgICAgICBNVEtfRElTUF9DT0xPUiwKPiAgICAgICAgIE1US19ESVNQX0RJVEhFUiwKPiAtICAg ICAgIE1US19ESVNQX0FBTCwKPiAgICAgICAgIE1US19ESVNQX0dBTU1BLAo+IC0gICAgICAgTVRL X0RJU1BfVUZPRSwKPiAtICAgICAgIE1US19EU0ksCj4gLSAgICAgICBNVEtfRFBJLAo+IC0gICAg ICAgTVRLX0RJU1BfUFdNLAo+ICAgICAgICAgTVRLX0RJU1BfTVVURVgsCj4gICAgICAgICBNVEtf RElTUF9PRCwKPiAtICAgICAgIE1US19ESVNQX0JMUywKPiArICAgICAgIE1US19ESVNQX09WTCwK PiArICAgICAgIE1US19ESVNQX09WTF8yTCwKPiArICAgICAgIE1US19ESVNQX1BXTSwKPiArICAg ICAgIE1US19ESVNQX1JETUEsCj4gKyAgICAgICBNVEtfRElTUF9VRk9FLAo+ICsgICAgICAgTVRL X0RJU1BfV0RNQSwKPiArICAgICAgIE1US19EUEksCj4gKyAgICAgICBNVEtfRFNJLAo+ICAgICAg ICAgTVRLX0REUF9DT01QX1RZUEVfTUFYLAo+ICB9Owo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVr L210a19kcm1fZHJ2LmMKPiBpbmRleCAxNDNiYTI0N2M2MjcuLjIyZDhmMTMwODBmMiAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jCj4gQEAgLTM5Niw1MiArMzk2LDIy IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgY29tcG9uZW50X21hc3Rlcl9vcHMgbXRrX2RybV9vcHMg PSB7Cj4gIH07Cj4KPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXRrX2RkcF9j b21wX2R0X2lkc1tdID0gewo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3 MDEtZGlzcC1vdmwiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfT1ZMIH0s Cj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLW92bCIsCj4g LSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9PVkwgfSwKPiAtICAgICAgIHsgLmNv bXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3Atb3ZsIiwKPiAtICAgICAgICAgLmRhdGEg PSAodm9pZCAqKU1US19ESVNQX09WTCB9LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRp YXRlayxtdDgxODMtZGlzcC1vdmwtMmwiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRL X0RJU1BfT1ZMXzJMIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10Mjcw MS1kaXNwLXJkbWEiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfUkRNQSB9 LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZGlzcC1yZG1hIiwK PiAtICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX1JETUEgfSwKPiAtICAgICAgIHsg LmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtcmRtYSIsCj4gLSAgICAgICAgIC5k YXRhID0gKHZvaWQgKilNVEtfRElTUF9SRE1BIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0g Im1lZGlhdGVrLG10ODE3My1kaXNwLXdkbWEiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICop TVRLX0RJU1BfV0RNQSB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgx NzMtZGlzcC1hYWwiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfQUFMfSwK PiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtYWFsIiwKPiAr ICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX0FBTH0sCj4gICAgICAgICB7IC5jb21w YXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kaXNwLWNjb3JyIiwKPiAgICAgICAgICAgLmRhdGEg PSAodm9pZCAqKU1US19ESVNQX0NDT1JSIH0sCj4gICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1l ZGlhdGVrLG10MjcwMS1kaXNwLWNvbG9yIiwKPiAgICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1U S19ESVNQX0NPTE9SIH0sCj4gICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3 My1kaXNwLWNvbG9yIiwKPiAgICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX0NPTE9S IH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLWFhbCIs Cj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9BQUx9LAo+IC0gICAgICAgeyAu Y29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxODMtZGlzcC1hYWwiLAo+IC0gICAgICAgICAuZGF0 YSA9ICh2b2lkICopTVRLX0RJU1BfQUFMfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVk aWF0ZWssbXQ4MTgzLWRpc3AtZGl0aGVyIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1U S19ESVNQX0RJVEhFUiB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgx NzMtZGlzcC1nYW1tYSIsCj4gICAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9HQU1N QSwgfSwKPiAgICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtZ2Ft bWEiLAo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfR0FNTUEsIH0sCj4gLSAg ICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kaXNwLWRpdGhlciIsCj4gLSAg ICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9ESVRIRVIgfSwKPiAtICAgICAgIHsgLmNv bXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3AtdWZvZSIsCj4gLSAgICAgICAgIC5kYXRh ID0gKHZvaWQgKilNVEtfRElTUF9VRk9FIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1l ZGlhdGVrLG10MjcwMS1kc2kiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RTSSB9 LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZHNpIiwKPiAtICAg ICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EU0kgfSwKPiAtICAgICAgIHsgLmNvbXBhdGlibGUg PSAibWVkaWF0ZWssbXQ4MTgzLWRzaSIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtf RFNJIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcwMS1kcGkiLAo+ IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RQSSB9LAo+IC0gICAgICAgeyAuY29tcGF0 aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZHBpIiwKPiAtICAgICAgICAgLmRhdGEgPSAodm9pZCAq KU1US19EUEkgfSwKPiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRw aSIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRFBJIH0sCj4gICAgICAgICB7IC5j b21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcwMS1kaXNwLW11dGV4IiwKPiAgICAgICAgICAgLmRh dGEgPSAodm9pZCAqKU1US19ESVNQX01VVEVYIH0sCj4gICAgICAgICB7IC5jb21wYXRpYmxlID0g Im1lZGlhdGVrLG10MjcxMi1kaXNwLW11dGV4IiwKPiBAQCAtNDUwLDEyICs0MjAsNDIgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXRrX2RkcF9jb21wX2R0X2lkc1tdID0gewo+ ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfTVVURVggfSwKPiAgICAgICAgIHsg LmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtbXV0ZXgiLAo+ICAgICAgICAgICAu ZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfTVVURVggfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUg PSAibWVkaWF0ZWssbXQ4MTczLWRpc3Atb2QiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICop TVRLX0RJU1BfT0QgfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQyNzAx LWRpc3Atb3ZsIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX09WTCB9LAo+ ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZGlzcC1vdmwiLAo+ICsg ICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfT1ZMIH0sCj4gKyAgICAgICB7IC5jb21w YXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kaXNwLW92bCIsCj4gKyAgICAgICAgIC5kYXRhID0g KHZvaWQgKilNVEtfRElTUF9PVkwgfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0 ZWssbXQ4MTgzLWRpc3Atb3ZsLTJsIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19E SVNQX09WTF8yTCB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3MDEt ZGlzcC1wd20iLAo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfQkxTIH0sCj4g ICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLXB3bSIsCj4gICAg ICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9QV00gfSwKPiAtICAgICAgIHsgLmNvbXBh dGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3Atb2QiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2 b2lkICopTVRLX0RJU1BfT0QgfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWss bXQyNzAxLWRpc3AtcmRtYSIsCj4gKyAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9S RE1BIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLXJk bWEiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfUkRNQSB9LAo+ICsgICAg ICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxODMtZGlzcC1yZG1hIiwKPiArICAgICAg ICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX1JETUEgfSwKPiArICAgICAgIHsgLmNvbXBhdGli bGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3AtdWZvZSIsCj4gKyAgICAgICAgIC5kYXRhID0gKHZv aWQgKilNVEtfRElTUF9VRk9FIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVr LG10ODE3My1kaXNwLXdkbWEiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1Bf V0RNQSB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3MDEtZHBpIiwK PiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EUEkgfSwKPiArICAgICAgIHsgLmNvbXBh dGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRwaSIsCj4gKyAgICAgICAgIC5kYXRhID0gKHZvaWQg KilNVEtfRFBJIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1k cGkiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RQSSB9LAo+ICsgICAgICAgeyAu Y29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3MDEtZHNpIiwKPiArICAgICAgICAgLmRhdGEgPSAo dm9pZCAqKU1US19EU0kgfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4 MTczLWRzaSIsCj4gKyAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRFNJIH0sCj4gKyAgICAg ICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kc2kiLAo+ICsgICAgICAgICAuZGF0 YSA9ICh2b2lkICopTVRLX0RTSSB9LAo+ICAgICAgICAgeyB9Cj4gIH07Cj4KPiBAQCAtNTQ1LDgg KzU0NSw4IEBAIHN0YXRpYyBpbnQgbXRrX2RybV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNl ICpwZGV2KQo+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1US19ESVNQX09WTCB8 fAo+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1US19ESVNQX09WTF8yTCB8fAo+ ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1US19ESVNQX1JETUEgfHwKPiAtICAg ICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtfRFNJIHx8Cj4gLSAgICAgICAgICAgICAg ICAgICBjb21wX3R5cGUgPT0gTVRLX0RQSSkgewo+ICsgICAgICAgICAgICAgICAgICAgY29tcF90 eXBlID09IE1US19EUEkgfHwKPiArICAgICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtf RFNJKSB7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgZGV2X2luZm8oZGV2LCAiQWRkaW5nIGNv bXBvbmVudCBtYXRjaCBmb3IgJXBPRlxuIiwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBub2RlKTsKPiAgICAgICAgICAgICAgICAgICAgICAgICBkcm1fb2ZfY29tcG9uZW50X21h dGNoX2FkZChkZXYsICZtYXRjaCwgY29tcGFyZV9vZiwKPiAtLQo+IDIuMTguMAo+CgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpMaW51eC1tZWRpYXRlayBt YWlsaW5nIGxpc3QKTGludXgtbWVkaWF0ZWtAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlz dHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LW1lZGlhdGVrCg== 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.4 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,URIBL_BLOCKED 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 525ACC433EF for ; Sun, 5 Sep 2021 04:26:16 +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 1538F60EBA for ; Sun, 5 Sep 2021 04:26:16 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 1538F60EBA 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=uNaUIRVRIbPCuu2LHSJgDMQ/zMfXHyiVkwxCwZQFXJU=; b=j0BpyB2PmYK7fQ mjsK5R6tBqG3RYtfXw4EiC+lSwKNCQbZO8ucNa4dNm4zuGuGmeUxCvI5SGNl/LKBUPih0sx6Btppd PrcfUzv/ql6R4pPvIfUXet96TdJBagrrK79y5pWB00ak6NwuInFX5Z5UGXLmL90l6KhLrQEkdXI/w 5NowN8u+RPA/RemR9tSD656H2kygdaNUDqgDbGh07xqiAsehi47UwkXTfrmt/p/YjRBBj5Hoo23Fh 6NqD8YBZC5HD50zyW1WEIN0QGYLkGdOsHc2WdKJTWhwBQ6QM1Khbo5ytAAOz5rUGlc/xZQLJLn2a9 yPYxgXAAklaYR5nu8hXw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mMjhT-00FDy2-Ka; Sun, 05 Sep 2021 04:24:11 +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 1mMjhO-00FDxK-T0; Sun, 05 Sep 2021 04:24:09 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id 20A7F60F6D; Sun, 5 Sep 2021 04:24:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1630815845; bh=LkWhB1awpJTHTIbp/bTp5A/3gKUI3ZWkbgxMQEWEn+Q=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=jqQ7CP9elKCQXTej/C6aVs8LzGlBZD/3La5wi/olqehSziizDEu6FEQtS338XIAEq 5zxJrbTxRtxnzESkWa5snv5U1ecIZFjUyCkQnthsRt4JXppcZY3uJOY1Yo3GR/uDA7 m8qqu6t+Y4Zk1eB4IxZgCN2SrPOdDG2c1PfYlIo5eQYK3k6FqGpGT4AzbkNrUw7sQq nODBHBuEhRZ+j4NyTRfQ1ZrwnIeJKEezpAH6/jw0kMaZRyMtqgaD6iyMdaWLB44FHp mGGT8UfJCCm5RN0gpc004daD+fEmX0CA9AUt+DOo5maGf4fw0IhNXNEuPJe1gU5G1a ASFo1pQbnxa9w== Received: by mail-ej1-f42.google.com with SMTP id t19so6361897ejr.8; Sat, 04 Sep 2021 21:24:05 -0700 (PDT) X-Gm-Message-State: AOAM530RPadu4vLyV/m/c33PxlFnsg7sDRyTVA3fqbMhvgHogOIAP/4E QXjKJ8efgHUpoV3ZROwOjaydOqhBq9oCuS/wFg== X-Google-Smtp-Source: ABdhPJx0RXOSZysc2Fh4EclQxoZIt/0jr/Jw2ew3ucBC8KeeJ6A36E8r5Wr1ZnNo3cW32Aiv/I1vyhF8j81TZTYmXdM= X-Received: by 2002:a17:906:6b96:: with SMTP id l22mr7280786ejr.430.1630815843638; Sat, 04 Sep 2021 21:24:03 -0700 (PDT) MIME-Version: 1.0 References: <20210825144833.7757-1-jason-jh.lin@mediatek.com> <20210825144833.7757-12-jason-jh.lin@mediatek.com> In-Reply-To: <20210825144833.7757-12-jason-jh.lin@mediatek.com> From: Chun-Kuang Hu Date: Sun, 5 Sep 2021 12:23:52 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v9 11/14] drm/mediatek: adjust to the alphabetic order for mediatek-drm To: "jason-jh.lin" Cc: Rob Herring , Matthias Brugger , Chun-Kuang Hu , Philipp Zabel , Enric Balletbo i Serra , Frank Wunderlich , David Airlie , Daniel Vetter , Fabien Parent , Hsin-Yi Wang , fshao@chromium.org, 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-20210904_212407_037799_662F7C8E X-CRM114-Status: GOOD ( 18.80 ) 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 MjAyMeW5tDjmnIgyNeaXpSDpgLHkuIkg5LiL5Y2IMTA6NDjlr6vpgZPvvJoKPgo+IEFkanVzdCB0 byB0aGUgYWxwaGFiZXRpYyBvcmRlciBmb3IgdGhlIGRlZmluZSwgZnVuY3Rpb24sIHN0cnVjdAo+ IGFuZCBhcnJheSBpbiBtZWRpYXRlay1kcm0gZHJpdmVyCgpSZXZpZXdlZC1ieTogQ2h1bi1LdWFu ZyBIdSA8Y2h1bmt1YW5nLmh1QGtlcm5lbC5vcmc+Cgo+Cj4gU2lnbmVkLW9mZi1ieTogamFzb24t amgubGluIDxqYXNvbi1qaC5saW5AbWVkaWF0ZWsuY29tPgo+IC0tLQo+IHJlYmFzZSBvbiBbMV0g c2VyaWVzCj4gWzFdIGRybS9tZWRpYXRlazogU2VwYXJhdGUgYWFsIG1vZHVsZQo+IC0gaHR0cHM6 Ly9wYXRjaHdvcmsua2VybmVsLm9yZy9wcm9qZWN0L2xpbnV4LW1lZGlhdGVrL2xpc3QvP3Nlcmll cz01MTY0NjMKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2Nv bXAuYyB8IDEwOCArKysrKysrKysrLS0tLS0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vbWVkaWF0 ZWsvbXRrX2RybV9kZHBfY29tcC5oIHwgIDIyICsrLS0KPiAgZHJpdmVycy9ncHUvZHJtL21lZGlh dGVrL210a19kcm1fZHJ2LmMgICAgICB8ICA4MCArKysrKysrLS0tLS0tLS0KPiAgMyBmaWxlcyBj aGFuZ2VkLCAxMDQgaW5zZXJ0aW9ucygrKSwgMTA2IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmMgYi9kcml2ZXJz L2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29tcC5jCj4gaW5kZXggMGI1Y2E5MDI1YjNh Li5lZjBkMjA2NmZhZTEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210 a19kcm1fZGRwX2NvbXAuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJt X2RkcF9jb21wLmMKPiBAQCAtMjAsMzYgKzIwLDM0IEBACj4gICNpbmNsdWRlICJtdGtfZHJtX2Rk cF9jb21wLmgiCj4gICNpbmNsdWRlICJtdGtfZHJtX2NydGMuaCIKPgo+IC0jZGVmaW5lIERJU1Bf UkVHX09EX0VOICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMAo+IC0jZGVmaW5lIERJU1Bf UkVHX09EX0NGRyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDIwCj4gLSNkZWZp bmUgRElTUF9SRUdfT0RfU0laRSAgICAgICAgICAgICAgICAgICAgICAgMHgwMDMwCj4gLSNkZWZp bmUgRElTUF9SRUdfRElUSEVSXzUgICAgICAgICAgICAgICAgICAgICAgMHgwMTE0Cj4gLSNkZWZp bmUgRElTUF9SRUdfRElUSEVSXzcgICAgICAgICAgICAgICAgICAgICAgMHgwMTFjCj4gLSNkZWZp bmUgRElTUF9SRUdfRElUSEVSXzE1ICAgICAgICAgICAgICAgICAgICAgMHgwMTNjCj4gLSNkZWZp bmUgRElTUF9SRUdfRElUSEVSXzE2ICAgICAgICAgICAgICAgICAgICAgMHgwMTQwCj4gLQo+IC0j ZGVmaW5lIERJU1BfUkVHX1VGT19TVEFSVCAgICAgICAgICAgICAgICAgICAgIDB4MDAwMAo+Cj4g ICNkZWZpbmUgRElTUF9SRUdfRElUSEVSX0VOICAgICAgICAgICAgICAgICAgICAgMHgwMDAwCj4g ICNkZWZpbmUgRElUSEVSX0VOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQklUKDApCj4g ICNkZWZpbmUgRElTUF9SRUdfRElUSEVSX0NGRyAgICAgICAgICAgICAgICAgICAgMHgwMDIwCj4g ICNkZWZpbmUgRElUSEVSX1JFTEFZX01PREUgICAgICAgICAgICAgICAgICAgICAgQklUKDApCj4g ICNkZWZpbmUgRElUSEVSX0VOR0lORV9FTiAgICAgICAgICAgICAgICAgICAgICAgQklUKDEpCj4g LSNkZWZpbmUgRElTUF9SRUdfRElUSEVSX1NJWkUgICAgICAgICAgICAgICAgICAgMHgwMDMwCj4g LQo+IC0jZGVmaW5lIE9EX1JFTEFZTU9ERSAgICAgICAgICAgICAgICAgICAgICAgICAgIEJJVCgw KQo+IC0KPiAtI2RlZmluZSBVRk9fQllQQVNTICAgICAgICAgICAgICAgICAgICAgICAgICAgICBC SVQoMikKPiAtCj4gICNkZWZpbmUgRElTUF9ESVRIRVJJTkcgICAgICAgICAgICAgICAgICAgICAg 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+IEBAIC0xNDEsNjUgKzEzOSw2NSBAQCB2b2lkIG10a19kaXRo ZXJfc2V0X2NvbW1vbih2b2lkIF9faW9tZW0gKnJlZ3MsIHN0cnVjdCBjbWRxX2NsaWVudF9yZWcg KmNtZHFfcmVnLAo+ICAgICAgICAgfQo+ICB9Cj4KPiAtc3RhdGljIHZvaWQgbXRrX2RpdGhlcl9z ZXQoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25lZCBpbnQgYnBjLAo+IC0gICAgICAgICAgICAg ICAgICAgdW5zaWduZWQgaW50IGNmZywgc3RydWN0IGNtZHFfcGt0ICpjbWRxX3BrdCkKPiArc3Rh dGljIHZvaWQgbXRrX2RpdGhlcl9jb25maWcoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25lZCBp bnQgdywKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgaCwgdW5z aWduZWQgaW50IHZyZWZyZXNoLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln bmVkIGludCBicGMsIHN0cnVjdCBjbWRxX3BrdCAqY21kcV9wa3QpCj4gIHsKPiAgICAgICAgIHN0 cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4KPiAt ICAgICAgIG10a19kaXRoZXJfc2V0X2NvbW1vbihwcml2LT5yZWdzLCAmcHJpdi0+Y21kcV9yZWcs IGJwYywgY2ZnLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIERJU1BfRElUSEVSSU5H LCBjbWRxX3BrdCk7Cj4gKyAgICAgICBtdGtfZGRwX3dyaXRlKGNtZHFfcGt0LCBoIDw8IDE2IHwg dywgJnByaXYtPmNtZHFfcmVnLCBwcml2LT5yZWdzLCBESVNQX1JFR19ESVRIRVJfU0laRSk7Cj4g KyAgICAgICBtdGtfZGRwX3dyaXRlKGNtZHFfcGt0LCBESVRIRVJfUkVMQVlfTU9ERSwgJnByaXYt PmNtZHFfcmVnLCBwcml2LT5yZWdzLAo+ICsgICAgICAgICAgICAgICAgICAgICBESVNQX1JFR19E SVRIRVJfQ0ZHKTsKPiArICAgICAgIG10a19kaXRoZXJfc2V0X2NvbW1vbihwcml2LT5yZWdzLCAm cHJpdi0+Y21kcV9yZWcsIGJwYywgRElTUF9SRUdfRElUSEVSX0NGRywKPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBESVRIRVJfRU5HSU5FX0VOLCBjbWRxX3BrdCk7Cj4gIH0KPgo+IC1z dGF0aWMgdm9pZCBtdGtfb2RfY29uZmlnKHN0cnVjdCBkZXZpY2UgKmRldiwgdW5zaWduZWQgaW50 IHcsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgaCwgdW5zaWduZWQg aW50IHZyZWZyZXNoLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJw Yywgc3RydWN0IGNtZHFfcGt0ICpjbWRxX3BrdCkKPiArc3RhdGljIHZvaWQgbXRrX2RpdGhlcl9z dGFydChzdHJ1Y3QgZGV2aWNlICpkZXYpCj4gIHsKPiAgICAgICAgIHN0cnVjdCBtdGtfZGRwX2Nv bXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4KPiAtICAgICAgIG10a19kZHBf d3JpdGUoY21kcV9wa3QsIHcgPDwgMTYgfCBoLCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3Ms IERJU1BfUkVHX09EX1NJWkUpOwo+IC0gICAgICAgbXRrX2RkcF93cml0ZShjbWRxX3BrdCwgT0Rf UkVMQVlNT0RFLCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3MsIERJU1BfUkVHX09EX0NGRyk7 Cj4gLSAgICAgICBtdGtfZGl0aGVyX3NldChkZXYsIGJwYywgRElTUF9SRUdfT0RfQ0ZHLCBjbWRx X3BrdCk7Cj4gKyAgICAgICB3cml0ZWwoRElUSEVSX0VOLCBwcml2LT5yZWdzICsgRElTUF9SRUdf RElUSEVSX0VOKTsKPiAgfQo+Cj4gLXN0YXRpYyB2b2lkIG10a19vZF9zdGFydChzdHJ1Y3QgZGV2 aWNlICpkZXYpCj4gK3N0YXRpYyB2b2lkIG10a19kaXRoZXJfc3RvcChzdHJ1Y3QgZGV2aWNlICpk ZXYpCj4gIHsKPiAgICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0gZGV2X2dl dF9kcnZkYXRhKGRldik7Cj4KPiAtICAgICAgIHdyaXRlbCgxLCBwcml2LT5yZWdzICsgRElTUF9S RUdfT0RfRU4pOwo+ICsgICAgICAgd3JpdGVsX3JlbGF4ZWQoMHgwLCBwcml2LT5yZWdzICsgRElT UF9SRUdfRElUSEVSX0VOKTsKPiAgfQo+Cj4gLXN0YXRpYyB2b2lkIG10a191Zm9lX3N0YXJ0KHN0 cnVjdCBkZXZpY2UgKmRldikKPiArc3RhdGljIHZvaWQgbXRrX2RpdGhlcl9zZXQoc3RydWN0IGRl dmljZSAqZGV2LCB1bnNpZ25lZCBpbnQgYnBjLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg IHVuc2lnbmVkIGludCBjZmcsIHN0cnVjdCBjbWRxX3BrdCAqY21kcV9wa3QpCj4gIHsKPiAgICAg ICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRldik7 Cj4KPiAtICAgICAgIHdyaXRlbChVRk9fQllQQVNTLCBwcml2LT5yZWdzICsgRElTUF9SRUdfVUZP X1NUQVJUKTsKPiArICAgICAgIG10a19kaXRoZXJfc2V0X2NvbW1vbihwcml2LT5yZWdzLCAmcHJp di0+Y21kcV9yZWcsIGJwYywgY2ZnLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERJ U1BfRElUSEVSSU5HLCBjbWRxX3BrdCk7Cj4gIH0KPgo+IC1zdGF0aWMgdm9pZCBtdGtfZGl0aGVy X2NvbmZpZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHVuc2lnbmVkIGludCB3LAo+IC0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBoLCB1bnNpZ25lZCBpbnQgdnJlZnJlc2gs Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJwYywgc3RydWN0 IGNtZHFfcGt0ICpjbWRxX3BrdCkKPiArc3RhdGljIHZvaWQgbXRrX29kX2NvbmZpZyhzdHJ1Y3Qg ZGV2aWNlICpkZXYsIHVuc2lnbmVkIGludCB3LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg dW5zaWduZWQgaW50IGgsIHVuc2lnbmVkIGludCB2cmVmcmVzaCwKPiArICAgICAgICAgICAgICAg ICAgICAgICAgIHVuc2lnbmVkIGludCBicGMsIHN0cnVjdCBjbWRxX3BrdCAqY21kcV9wa3QpCj4g IHsKPiAgICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXBfZGV2ICpwcml2ID0gZGV2X2dldF9kcnZk YXRhKGRldik7Cj4KPiAtICAgICAgIG10a19kZHBfd3JpdGUoY21kcV9wa3QsIGggPDwgMTYgfCB3 LCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3MsIERJU1BfUkVHX0RJVEhFUl9TSVpFKTsKPiAt ICAgICAgIG10a19kZHBfd3JpdGUoY21kcV9wa3QsIERJVEhFUl9SRUxBWV9NT0RFLCAmcHJpdi0+ Y21kcV9yZWcsIHByaXYtPnJlZ3MsCj4gLSAgICAgICAgICAgICAgICAgICAgIERJU1BfUkVHX0RJ VEhFUl9DRkcpOwo+IC0gICAgICAgbXRrX2RpdGhlcl9zZXRfY29tbW9uKHByaXYtPnJlZ3MsICZw cml2LT5jbWRxX3JlZywgYnBjLCBESVNQX1JFR19ESVRIRVJfQ0ZHLAo+IC0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgIERJVEhFUl9FTkdJTkVfRU4sIGNtZHFfcGt0KTsKPiArICAgICAgIG10 a19kZHBfd3JpdGUoY21kcV9wa3QsIHcgPDwgMTYgfCBoLCAmcHJpdi0+Y21kcV9yZWcsIHByaXYt PnJlZ3MsIERJU1BfUkVHX09EX1NJWkUpOwo+ICsgICAgICAgbXRrX2RkcF93cml0ZShjbWRxX3Br dCwgT0RfUkVMQVlNT0RFLCAmcHJpdi0+Y21kcV9yZWcsIHByaXYtPnJlZ3MsIERJU1BfUkVHX09E X0NGRyk7Cj4gKyAgICAgICBtdGtfZGl0aGVyX3NldChkZXYsIGJwYywgRElTUF9SRUdfT0RfQ0ZH LCBjbWRxX3BrdCk7Cj4gIH0KPgo+IC1zdGF0aWMgdm9pZCBtdGtfZGl0aGVyX3N0YXJ0KHN0cnVj dCBkZXZpY2UgKmRldikKPiArc3RhdGljIHZvaWQgbXRrX29kX3N0YXJ0KHN0cnVjdCBkZXZpY2Ug KmRldikKPiAgewo+ICAgICAgICAgc3RydWN0IG10a19kZHBfY29tcF9kZXYgKnByaXYgPSBkZXZf Z2V0X2RydmRhdGEoZGV2KTsKPgo+IC0gICAgICAgd3JpdGVsKERJVEhFUl9FTiwgcHJpdi0+cmVn cyArIERJU1BfUkVHX0RJVEhFUl9FTik7Cj4gKyAgICAgICB3cml0ZWwoMSwgcHJpdi0+cmVncyAr IERJU1BfUkVHX09EX0VOKTsKPiAgfQo+Cj4gLXN0YXRpYyB2b2lkIG10a19kaXRoZXJfc3RvcChz dHJ1Y3QgZGV2aWNlICpkZXYpCj4gK3N0YXRpYyB2b2lkIG10a191Zm9lX3N0YXJ0KHN0cnVjdCBk ZXZpY2UgKmRldikKPiAgewo+ICAgICAgICAgc3RydWN0IG10a19kZHBfY29tcF9kZXYgKnByaXYg PSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPgo+IC0gICAgICAgd3JpdGVsX3JlbGF4ZWQoMHgwLCBw cml2LT5yZWdzICsgRElTUF9SRUdfRElUSEVSX0VOKTsKPiArICAgICAgIHdyaXRlbChVRk9fQllQ QVNTLCBwcml2LT5yZWdzICsgRElTUF9SRUdfVUZPX1NUQVJUKTsKPiAgfQo+Cj4gIHN0YXRpYyBj b25zdCBzdHJ1Y3QgbXRrX2RkcF9jb21wX2Z1bmNzIGRkcF9hYWwgPSB7Cj4gQEAgLTI5NiwyMiAr Mjk0LDIyIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXRrX2RkcF9jb21wX2Z1bmNzIGRkcF91Zm9l ID0gewo+ICB9Owo+Cj4gIHN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgbXRrX2RkcF9jb21wX3N0 ZW1bTVRLX0REUF9DT01QX1RZUEVfTUFYXSA9IHsKPiArICAgICAgIFtNVEtfRElTUF9BQUxdID0g ImFhbCIsCj4gKyAgICAgICBbTVRLX0RJU1BfQkxTXSA9ICJibHMiLAo+ICsgICAgICAgW01US19E SVNQX0NDT1JSXSA9ICJjY29yciIsCj4gKyAgICAgICBbTVRLX0RJU1BfQ09MT1JdID0gImNvbG9y IiwKPiArICAgICAgIFtNVEtfRElTUF9ESVRIRVJdID0gImRpdGhlciIsCj4gKyAgICAgICBbTVRL X0RJU1BfR0FNTUFdID0gImdhbW1hIiwKPiArICAgICAgIFtNVEtfRElTUF9NVVRFWF0gPSAibXV0 ZXgiLAo+ICsgICAgICAgW01US19ESVNQX09EXSA9ICJvZCIsCj4gICAgICAgICBbTVRLX0RJU1Bf T1ZMXSA9ICJvdmwiLAo+ICAgICAgICAgW01US19ESVNQX09WTF8yTF0gPSAib3ZsLTJsIiwKPiAr ICAgICAgIFtNVEtfRElTUF9QV01dID0gInB3bSIsCj4gICAgICAgICBbTVRLX0RJU1BfUkRNQV0g PSAicmRtYSIsCj4gLSAgICAgICBbTVRLX0RJU1BfV0RNQV0gPSAid2RtYSIsCj4gLSAgICAgICBb TVRLX0RJU1BfQ09MT1JdID0gImNvbG9yIiwKPiAtICAgICAgIFtNVEtfRElTUF9DQ09SUl0gPSAi Y2NvcnIiLAo+IC0gICAgICAgW01US19ESVNQX0FBTF0gPSAiYWFsIiwKPiAtICAgICAgIFtNVEtf RElTUF9HQU1NQV0gPSAiZ2FtbWEiLAo+IC0gICAgICAgW01US19ESVNQX0RJVEhFUl0gPSAiZGl0 aGVyIiwKPiAgICAgICAgIFtNVEtfRElTUF9VRk9FXSA9ICJ1Zm9lIiwKPiAtICAgICAgIFtNVEtf RFNJXSA9ICJkc2kiLAo+ICsgICAgICAgW01US19ESVNQX1dETUFdID0gIndkbWEiLAo+ICAgICAg ICAgW01US19EUEldID0gImRwaSIsCj4gLSAgICAgICBbTVRLX0RJU1BfUFdNXSA9ICJwd20iLAo+ IC0gICAgICAgW01US19ESVNQX01VVEVYXSA9ICJtdXRleCIsCj4gLSAgICAgICBbTVRLX0RJU1Bf T0RdID0gIm9kIiwKPiAtICAgICAgIFtNVEtfRElTUF9CTFNdID0gImJscyIsCj4gKyAgICAgICBb TVRLX0RTSV0gPSAiZHNpIiwKPiAgfTsKPgo+ICBzdHJ1Y3QgbXRrX2RkcF9jb21wX21hdGNoIHsK PiBAQCAtNDY2LDEyICs0NjQsMTIgQEAgaW50IG10a19kZHBfY29tcF9pbml0KHN0cnVjdCBkZXZp Y2Vfbm9kZSAqbm9kZSwgc3RydWN0IG10a19kZHBfY29tcCAqY29tcCwKPiAgICAgICAgICAgICB0 eXBlID09IE1US19ESVNQX0NDT1JSIHx8Cj4gICAgICAgICAgICAgdHlwZSA9PSBNVEtfRElTUF9D T0xPUiB8fAo+ICAgICAgICAgICAgIHR5cGUgPT0gTVRLX0RJU1BfR0FNTUEgfHwKPiAtICAgICAg ICAgICB0eXBlID09IE1US19EUEkgfHwKPiAtICAgICAgICAgICB0eXBlID09IE1US19EU0kgfHwK PiAgICAgICAgICAgICB0eXBlID09IE1US19ESVNQX09WTCB8fAo+ICAgICAgICAgICAgIHR5cGUg PT0gTVRLX0RJU1BfT1ZMXzJMIHx8Cj4gICAgICAgICAgICAgdHlwZSA9PSBNVEtfRElTUF9QV00g fHwKPiAtICAgICAgICAgICB0eXBlID09IE1US19ESVNQX1JETUEpCj4gKyAgICAgICAgICAgdHlw ZSA9PSBNVEtfRElTUF9SRE1BIHx8Cj4gKyAgICAgICAgICAgdHlwZSA9PSBNVEtfRFBJIHx8Cj4g KyAgICAgICAgICAgdHlwZSA9PSBNVEtfRFNJKQo+ICAgICAgICAgICAgICAgICByZXR1cm4gMDsK Pgo+ICAgICAgICAgcHJpdiA9IGRldm1fa3phbGxvYyhjb21wLT5kZXYsIHNpemVvZigqcHJpdiks IEdGUF9LRVJORUwpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRr X2RybV9kZHBfY29tcC5oIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2Nv bXAuaAo+IGluZGV4IGJiOTE0ZDk3NmNmNS4uZDMxN2I5NDRkZjY2IDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmgKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29tcC5oCj4gQEAgLTE4LDIyICsxOCwyMiBA QCBzdHJ1Y3QgbXRrX3BsYW5lX3N0YXRlOwo+ICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGU7Cj4KPiAg ZW51bSBtdGtfZGRwX2NvbXBfdHlwZSB7Cj4gLSAgICAgICBNVEtfRElTUF9PVkwsCj4gLSAgICAg ICBNVEtfRElTUF9PVkxfMkwsCj4gLSAgICAgICBNVEtfRElTUF9SRE1BLAo+IC0gICAgICAgTVRL X0RJU1BfV0RNQSwKPiAtICAgICAgIE1US19ESVNQX0NPTE9SLAo+ICsgICAgICAgTVRLX0RJU1Bf QUFMLAo+ICsgICAgICAgTVRLX0RJU1BfQkxTLAo+ICAgICAgICAgTVRLX0RJU1BfQ0NPUlIsCj4g KyAgICAgICBNVEtfRElTUF9DT0xPUiwKPiAgICAgICAgIE1US19ESVNQX0RJVEhFUiwKPiAtICAg ICAgIE1US19ESVNQX0FBTCwKPiAgICAgICAgIE1US19ESVNQX0dBTU1BLAo+IC0gICAgICAgTVRL X0RJU1BfVUZPRSwKPiAtICAgICAgIE1US19EU0ksCj4gLSAgICAgICBNVEtfRFBJLAo+IC0gICAg ICAgTVRLX0RJU1BfUFdNLAo+ICAgICAgICAgTVRLX0RJU1BfTVVURVgsCj4gICAgICAgICBNVEtf RElTUF9PRCwKPiAtICAgICAgIE1US19ESVNQX0JMUywKPiArICAgICAgIE1US19ESVNQX09WTCwK PiArICAgICAgIE1US19ESVNQX09WTF8yTCwKPiArICAgICAgIE1US19ESVNQX1BXTSwKPiArICAg ICAgIE1US19ESVNQX1JETUEsCj4gKyAgICAgICBNVEtfRElTUF9VRk9FLAo+ICsgICAgICAgTVRL X0RJU1BfV0RNQSwKPiArICAgICAgIE1US19EUEksCj4gKyAgICAgICBNVEtfRFNJLAo+ICAgICAg ICAgTVRLX0REUF9DT01QX1RZUEVfTUFYLAo+ICB9Owo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVr L210a19kcm1fZHJ2LmMKPiBpbmRleCAxNDNiYTI0N2M2MjcuLjIyZDhmMTMwODBmMiAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jCj4gQEAgLTM5Niw1MiArMzk2LDIy IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgY29tcG9uZW50X21hc3Rlcl9vcHMgbXRrX2RybV9vcHMg PSB7Cj4gIH07Cj4KPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXRrX2RkcF9j b21wX2R0X2lkc1tdID0gewo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3 MDEtZGlzcC1vdmwiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfT1ZMIH0s Cj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLW92bCIsCj4g LSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9PVkwgfSwKPiAtICAgICAgIHsgLmNv bXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3Atb3ZsIiwKPiAtICAgICAgICAgLmRhdGEg PSAodm9pZCAqKU1US19ESVNQX09WTCB9LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRp YXRlayxtdDgxODMtZGlzcC1vdmwtMmwiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRL X0RJU1BfT1ZMXzJMIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10Mjcw MS1kaXNwLXJkbWEiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfUkRNQSB9 LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZGlzcC1yZG1hIiwK PiAtICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX1JETUEgfSwKPiAtICAgICAgIHsg LmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtcmRtYSIsCj4gLSAgICAgICAgIC5k YXRhID0gKHZvaWQgKilNVEtfRElTUF9SRE1BIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0g Im1lZGlhdGVrLG10ODE3My1kaXNwLXdkbWEiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICop TVRLX0RJU1BfV0RNQSB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgx NzMtZGlzcC1hYWwiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfQUFMfSwK PiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtYWFsIiwKPiAr ICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX0FBTH0sCj4gICAgICAgICB7IC5jb21w YXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kaXNwLWNjb3JyIiwKPiAgICAgICAgICAgLmRhdGEg PSAodm9pZCAqKU1US19ESVNQX0NDT1JSIH0sCj4gICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1l ZGlhdGVrLG10MjcwMS1kaXNwLWNvbG9yIiwKPiAgICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1U S19ESVNQX0NPTE9SIH0sCj4gICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3 My1kaXNwLWNvbG9yIiwKPiAgICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX0NPTE9S IH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLWFhbCIs Cj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9BQUx9LAo+IC0gICAgICAgeyAu Y29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxODMtZGlzcC1hYWwiLAo+IC0gICAgICAgICAuZGF0 YSA9ICh2b2lkICopTVRLX0RJU1BfQUFMfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVk aWF0ZWssbXQ4MTgzLWRpc3AtZGl0aGVyIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1U S19ESVNQX0RJVEhFUiB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgx NzMtZGlzcC1nYW1tYSIsCj4gICAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9HQU1N QSwgfSwKPiAgICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtZ2Ft bWEiLAo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfR0FNTUEsIH0sCj4gLSAg ICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kaXNwLWRpdGhlciIsCj4gLSAg ICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9ESVRIRVIgfSwKPiAtICAgICAgIHsgLmNv bXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3AtdWZvZSIsCj4gLSAgICAgICAgIC5kYXRh ID0gKHZvaWQgKilNVEtfRElTUF9VRk9FIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1l ZGlhdGVrLG10MjcwMS1kc2kiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RTSSB9 LAo+IC0gICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZHNpIiwKPiAtICAg ICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EU0kgfSwKPiAtICAgICAgIHsgLmNvbXBhdGlibGUg PSAibWVkaWF0ZWssbXQ4MTgzLWRzaSIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtf RFNJIH0sCj4gLSAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcwMS1kcGkiLAo+ IC0gICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RQSSB9LAo+IC0gICAgICAgeyAuY29tcGF0 aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZHBpIiwKPiAtICAgICAgICAgLmRhdGEgPSAodm9pZCAq KU1US19EUEkgfSwKPiAtICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRw aSIsCj4gLSAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRFBJIH0sCj4gICAgICAgICB7IC5j b21wYXRpYmxlID0gIm1lZGlhdGVrLG10MjcwMS1kaXNwLW11dGV4IiwKPiAgICAgICAgICAgLmRh dGEgPSAodm9pZCAqKU1US19ESVNQX01VVEVYIH0sCj4gICAgICAgICB7IC5jb21wYXRpYmxlID0g Im1lZGlhdGVrLG10MjcxMi1kaXNwLW11dGV4IiwKPiBAQCAtNDUwLDEyICs0MjAsNDIgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXRrX2RkcF9jb21wX2R0X2lkc1tdID0gewo+ ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfTVVURVggfSwKPiAgICAgICAgIHsg LmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTgzLWRpc3AtbXV0ZXgiLAo+ICAgICAgICAgICAu ZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfTVVURVggfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUg PSAibWVkaWF0ZWssbXQ4MTczLWRpc3Atb2QiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICop TVRLX0RJU1BfT0QgfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQyNzAx LWRpc3Atb3ZsIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX09WTCB9LAo+ ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZGlzcC1vdmwiLAo+ICsg ICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfT1ZMIH0sCj4gKyAgICAgICB7IC5jb21w YXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kaXNwLW92bCIsCj4gKyAgICAgICAgIC5kYXRhID0g KHZvaWQgKilNVEtfRElTUF9PVkwgfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0 ZWssbXQ4MTgzLWRpc3Atb3ZsLTJsIiwKPiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19E SVNQX09WTF8yTCB9LAo+ICAgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3MDEt ZGlzcC1wd20iLAo+ICAgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfQkxTIH0sCj4g ICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLXB3bSIsCj4gICAg ICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9QV00gfSwKPiAtICAgICAgIHsgLmNvbXBh dGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3Atb2QiLAo+IC0gICAgICAgICAuZGF0YSA9ICh2 b2lkICopTVRLX0RJU1BfT0QgfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWss bXQyNzAxLWRpc3AtcmRtYSIsCj4gKyAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9S RE1BIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLXJk bWEiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfUkRNQSB9LAo+ICsgICAg ICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxODMtZGlzcC1yZG1hIiwKPiArICAgICAg ICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX1JETUEgfSwKPiArICAgICAgIHsgLmNvbXBhdGli bGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3AtdWZvZSIsCj4gKyAgICAgICAgIC5kYXRhID0gKHZv aWQgKilNVEtfRElTUF9VRk9FIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVr LG10ODE3My1kaXNwLXdkbWEiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1Bf V0RNQSB9LAo+ICsgICAgICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3MDEtZHBpIiwK PiArICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EUEkgfSwKPiArICAgICAgIHsgLmNvbXBh dGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRwaSIsCj4gKyAgICAgICAgIC5kYXRhID0gKHZvaWQg KilNVEtfRFBJIH0sCj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1k cGkiLAo+ICsgICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RQSSB9LAo+ICsgICAgICAgeyAu Y29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3MDEtZHNpIiwKPiArICAgICAgICAgLmRhdGEgPSAo dm9pZCAqKU1US19EU0kgfSwKPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4 MTczLWRzaSIsCj4gKyAgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRFNJIH0sCj4gKyAgICAg ICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE4My1kc2kiLAo+ICsgICAgICAgICAuZGF0 YSA9ICh2b2lkICopTVRLX0RTSSB9LAo+ICAgICAgICAgeyB9Cj4gIH07Cj4KPiBAQCAtNTQ1LDgg KzU0NSw4IEBAIHN0YXRpYyBpbnQgbXRrX2RybV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNl ICpwZGV2KQo+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1US19ESVNQX09WTCB8 fAo+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1US19ESVNQX09WTF8yTCB8fAo+ ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1US19ESVNQX1JETUEgfHwKPiAtICAg ICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtfRFNJIHx8Cj4gLSAgICAgICAgICAgICAg ICAgICBjb21wX3R5cGUgPT0gTVRLX0RQSSkgewo+ICsgICAgICAgICAgICAgICAgICAgY29tcF90 eXBlID09IE1US19EUEkgfHwKPiArICAgICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtf RFNJKSB7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgZGV2X2luZm8oZGV2LCAiQWRkaW5nIGNv bXBvbmVudCBtYXRjaCBmb3IgJXBPRlxuIiwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBub2RlKTsKPiAgICAgICAgICAgICAgICAgICAgICAgICBkcm1fb2ZfY29tcG9uZW50X21h dGNoX2FkZChkZXYsICZtYXRjaCwgY29tcGFyZV9vZiwKPiAtLQo+IDIuMTguMAo+CgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVs IG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDov L2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==