From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chanwoo Choi Subject: Re: [PATCH v2 5/5] clk: samsung: exynos5433: add imem clock Date: Fri, 30 Nov 2018 08:18:49 +0900 Message-ID: <5C0073D9.8050900@samsung.com> References: <20181129155134.19141-1-k.konieczny@partner.samsung.com> <20181129155134.19141-6-k.konieczny@partner.samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8BIT Return-path: In-reply-to: <20181129155134.19141-6-k.konieczny@partner.samsung.com> Sender: linux-kernel-owner@vger.kernel.org To: Kamil Konieczny Cc: Rob Herring , Mark Rutland , Kukjin Kim , Krzysztof Kozlowski , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org List-Id: linux-samsung-soc@vger.kernel.org Hi Kamil, On 2018년 11월 30일 00:51, Kamil Konieczny wrote: > Add imem clock for exynos5433. This will enable to use crypto Security s/clock/clocks > SubSystem (in short SSS) and SlimSSS IP blocks. > > Signed-off-by: Kamil Konieczny > --- > drivers/clk/samsung/clk-exynos5433.c | 189 +++++++++++++++++++++++++ > include/dt-bindings/clock/exynos5433.h | 55 +++++++ > 2 files changed, 244 insertions(+) > > diff --git a/drivers/clk/samsung/clk-exynos5433.c b/drivers/clk/samsung/clk-exynos5433.c > index 24c3360db65b..ab03126f350b 100644 > --- a/drivers/clk/samsung/clk-exynos5433.c > +++ b/drivers/clk/samsung/clk-exynos5433.c > @@ -2345,6 +2345,192 @@ static const struct samsung_cmu_info fsys_cmu_info __initconst = { > .clk_name = "aclk_fsys_200", > }; > > +/* > + * Register offset definitions for CMU_IMEM > + * Remove unneeded blank line. > + */ > +#define ENABLE_ACLK_IMEM 0x0800 > +#define ENABLE_ACLK_IMEM_INT_MEM 0x0804 > +#define ENABLE_ACLK_IMEM_SSS 0x0808 > +#define ENABLE_ACLK_IMEM_SLIMSSS 0x080c > +#define ENABLE_ACLK_IMEM_RTIC 0x0810 > +#define ENABLE_ACLK_IMEM_SMMU_SSS 0x0814 > +#define ENABLE_ACLK_IMEM_SMMU_SLIMSSS 0x0818 > +#define ENABLE_ACLK_IMEM_SMMU_RTIC 0x081c > +#define ENABLE_ACLK_IMEM_ARBG_TX 0x0820 > +#define ENABLE_ACLK_IMEM_SMMU_ARBG_TX 0x0824 > +#define ENABLE_PCLK_IMEM 0x0900 > +#define ENABLE_PCLK_IMEM_SSS 0x0904 > +#define ENABLE_PCLK_IMEM_SLIMSSS 0x0908 > +#define ENABLE_PCLK_IMEM_RTIC 0x090c > +#define ENABLE_PCLK_IMEM_SMMU_SSS 0x0910 > +#define ENABLE_PCLK_IMEM_SMMU_SLIMSSS 0x0914 > +#define ENABLE_PCLK_IMEM_SMMU_RTIC 0x0918 > +#define ENABLE_PCLK_IMEM_SMMU_ARGB_TX 0x091c > + > +static const unsigned long imem_clk_regs[] __initconst = { > + ENABLE_ACLK_IMEM, > + ENABLE_ACLK_IMEM_INT_MEM, > + ENABLE_ACLK_IMEM_SSS, > + ENABLE_ACLK_IMEM_SLIMSSS, > + ENABLE_ACLK_IMEM_RTIC, > + ENABLE_ACLK_IMEM_SMMU_SSS, > + ENABLE_ACLK_IMEM_SMMU_SLIMSSS, > + ENABLE_ACLK_IMEM_SMMU_RTIC, > + ENABLE_ACLK_IMEM_ARBG_TX, > + ENABLE_ACLK_IMEM_SMMU_ARBG_TX, > + ENABLE_PCLK_IMEM, > + ENABLE_PCLK_IMEM_SSS, > + ENABLE_PCLK_IMEM_SLIMSSS, > + ENABLE_PCLK_IMEM_RTIC, > + ENABLE_PCLK_IMEM_SMMU_SSS, > + ENABLE_PCLK_IMEM_SMMU_SLIMSSS, > + ENABLE_PCLK_IMEM_SMMU_RTIC, > + ENABLE_PCLK_IMEM_SMMU_ARGB_TX, > +}; > + > +static const struct samsung_gate_clock imem_gate_clks[] __initconst = { > + /* ENABLE_ACLK_IMEM */ > + GATE(CLK_ACLK_AXI2AHB_IMEMH, "aclk_axi2ahb_imemh", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 24, 0, 0), > + GATE(CLK_ACLK_AXIDS_SROMC, "aclk_axids_sromc", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 23, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_SROMC, "aclk_sromc", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 22, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_BTS_ARBG_TX, "aclk_bts_arbg_tx", "aclk_imem_266", > + ENABLE_ACLK_IMEM, 21, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_ASYNCAXI_IMEMX, "aclk_asyncaxi_imemx", "aclk_imem_266", > + ENABLE_ACLK_IMEM, 20, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_AXIUS_IMEMX, "aclk_axius_imemx", "aclk_imem_266", > + ENABLE_ACLK_IMEM, 19, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_XIU_IMEMX, "aclk_xiu_imemx", "aclk_imem_266", > + ENABLE_ACLK_IMEM, 18, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_ASYNCAXI_SSSX, "aclk_asyncaxi_sssx", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM, 17, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_BTS_SLIMSSS, "aclk_bts_slimsss", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM, 15, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_BTS_SSS_DRAM, "aclk_bts_sss_dram", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM, 14, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_BTS_SSS_CCI, "aclk_bts_sss_cci", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM, 13, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_ALB_IMEM, "aclk_alb_imem", "aclk_imem_266", > + ENABLE_ACLK_IMEM, 12, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_AXIDS_PIMEMX_IMEM1P, "aclk_axids_pimemx_imem1p", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 11, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_AXIDS_PIMEMX_IMEM0P, "aclk_axids_pimemx_imem0p", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 10, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_AXIDS_PIMEMX_GIC, "aclk_axids_pimemx_gic", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 9, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_ASYNCAHBM_SSS_ATLAS, "aclk_asyncahbm_sss_atlas", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM, 7, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_ASYNCAXIS_MIF_PIMEMX, "aclk_asyncaxis_mif_pimemx", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 6, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_AXI2APB_IMEM1P, "aclk_axi2apb_imem1p", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 5, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_AXI2APB_IMEM0P, "aclk_axi2apb_imem0p", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 4, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_XIU_SSSX, "aclk_xiu_sssx", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM, 3, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_XIU_PIMEMX, "aclk_xiu_pimemx", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 2, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_IMEMND_266, "aclk_imemnd_266", "aclk_imem_266", > + ENABLE_ACLK_IMEM, 1, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_GIC, "aclk_gic", "aclk_imem_200", > + ENABLE_ACLK_IMEM, 0, CLK_IGNORE_UNUSED, 0), > + > + /* ENABLE_ACLK_IMEM_INT_MEM */ > + GATE(CLK_ACLK_INT_MEM, "aclk_int_mem", "aclk_imem_200", > + ENABLE_ACLK_IMEM_INT_MEM, 0, CLK_IGNORE_UNUSED, 0), Nitpick. Need to add blank line between different registers in order to keep the same format on this driver. > + /* ENABLE_ACLK_IMEM_SSS */ > + GATE(CLK_ACLK_SSS, "aclk_sss", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM_SSS, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_ACLK_IMEM_SLIMSSS */ > + GATE(CLK_ACLK_SLIMSSS, "aclk_slimsss", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM_SLIMSSS, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_ACLK_IMEM_RTIC */ > + GATE(CLK_ACLK_RTIC, "aclk_rtic", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM_RTIC, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_ACLK_SMMU_SSS */ > + GATE(CLK_ACLK_SMMU_SSS_DRAM, "aclk_smmu_sss_dram", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM_SMMU_SSS, 1, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_ACLK_SMMU_SSS_CCI, "aclk_smmu_sss_cci", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM_SMMU_SSS, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_ACLK_SMMU_SLIMSSS */ > + GATE(CLK_ACLK_SMMU_SLIMSSS, "aclk_smmu_slimsss", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM_SMMU_SLIMSSS, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_ACLK_SMMU_RTIC */ > + GATE(CLK_ACLK_SMMU_RTIC, "aclk_smmu_rtic", "aclk_imem_sssx_266", > + ENABLE_ACLK_IMEM_SMMU_RTIC, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_ACLK_IMEM_ARBG_TX */ > + GATE(CLK_ACLK_ARBG_TX, "aclk_arbg_tx", "aclk_imem_266", > + ENABLE_ACLK_IMEM_ARBG_TX, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_ACLK_IMEM_SMMU_ARBG_TX */ > + GATE(CLK_ACLK_SMMU_ARBG_TX, "aclk_smmu_arbg_tx", "aclk_imem_266", > + ENABLE_ACLK_IMEM_SMMU_ARBG_TX, 0, CLK_IGNORE_UNUSED, 0), > + > + /* ENABLE_PCLK_IMEM */ > + GATE(CLK_PCLK_GPIO_IMEM, "pclk_gpio_imem", "aclk_imem_200", > + ENABLE_PCLK_IMEM, 17, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_PCLK_ASYNCAXI_IMEMX, "pclk_asyncaxi_imemx", "aclk_imem_200", > + ENABLE_PCLK_IMEM, 16, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_PCLK_BTS_ARBG_TX, "pclk_bts_arbg_tx", "aclk_imem_200", > + ENABLE_PCLK_IMEM, 15, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_PCLK_ASYNCAPB_ARBG_TX, "pclk_asyncapb_arbg_tx", "aclk_imem_200", > + ENABLE_PCLK_IMEM, 14, CLK_IGNORE_UNUSED, 0), > + Remove blank line. > + GATE(CLK_PCLK_BTS_SLIMSSS, "pclk_bts_slimsss", "aclk_imem_200", > + ENABLE_PCLK_IMEM, 8, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_PCLK_BTS_SSS_DRAM, "pclk_bts_sss_dram", "aclk_imem_200", > + ENABLE_PCLK_IMEM, 7, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_PCLK_BTS_SSS_CCI, "pclk_bts_sss_cci", "aclk_imem_200", > + ENABLE_PCLK_IMEM, 6, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_PCLK_ALB_IMEM, "pclk_alb_imem", "aclk_imem_200", > + ENABLE_PCLK_IMEM, 5, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_PCLK_PMU_IMEM, "pclk_pmu_imem", "aclk_imem_200", > + ENABLE_PCLK_IMEM, 4, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_PCLK_SYSREG_IMEM, "pclk_sysreg_imem", "aclk_imem_200", > + ENABLE_PCLK_IMEM, 3, CLK_IGNORE_UNUSED, 0), Need to add blank line. > + /* ENABLE_PCLK_IMEM_SSS */ > + GATE(CLK_PCLK_SSS, "pclk_sss", "aclk_imem_200", > + ENABLE_PCLK_IMEM_SSS, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_PCLK_IMEM_SLIMSSS */ > + GATE(CLK_PCLK_SLIMSSS, "pclk_slimsss", "aclk_imem_200", > + ENABLE_PCLK_IMEM_SLIMSSS, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_PCLK_IMEM_RTIC */ > + GATE(CLK_PCLK_RTIC, "pclk_rtic", "aclk_imem_200", > + ENABLE_PCLK_IMEM_RTIC, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_PCLK_IMEM_SMMU_SSS */ > + GATE(CLK_PCLK_SMMU_SSS_DRAM, "pclk_smmu_sss_dram", "aclk_imem_200", > + ENABLE_PCLK_IMEM_SMMU_SSS, 1, CLK_IGNORE_UNUSED, 0), > + GATE(CLK_PCLK_SMMU_SSS_CCI, "pclk_smmu_sss_cci", "aclk_imem_200", > + ENABLE_PCLK_IMEM_SMMU_SSS, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_PCLK_IMEM_SMMU_SLIMSSS */ > + GATE(CLK_PCLK_SMMU_SLIMSSS, "pclk_smmu_slimsss", "aclk_imem_200", > + ENABLE_PCLK_IMEM_SMMU_SLIMSSS, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_PCLK_IMEM_SMMU_RTIC */ > + GATE(CLK_PCLK_SMMU_RTIC, "pclk_sss", "aclk_imem_200", > + ENABLE_PCLK_IMEM_SMMU_RTIC, 0, CLK_IGNORE_UNUSED, 0), ditto. > + /* ENABLE_PCLK_IMEM_SMMU_ARGB_TX */ > + GATE(CLK_PCLK_SMMU_ARBG_TX, "pclk_smmu_arbg_tx", "aclk_imem_200", > + ENABLE_PCLK_IMEM_SMMU_ARGB_TX, 0, CLK_IGNORE_UNUSED, 0), > +}; > + > +static const struct samsung_cmu_info imem_cmu_info __initconst = { > + .gate_clks = imem_gate_clks, > + .nr_gate_clks = ARRAY_SIZE(imem_gate_clks), > + .nr_clk_ids = IMEM_NR_CLK, > + .clk_regs = imem_clk_regs, > + .nr_clk_regs = ARRAY_SIZE(imem_clk_regs), > +}; > + > +static void __init exynos5433_cmu_imem_init(struct device_node *np) > +{ > + samsung_cmu_register_one(np, &imem_cmu_info); > +} > + > +CLK_OF_DECLARE(exynos5433_cmu_imem, "samsung,exynos5433-cmu-imem", > + exynos5433_cmu_imem_init); > + CLK_OF_DECLARE() declaration and adding new entry to exynos5433_cmu_of_match[] for imem clocks are redundant. CLK_OF_DECLARE() is not needed because you added the 'samsung,exynos5433-cmu-imem' entries to exynos5433_cmu_of_match table. > /* > * Register offset definitions for CMU_G2D > */ > @@ -5648,6 +5834,9 @@ static const struct of_device_id exynos5433_cmu_of_match[] = { > }, { > .compatible = "samsung,exynos5433-cmu-hevc", > .data = &hevc_cmu_info, > + }, { > + .compatible = "samsung,exynos5433-cmu-imem", > + .data = &imem_cmu_info, You added the codes before cmu_g2d on following codes - arch/arm64/boot/dts/exynos/exynos5433.dtsi - include/dt-bindings/clock/exynos5433.h - drivers/clk/samsung/clk-exynos5433.c But, in the exynos5433_cmu_of_match, you added the new entry between 'cmu-hevc' and 'cmu-isp'. There is no consistent reason. If there is no any special reason to add it on the middle, you better to add it at the end. > }, { > .compatible = "samsung,exynos5433-cmu-isp", > .data = &isp_cmu_info, > diff --git a/include/dt-bindings/clock/exynos5433.h b/include/dt-bindings/clock/exynos5433.h > index 87bb2b017143..312d8810b56d 100644 > --- a/include/dt-bindings/clock/exynos5433.h > +++ b/include/dt-bindings/clock/exynos5433.h > @@ -623,6 +623,61 @@ > > #define FSYS_NR_CLK 116 > > +/* CMU_IMEM */ > +#define CLK_ACLK_SSS 1 > +#define CLK_ACLK_SLIMSSS 2 > +#define CLK_ACLK_RTIC 3 > +#define CLK_ACLK_XIU_SSSX 4 > +#define CLK_ACLK_ASYNCAHBM_SSS_ATLAS 5 > +#define CLK_ACLK_ASYNCAXI_SSSX 6 > +#define CLK_ACLK_BTS_SSS_CCI 7 > +#define CLK_ACLK_BTS_SSS_DRAM 8 > +#define CLK_ACLK_BTS_SLIMSSS 9 > +#define CLK_ACLK_SMMU_SSS_CCI 10 > +#define CLK_ACLK_SMMU_SSS_DRAM 11 > +#define CLK_ACLK_SMMU_SLIMSSS 12 > +#define CLK_ACLK_SMMU_RTIC 13 > +#define CLK_ACLK_IMEMND_266 14 > +#define CLK_ACLK_ALB_IMEM 15 > +#define CLK_ACLK_XIU_IMEMX 16 > +#define CLK_ACLK_AXIUS_IMEMX 17 > +#define CLK_ACLK_ASYNCAXI_IMEMX 18 > +#define CLK_ACLK_ARBG_TX 19 > +#define CLK_ACLK_BTS_ARBG_TX 20 > +#define CLK_ACLK_SMMU_ARBG_TX 21 > +#define CLK_ACLK_GIC 22 > +#define CLK_ACLK_INT_MEM 23 > +#define CLK_ACLK_XIU_PIMEMX 24 > +#define CLK_ACLK_AXI2APB_IMEM0P 25 > +#define CLK_ACLK_AXI2APB_IMEM1P 26 > +#define CLK_ACLK_ASYNCAXIS_MIF_PIMEMX 27 > +#define CLK_ACLK_AXIDS_PIMEMX_GIC 28 > +#define CLK_ACLK_AXIDS_PIMEMX_IMEM0P 29 > +#define CLK_ACLK_AXIDS_PIMEMX_IMEM1P 30 > +#define CLK_ACLK_SROMC 31 > +#define CLK_ACLK_AXIDS_SROMC 32 > +#define CLK_ACLK_AXI2AHB_IMEMH 33 > +#define CLK_PCLK_SSS 34 > +#define CLK_PCLK_SLIMSSS 35 > +#define CLK_PCLK_RTIC 36 > +#define CLK_PCLK_SYSREG_IMEM 37 > +#define CLK_PCLK_PMU_IMEM 38 > +#define CLK_PCLK_ALB_IMEM 39 > +#define CLK_PCLK_BTS_SSS_CCI 40 > +#define CLK_PCLK_BTS_SSS_DRAM 41 > +#define CLK_PCLK_BTS_SLIMSSS 42 > +#define CLK_PCLK_SMMU_SSS_CCI 43 > +#define CLK_PCLK_SMMU_SSS_DRAM 44 > +#define CLK_PCLK_SMMU_SLIMSSS 45 > +#define CLK_PCLK_SMMU_RTIC 46 > +#define CLK_PCLK_ASYNCAPB_ARBG_TX 47 > +#define CLK_PCLK_BTS_ARBG_TX 48 > +#define CLK_PCLK_SMMU_ARBG_TX 49 > +#define CLK_PCLK_ASYNCAXI_IMEMX 50 > +#define CLK_PCLK_GPIO_IMEM 51 > + > +#define IMEM_NR_CLK 52 > + > /* CMU_G2D */ > #define CLK_MUX_ACLK_G2D_266_USER 1 > #define CLK_MUX_ACLK_G2D_400_USER 2 > -- Best Regards, Chanwoo Choi Samsung Electronics 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=-7.7 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_PASS,UPPERCASE_50_75,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 D1315C04EB9 for ; Thu, 29 Nov 2018 23:19:14 +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 9B1AA21019 for ; Thu, 29 Nov 2018 23:19:14 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="Kj82f1p6"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b="QrC9fQs/" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9B1AA21019 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=samsung.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:References:In-reply-to:Subject:To:From: Date:Message-id:MIME-version:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=Sg5VZkcH6y/QEBjsWCt05EfXinJzBhhly0CpWXbpULc=; b=Kj82f1p6IlxAHP EFgBVHc3kDJt8s9O+g5DwqbEU5p+lhACsae18yE1Gytj0isxhR5be04Ft7OyPGId3xwVl04NkblZf 99Ry8CihkdQfeH5bHbMMgnDUqgfj26zKEq04yAl0BpK3Gmko7U+Ac5EpCtNaK7MJhnlR0xVwoq0a9 5mPoI8Pvi0+QjpR3j8501vtCbS0Z2XjRV8OjjYFcUEhUxTysgXu9q2xNHjn5BILR1UZrYc7+zzFWw a0AvQ3yRaK/u1TKJCFDEDbJuwMX5jnY9SDG70V43L8kx4RCCgrPxkxslgqtgktyMiTRmlbGHze1w5 TCMVAHdA8Lo9lMvD6Z5Q==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1gSVaT-0001dN-Kl; Thu, 29 Nov 2018 23:19:13 +0000 Received: from mailout2.samsung.com ([203.254.224.25]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gSVaO-0001cH-Tm for linux-arm-kernel@lists.infradead.org; Thu, 29 Nov 2018 23:19:11 +0000 Received: from epcas1p4.samsung.com (unknown [182.195.41.48]) by mailout2.samsung.com (KnoxPortal) with ESMTP id 20181129231852epoutp02920cdb700b696af239fda7ec70a55fd0~ru5Hq2Aj62652526525epoutp02X; Thu, 29 Nov 2018 23:18:52 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.samsung.com 20181129231852epoutp02920cdb700b696af239fda7ec70a55fd0~ru5Hq2Aj62652526525epoutp02X DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1543533532; bh=foKVUaKUXk+3wW1QlW2OEC5JMRcibeAmw6jrOQYuKMs=; h=Date:From:To:Cc:Subject:In-reply-to:References:From; b=QrC9fQs/BdYgXjF68v0SW/w6+uPYMvv1wkS1s7vIsJnt6vAU/4OC4TmVu6GKnsUO7 RUbLdqnaPHLGlybrsEqKbB5g7cZKC4wiE5QHVkN1K90H9DhQyUYBmad+Vava1pKjsN gct6yTiBGlhRjjC2X/a5dhanuVyQaZAcfqhEqfj8= Received: from epsmges1p4.samsung.com (unknown [182.195.40.153]) by epcas1p3.samsung.com (KnoxPortal) with ESMTP id 20181129231850epcas1p35106e1d63178cf131fdb039fc9424104~ru5FRkF0v2979529795epcas1p39; Thu, 29 Nov 2018 23:18:50 +0000 (GMT) Received: from epcas1p3.samsung.com ( [182.195.41.47]) by epsmges1p4.samsung.com (Symantec Messaging Gateway) with SMTP id 6A.A5.04146.AD3700C5; Fri, 30 Nov 2018 08:18:50 +0900 (KST) Received: from epsmgms2p1new.samsung.com (unknown [182.195.42.142]) by epcas1p4.samsung.com (KnoxPortal) with ESMTP id 20181129231849epcas1p4e7382e1d3c4c41d2cc4c93f349f17ee8~ru5FFmXfa0908209082epcas1p4c; Thu, 29 Nov 2018 23:18:49 +0000 (GMT) X-AuditID: b6c32a38-5e7389c000001032-a0-5c0073daa738 Received: from epmmp1.local.host ( [203.254.227.16]) by epsmgms2p1new.samsung.com (Symantec Messaging Gateway) with SMTP id 1A.A7.03601.9D3700C5; Fri, 30 Nov 2018 08:18:49 +0900 (KST) MIME-version: 1.0 Received: from [10.113.63.77] by mmp1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0PIZ00IKXA3DAQ90@mmp1.samsung.com>; Fri, 30 Nov 2018 08:18:49 +0900 (KST) Message-id: <5C0073D9.8050900@samsung.com> Date: Fri, 30 Nov 2018 08:18:49 +0900 From: Chanwoo Choi Organization: Samsung Electronics User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 To: Kamil Konieczny Subject: Re: [PATCH v2 5/5] clk: samsung: exynos5433: add imem clock In-reply-to: <20181129155134.19141-6-k.konieczny@partner.samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA02Sa0hTYRzGe3d2timt3ualt2W2TkRoqTvO2TGcCVksjBD6Us3Qw/aisms7 m12+ZHSxhuUlKTM1raTbCjEzNTWaptIHR0oXLC0yYxhYkdoFobYdI789PPyeP//n/74SQjZH yiUFFge2W1gTJQoVtvbEJMSNcIuylf0XSeZK7yDJnOv+A5jS8c8E4/U2iZnm8ZckM9xRI2Kq vN0CpvHVcwFzsqtXnB6idde5gbb59hmR9v71o9onU50C7ffm6CxynzE1H7MGbFdgi95qKLDk aajM3Tlbc9TJSjqOTmE2UQoLa8YaKmNnVtz2ApN/H0pRyJqcfiuL5TgqIS3VbnU6sCLfyjk0 FLYZTLYUWzzHmjmnJS9ebzVvppXKRLUfzDXmP2m7RNjcxkMnWm6AIlCrc4EQCYJJyDv1XhTQ MtgG0IUpuwuE+vUPgOoH6gX/oOtNrSQPPQKo5MHKgJbCZejn+TGhC0gkBFyNeoeMAZuAMcg3 XSHk54wC9HuuXhxgpDAW9RXrA4wQrkNz05eDI0V++7HvdXCHpXANevFzHAR0BNyD2q/MigM6 HKrRhztFZGAmAasEyN03EwyEwQz05s1IUIfAbeiXpysIIfhOhDwzw8HlkB+q6FfwXcLQZH+L mLdXoqGnGh4vBmjad3w+WwbQ12f358ur0KcGl4BvtgRNzZSQfFiKTp+S8YgW3ax0k3zhYYB6 Bh6LysCq6gU3qv5/o+oFN6oHxG0QiW2cOQ9ztC1p4ds1g+DPi2XaQOfgTg+AEkAtlqb//qOT kWwhd9jsAUhCUOHSLYpF2TKpgT18BNutOXanCXMeoPbfuJyQR+it/n9sceTQ6kSVSsUk0clq mqaWSz/Ka3UymMc6sBFjG7b/ywkkIfIiEKGRLc3ojGz7psw9eDUqbkRXvbE3cywmu/FAe+zT 9r1NhnSj69bQvb79A2mTu+4Ofv8Rnzxb2DIx7CxVN4iO6XLboTlhw9qH5evHo/bqdzSWRqbj zAzDtedfBjWz0ZV3VDN1HadbzvrC53R4RYOr522rzDdRs+NkSc8Lr3jUJ5dSQi6fpWMJO8f+ BdmvPaePAwAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrMLMWRmVeSWpSXmKPExsVy+t9jAd2bxQwxBvu3G1nMP3KO1aJv339G i/7Hr5ktzp/fwG6x6fE1VovLu+awWcw4v4/JYun1i0wWrXuPsDtweqyZt4bRY9OqTjaPzUvq PQ6+28Pk8XmTXABrFJdNSmpOZllqkb5dAlfGwR0zmQvWZFe0bFnO2MA4N7qLkZNDQsBEYsmG bawgtpDATkaJTcs1QGxeAUGJH5PvsXQxcnAwC8hLHLmUDWGqS0yZktvFyAVUfZ9RYtecqcwg cV4BLYlj7ckgnSwCqhJ/vswGm8gGFN7/4gYbiM0voChx9cdjRpByUYEIie4TlSBhEQFTiUer G1hBRjILzGCSaD2/jBkkISzgInH79i02iMsuM0rcPWgGYnMKuEr8PLSXdQKjwCwkh85COHQW wqELGJlXMUqmFhTnpucWGxUY5qWW6xUn5haX5qXrJefnbmIEBv22w1p9OxjvL4k/xCjAwajE w/vi+/9oIdbEsuLK3EOMEhzMSiK89goMMUK8KYmVValF+fFFpTmpxYcYpTlYlMR5b+cdixQS SE8sSc1OTS1ILYLJMnFwSjUwWhfMO9bEfbtzrle2hJoJY265w/xpqu02a6TNlOUMXz6MCHZe 3ayZNvfVMxZFlc1n1qw6f+qJnEemVah4JefRky9Yl8tcslI7JXkr919g6Zp916IloyemzPiy Yf4TjdOFO878Kbmvv/v+lQBO76mXdkgfCJnUd/7/A5v+utCTdlanV6/9+I5xshJLcUaioRZz UXEiAJTD5KR2AgAA X-CMS-MailID: 20181129231849epcas1p4e7382e1d3c4c41d2cc4c93f349f17ee8 X-Msg-Generator: CA CMS-TYPE: 101P DLP-Filter: Pass X-CFilter-Loop: Reflected X-CMS-RootMailID: 20181129155147eucas1p14b902fc9c4e9abda03dcf506486d4152 References: <20181129155134.19141-1-k.konieczny@partner.samsung.com> <20181129155134.19141-6-k.konieczny@partner.samsung.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20181129_151909_287453_EF1C50AB X-CRM114-Status: GOOD ( 21.31 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , devicetree@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, Krzysztof Kozlowski , Rob Herring , Kukjin Kim , linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGkgS2FtaWwsCgpPbiAyMDE464WEIDEx7JuUIDMw7J28IDAwOjUxLCBLYW1pbCBLb25pZWN6bnkg d3JvdGU6Cj4gQWRkIGltZW0gY2xvY2sgZm9yIGV4eW5vczU0MzMuIFRoaXMgd2lsbCBlbmFibGUg dG8gdXNlIGNyeXB0byBTZWN1cml0eQoKcy9jbG9jay9jbG9ja3MKCj4gU3ViU3lzdGVtIChpbiBz aG9ydCBTU1MpIGFuZCBTbGltU1NTIElQIGJsb2Nrcy4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBLYW1p bCBLb25pZWN6bnkgPGsua29uaWVjem55QHBhcnRuZXIuc2Ftc3VuZy5jb20+Cj4gLS0tCj4gIGRy aXZlcnMvY2xrL3NhbXN1bmcvY2xrLWV4eW5vczU0MzMuYyAgIHwgMTg5ICsrKysrKysrKysrKysr KysrKysrKysrKysKPiAgaW5jbHVkZS9kdC1iaW5kaW5ncy9jbG9jay9leHlub3M1NDMzLmggfCAg NTUgKysrKysrKwo+ICAyIGZpbGVzIGNoYW5nZWQsIDI0NCBpbnNlcnRpb25zKCspCj4gCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvY2xrL3NhbXN1bmcvY2xrLWV4eW5vczU0MzMuYyBiL2RyaXZlcnMv Y2xrL3NhbXN1bmcvY2xrLWV4eW5vczU0MzMuYwo+IGluZGV4IDI0YzMzNjBkYjY1Yi4uYWIwMzEy NmYzNTBiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvY2xrL3NhbXN1bmcvY2xrLWV4eW5vczU0MzMu Ywo+ICsrKyBiL2RyaXZlcnMvY2xrL3NhbXN1bmcvY2xrLWV4eW5vczU0MzMuYwo+IEBAIC0yMzQ1 LDYgKzIzNDUsMTkyIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgc2Ftc3VuZ19jbXVfaW5mbyBmc3lz X2NtdV9pbmZvIF9faW5pdGNvbnN0ID0gewo+ICAJLmNsa19uYW1lCQk9ICJhY2xrX2ZzeXNfMjAw IiwKPiAgfTsKPiAgCj4gKy8qCj4gKyAqIFJlZ2lzdGVyIG9mZnNldCBkZWZpbml0aW9ucyBmb3Ig Q01VX0lNRU0KPiArICoKClJlbW92ZSB1bm5lZWRlZCBibGFuayBsaW5lLgoKPiArICovCj4gKyNk ZWZpbmUgRU5BQkxFX0FDTEtfSU1FTQkJCTB4MDgwMAo+ICsjZGVmaW5lIEVOQUJMRV9BQ0xLX0lN RU1fSU5UX01FTQkJMHgwODA0Cj4gKyNkZWZpbmUgRU5BQkxFX0FDTEtfSU1FTV9TU1MJCQkweDA4 MDgKPiArI2RlZmluZSBFTkFCTEVfQUNMS19JTUVNX1NMSU1TU1MJCTB4MDgwYwo+ICsjZGVmaW5l IEVOQUJMRV9BQ0xLX0lNRU1fUlRJQwkJCTB4MDgxMAo+ICsjZGVmaW5lIEVOQUJMRV9BQ0xLX0lN RU1fU01NVV9TU1MJCTB4MDgxNAo+ICsjZGVmaW5lIEVOQUJMRV9BQ0xLX0lNRU1fU01NVV9TTElN U1NTCQkweDA4MTgKPiArI2RlZmluZSBFTkFCTEVfQUNMS19JTUVNX1NNTVVfUlRJQwkJMHgwODFj Cj4gKyNkZWZpbmUgRU5BQkxFX0FDTEtfSU1FTV9BUkJHX1RYCQkweDA4MjAKPiArI2RlZmluZSBF TkFCTEVfQUNMS19JTUVNX1NNTVVfQVJCR19UWAkJMHgwODI0Cj4gKyNkZWZpbmUgRU5BQkxFX1BD TEtfSU1FTQkJCTB4MDkwMAo+ICsjZGVmaW5lIEVOQUJMRV9QQ0xLX0lNRU1fU1NTCQkJMHgwOTA0 Cj4gKyNkZWZpbmUgRU5BQkxFX1BDTEtfSU1FTV9TTElNU1NTCQkweDA5MDgKPiArI2RlZmluZSBF TkFCTEVfUENMS19JTUVNX1JUSUMJCQkweDA5MGMKPiArI2RlZmluZSBFTkFCTEVfUENMS19JTUVN X1NNTVVfU1NTCQkweDA5MTAKPiArI2RlZmluZSBFTkFCTEVfUENMS19JTUVNX1NNTVVfU0xJTVNT UwkJMHgwOTE0Cj4gKyNkZWZpbmUgRU5BQkxFX1BDTEtfSU1FTV9TTU1VX1JUSUMJCTB4MDkxOAo+ ICsjZGVmaW5lIEVOQUJMRV9QQ0xLX0lNRU1fU01NVV9BUkdCX1RYCQkweDA5MWMKPiArCj4gK3N0 YXRpYyBjb25zdCB1bnNpZ25lZCBsb25nIGltZW1fY2xrX3JlZ3NbXSBfX2luaXRjb25zdCA9IHsK PiArCUVOQUJMRV9BQ0xLX0lNRU0sCj4gKwlFTkFCTEVfQUNMS19JTUVNX0lOVF9NRU0sCj4gKwlF TkFCTEVfQUNMS19JTUVNX1NTUywKPiArCUVOQUJMRV9BQ0xLX0lNRU1fU0xJTVNTUywKPiArCUVO QUJMRV9BQ0xLX0lNRU1fUlRJQywKPiArCUVOQUJMRV9BQ0xLX0lNRU1fU01NVV9TU1MsCj4gKwlF TkFCTEVfQUNMS19JTUVNX1NNTVVfU0xJTVNTUywKPiArCUVOQUJMRV9BQ0xLX0lNRU1fU01NVV9S VElDLAo+ICsJRU5BQkxFX0FDTEtfSU1FTV9BUkJHX1RYLAo+ICsJRU5BQkxFX0FDTEtfSU1FTV9T TU1VX0FSQkdfVFgsCj4gKwlFTkFCTEVfUENMS19JTUVNLAo+ICsJRU5BQkxFX1BDTEtfSU1FTV9T U1MsCj4gKwlFTkFCTEVfUENMS19JTUVNX1NMSU1TU1MsCj4gKwlFTkFCTEVfUENMS19JTUVNX1JU SUMsCj4gKwlFTkFCTEVfUENMS19JTUVNX1NNTVVfU1NTLAo+ICsJRU5BQkxFX1BDTEtfSU1FTV9T TU1VX1NMSU1TU1MsCj4gKwlFTkFCTEVfUENMS19JTUVNX1NNTVVfUlRJQywKPiArCUVOQUJMRV9Q Q0xLX0lNRU1fU01NVV9BUkdCX1RYLAo+ICt9Owo+ICsKPiArc3RhdGljIGNvbnN0IHN0cnVjdCBz YW1zdW5nX2dhdGVfY2xvY2sgaW1lbV9nYXRlX2Nsa3NbXSBfX2luaXRjb25zdCA9IHsKPiArCS8q IEVOQUJMRV9BQ0xLX0lNRU0gKi8KPiArCUdBVEUoQ0xLX0FDTEtfQVhJMkFIQl9JTUVNSCwgImFj bGtfYXhpMmFoYl9pbWVtaCIsICJhY2xrX2ltZW1fMjAwIiwKPiArCQkJRU5BQkxFX0FDTEtfSU1F TSwgMjQsIDAsIDApLAo+ICsJR0FURShDTEtfQUNMS19BWElEU19TUk9NQywgImFjbGtfYXhpZHNf c3JvbWMiLCAiYWNsa19pbWVtXzIwMCIsCj4gKwkJCUVOQUJMRV9BQ0xLX0lNRU0sIDIzLCBDTEtf SUdOT1JFX1VOVVNFRCwgMCksCj4gKwlHQVRFKENMS19BQ0xLX1NST01DLCAiYWNsa19zcm9tYyIs ICJhY2xrX2ltZW1fMjAwIiwKPiArCQkJRU5BQkxFX0FDTEtfSU1FTSwgMjIsIENMS19JR05PUkVf VU5VU0VELCAwKSwKPiArCUdBVEUoQ0xLX0FDTEtfQlRTX0FSQkdfVFgsICJhY2xrX2J0c19hcmJn X3R4IiwgImFjbGtfaW1lbV8yNjYiLAo+ICsJCQlFTkFCTEVfQUNMS19JTUVNLCAyMSwgQ0xLX0lH Tk9SRV9VTlVTRUQsIDApLAo+ICsJR0FURShDTEtfQUNMS19BU1lOQ0FYSV9JTUVNWCwgImFjbGtf YXN5bmNheGlfaW1lbXgiLCAiYWNsa19pbWVtXzI2NiIsCj4gKwkJCUVOQUJMRV9BQ0xLX0lNRU0s IDIwLCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCj4gKwlHQVRFKENMS19BQ0xLX0FYSVVTX0lNRU1Y LCAiYWNsa19heGl1c19pbWVteCIsICJhY2xrX2ltZW1fMjY2IiwKPiArCQkJRU5BQkxFX0FDTEtf SU1FTSwgMTksIENMS19JR05PUkVfVU5VU0VELCAwKSwKPiArCUdBVEUoQ0xLX0FDTEtfWElVX0lN RU1YLCAiYWNsa194aXVfaW1lbXgiLCAiYWNsa19pbWVtXzI2NiIsCj4gKwkJCUVOQUJMRV9BQ0xL X0lNRU0sIDE4LCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCj4gKwlHQVRFKENMS19BQ0xLX0FTWU5D QVhJX1NTU1gsICJhY2xrX2FzeW5jYXhpX3Nzc3giLCAiYWNsa19pbWVtX3Nzc3hfMjY2IiwKPiAr CQkJRU5BQkxFX0FDTEtfSU1FTSwgMTcsIENMS19JR05PUkVfVU5VU0VELCAwKSwKPiArCUdBVEUo Q0xLX0FDTEtfQlRTX1NMSU1TU1MsICJhY2xrX2J0c19zbGltc3NzIiwgImFjbGtfaW1lbV9zc3N4 XzI2NiIsCj4gKwkJCUVOQUJMRV9BQ0xLX0lNRU0sIDE1LCBDTEtfSUdOT1JFX1VOVVNFRCwgMCks Cj4gKwlHQVRFKENMS19BQ0xLX0JUU19TU1NfRFJBTSwgImFjbGtfYnRzX3Nzc19kcmFtIiwgImFj bGtfaW1lbV9zc3N4XzI2NiIsCj4gKwkJCUVOQUJMRV9BQ0xLX0lNRU0sIDE0LCBDTEtfSUdOT1JF X1VOVVNFRCwgMCksCj4gKwlHQVRFKENMS19BQ0xLX0JUU19TU1NfQ0NJLCAiYWNsa19idHNfc3Nz X2NjaSIsICJhY2xrX2ltZW1fc3NzeF8yNjYiLAo+ICsJCQlFTkFCTEVfQUNMS19JTUVNLCAxMywg Q0xLX0lHTk9SRV9VTlVTRUQsIDApLAo+ICsJR0FURShDTEtfQUNMS19BTEJfSU1FTSwgImFjbGtf YWxiX2ltZW0iLCAiYWNsa19pbWVtXzI2NiIsCj4gKwkJCUVOQUJMRV9BQ0xLX0lNRU0sIDEyLCBD TEtfSUdOT1JFX1VOVVNFRCwgMCksCj4gKwlHQVRFKENMS19BQ0xLX0FYSURTX1BJTUVNWF9JTUVN MVAsICJhY2xrX2F4aWRzX3BpbWVteF9pbWVtMXAiLCAiYWNsa19pbWVtXzIwMCIsCj4gKwkJCUVO QUJMRV9BQ0xLX0lNRU0sIDExLCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCj4gKwlHQVRFKENMS19B Q0xLX0FYSURTX1BJTUVNWF9JTUVNMFAsICJhY2xrX2F4aWRzX3BpbWVteF9pbWVtMHAiLCAiYWNs a19pbWVtXzIwMCIsCj4gKwkJCUVOQUJMRV9BQ0xLX0lNRU0sIDEwLCBDTEtfSUdOT1JFX1VOVVNF RCwgMCksCj4gKwlHQVRFKENMS19BQ0xLX0FYSURTX1BJTUVNWF9HSUMsICJhY2xrX2F4aWRzX3Bp bWVteF9naWMiLCAiYWNsa19pbWVtXzIwMCIsCj4gKwkJCUVOQUJMRV9BQ0xLX0lNRU0sIDksIENM S19JR05PUkVfVU5VU0VELCAwKSwKPiArCUdBVEUoQ0xLX0FDTEtfQVNZTkNBSEJNX1NTU19BVExB UywgImFjbGtfYXN5bmNhaGJtX3Nzc19hdGxhcyIsICJhY2xrX2ltZW1fc3NzeF8yNjYiLAo+ICsJ CQlFTkFCTEVfQUNMS19JTUVNLCA3LCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCj4gKwlHQVRFKENM S19BQ0xLX0FTWU5DQVhJU19NSUZfUElNRU1YLCAiYWNsa19hc3luY2F4aXNfbWlmX3BpbWVteCIs ICJhY2xrX2ltZW1fMjAwIiwKPiArCQkJRU5BQkxFX0FDTEtfSU1FTSwgNiwgQ0xLX0lHTk9SRV9V TlVTRUQsIDApLAo+ICsJR0FURShDTEtfQUNMS19BWEkyQVBCX0lNRU0xUCwgImFjbGtfYXhpMmFw Yl9pbWVtMXAiLCAiYWNsa19pbWVtXzIwMCIsCj4gKwkJCUVOQUJMRV9BQ0xLX0lNRU0sIDUsIENM S19JR05PUkVfVU5VU0VELCAwKSwKPiArCUdBVEUoQ0xLX0FDTEtfQVhJMkFQQl9JTUVNMFAsICJh Y2xrX2F4aTJhcGJfaW1lbTBwIiwgImFjbGtfaW1lbV8yMDAiLAo+ICsJCQlFTkFCTEVfQUNMS19J TUVNLCA0LCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCj4gKwlHQVRFKENMS19BQ0xLX1hJVV9TU1NY LCAiYWNsa194aXVfc3NzeCIsICJhY2xrX2ltZW1fc3NzeF8yNjYiLAo+ICsJCQlFTkFCTEVfQUNM S19JTUVNLCAzLCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCj4gKwlHQVRFKENMS19BQ0xLX1hJVV9Q SU1FTVgsICJhY2xrX3hpdV9waW1lbXgiLCAiYWNsa19pbWVtXzIwMCIsCj4gKwkJCUVOQUJMRV9B Q0xLX0lNRU0sIDIsIENMS19JR05PUkVfVU5VU0VELCAwKSwKPiArCUdBVEUoQ0xLX0FDTEtfSU1F TU5EXzI2NiwgImFjbGtfaW1lbW5kXzI2NiIsICJhY2xrX2ltZW1fMjY2IiwKPiArCQkJRU5BQkxF X0FDTEtfSU1FTSwgMSwgQ0xLX0lHTk9SRV9VTlVTRUQsIDApLAo+ICsJR0FURShDTEtfQUNMS19H SUMsICJhY2xrX2dpYyIsICJhY2xrX2ltZW1fMjAwIiwKPiArCQkJRU5BQkxFX0FDTEtfSU1FTSwg MCwgQ0xLX0lHTk9SRV9VTlVTRUQsIDApLAo+ICsKPiArCS8qIEVOQUJMRV9BQ0xLX0lNRU1fSU5U X01FTSAqLwo+ICsJR0FURShDTEtfQUNMS19JTlRfTUVNLCAiYWNsa19pbnRfbWVtIiwgImFjbGtf aW1lbV8yMDAiLAo+ICsJCQlFTkFCTEVfQUNMS19JTUVNX0lOVF9NRU0sIDAsIENMS19JR05PUkVf VU5VU0VELCAwKSwKCk5pdHBpY2suIE5lZWQgdG8gYWRkIGJsYW5rIGxpbmUgYmV0d2VlbiBkaWZm ZXJlbnQgcmVnaXN0ZXJzIGluIG9yZGVyIHRvIGtlZXAKdGhlIHNhbWUgZm9ybWF0IG9uIHRoaXMg ZHJpdmVyLgoKPiArCS8qIEVOQUJMRV9BQ0xLX0lNRU1fU1NTICovCj4gKwlHQVRFKENMS19BQ0xL X1NTUywgImFjbGtfc3NzIiwgImFjbGtfaW1lbV9zc3N4XzI2NiIsCj4gKwkJCUVOQUJMRV9BQ0xL X0lNRU1fU1NTLCAwLCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCgpkaXR0by4KCj4gKwkvKiBFTkFC TEVfQUNMS19JTUVNX1NMSU1TU1MgKi8KPiArCUdBVEUoQ0xLX0FDTEtfU0xJTVNTUywgImFjbGtf c2xpbXNzcyIsICJhY2xrX2ltZW1fc3NzeF8yNjYiLAo+ICsJCQlFTkFCTEVfQUNMS19JTUVNX1NM SU1TU1MsIDAsIENMS19JR05PUkVfVU5VU0VELCAwKSwKCmRpdHRvLgoKPiArCS8qIEVOQUJMRV9B Q0xLX0lNRU1fUlRJQyAqLwo+ICsJR0FURShDTEtfQUNMS19SVElDLCAiYWNsa19ydGljIiwgImFj bGtfaW1lbV9zc3N4XzI2NiIsCj4gKwkJCUVOQUJMRV9BQ0xLX0lNRU1fUlRJQywgMCwgQ0xLX0lH Tk9SRV9VTlVTRUQsIDApLAoKZGl0dG8uCgo+ICsJLyogRU5BQkxFX0FDTEtfU01NVV9TU1MgKi8K PiArCUdBVEUoQ0xLX0FDTEtfU01NVV9TU1NfRFJBTSwgImFjbGtfc21tdV9zc3NfZHJhbSIsICJh Y2xrX2ltZW1fc3NzeF8yNjYiLAo+ICsJCUVOQUJMRV9BQ0xLX0lNRU1fU01NVV9TU1MsIDEsIENM S19JR05PUkVfVU5VU0VELCAwKSwKPiArCUdBVEUoQ0xLX0FDTEtfU01NVV9TU1NfQ0NJLCAiYWNs a19zbW11X3Nzc19jY2kiLCAiYWNsa19pbWVtX3Nzc3hfMjY2IiwKPiArCQlFTkFCTEVfQUNMS19J TUVNX1NNTVVfU1NTLCAwLCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCgpkaXR0by4KCj4gKwkvKiBF TkFCTEVfQUNMS19TTU1VX1NMSU1TU1MgKi8KPiArCUdBVEUoQ0xLX0FDTEtfU01NVV9TTElNU1NT LCAiYWNsa19zbW11X3NsaW1zc3MiLCAiYWNsa19pbWVtX3Nzc3hfMjY2IiwKPiArCQlFTkFCTEVf QUNMS19JTUVNX1NNTVVfU0xJTVNTUywgMCwgQ0xLX0lHTk9SRV9VTlVTRUQsIDApLAoKZGl0dG8u Cgo+ICsJLyogRU5BQkxFX0FDTEtfU01NVV9SVElDICovCj4gKwlHQVRFKENMS19BQ0xLX1NNTVVf UlRJQywgImFjbGtfc21tdV9ydGljIiwgImFjbGtfaW1lbV9zc3N4XzI2NiIsCj4gKwkJRU5BQkxF X0FDTEtfSU1FTV9TTU1VX1JUSUMsIDAsIENMS19JR05PUkVfVU5VU0VELCAwKSwKCmRpdHRvLgoK PiArCS8qIEVOQUJMRV9BQ0xLX0lNRU1fQVJCR19UWCAqLwo+ICsJR0FURShDTEtfQUNMS19BUkJH X1RYLCAiYWNsa19hcmJnX3R4IiwgImFjbGtfaW1lbV8yNjYiLAo+ICsJCUVOQUJMRV9BQ0xLX0lN RU1fQVJCR19UWCwgMCwgQ0xLX0lHTk9SRV9VTlVTRUQsIDApLAoKZGl0dG8uCgo+ICsJLyogRU5B QkxFX0FDTEtfSU1FTV9TTU1VX0FSQkdfVFggKi8KPiArCUdBVEUoQ0xLX0FDTEtfU01NVV9BUkJH X1RYLCAiYWNsa19zbW11X2FyYmdfdHgiLCAiYWNsa19pbWVtXzI2NiIsCj4gKwkJRU5BQkxFX0FD TEtfSU1FTV9TTU1VX0FSQkdfVFgsIDAsIENMS19JR05PUkVfVU5VU0VELCAwKSwKPiArCj4gKwkv KiBFTkFCTEVfUENMS19JTUVNICovCj4gKwlHQVRFKENMS19QQ0xLX0dQSU9fSU1FTSwgInBjbGtf Z3Bpb19pbWVtIiwgImFjbGtfaW1lbV8yMDAiLAo+ICsJCQlFTkFCTEVfUENMS19JTUVNLCAxNywg Q0xLX0lHTk9SRV9VTlVTRUQsIDApLAo+ICsJR0FURShDTEtfUENMS19BU1lOQ0FYSV9JTUVNWCwg InBjbGtfYXN5bmNheGlfaW1lbXgiLCAiYWNsa19pbWVtXzIwMCIsCj4gKwkJCUVOQUJMRV9QQ0xL X0lNRU0sIDE2LCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCj4gKwlHQVRFKENMS19QQ0xLX0JUU19B UkJHX1RYLCAicGNsa19idHNfYXJiZ190eCIsICJhY2xrX2ltZW1fMjAwIiwKPiArCQkJRU5BQkxF X1BDTEtfSU1FTSwgMTUsIENMS19JR05PUkVfVU5VU0VELCAwKSwKPiArCUdBVEUoQ0xLX1BDTEtf QVNZTkNBUEJfQVJCR19UWCwgInBjbGtfYXN5bmNhcGJfYXJiZ190eCIsICJhY2xrX2ltZW1fMjAw IiwKPiArCQkJRU5BQkxFX1BDTEtfSU1FTSwgMTQsIENMS19JR05PUkVfVU5VU0VELCAwKSwKPiAr CgpSZW1vdmUgYmxhbmsgbGluZS4KCj4gKwlHQVRFKENMS19QQ0xLX0JUU19TTElNU1NTLCAicGNs a19idHNfc2xpbXNzcyIsICJhY2xrX2ltZW1fMjAwIiwKPiArCQkJRU5BQkxFX1BDTEtfSU1FTSwg OCwgQ0xLX0lHTk9SRV9VTlVTRUQsIDApLAo+ICsJR0FURShDTEtfUENMS19CVFNfU1NTX0RSQU0s ICJwY2xrX2J0c19zc3NfZHJhbSIsICJhY2xrX2ltZW1fMjAwIiwKPiArCQkJRU5BQkxFX1BDTEtf SU1FTSwgNywgQ0xLX0lHTk9SRV9VTlVTRUQsIDApLAo+ICsJR0FURShDTEtfUENMS19CVFNfU1NT X0NDSSwgInBjbGtfYnRzX3Nzc19jY2kiLCAiYWNsa19pbWVtXzIwMCIsCj4gKwkJCUVOQUJMRV9Q Q0xLX0lNRU0sIDYsIENMS19JR05PUkVfVU5VU0VELCAwKSwKPiArCUdBVEUoQ0xLX1BDTEtfQUxC X0lNRU0sICJwY2xrX2FsYl9pbWVtIiwgImFjbGtfaW1lbV8yMDAiLAo+ICsJCQlFTkFCTEVfUENM S19JTUVNLCA1LCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCj4gKwlHQVRFKENMS19QQ0xLX1BNVV9J TUVNLCAicGNsa19wbXVfaW1lbSIsICJhY2xrX2ltZW1fMjAwIiwKPiArCQkJRU5BQkxFX1BDTEtf SU1FTSwgNCwgQ0xLX0lHTk9SRV9VTlVTRUQsIDApLAo+ICsJR0FURShDTEtfUENMS19TWVNSRUdf SU1FTSwgInBjbGtfc3lzcmVnX2ltZW0iLCAiYWNsa19pbWVtXzIwMCIsCj4gKwkJCUVOQUJMRV9Q Q0xLX0lNRU0sIDMsIENMS19JR05PUkVfVU5VU0VELCAwKSwKCk5lZWQgdG8gYWRkIGJsYW5rIGxp bmUuCgo+ICsJLyogRU5BQkxFX1BDTEtfSU1FTV9TU1MgKi8KPiArCUdBVEUoQ0xLX1BDTEtfU1NT LCAicGNsa19zc3MiLCAiYWNsa19pbWVtXzIwMCIsCj4gKwkJCUVOQUJMRV9QQ0xLX0lNRU1fU1NT LCAwLCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCgpkaXR0by4KCj4gKwkvKiBFTkFCTEVfUENMS19J TUVNX1NMSU1TU1MgKi8KPiArCUdBVEUoQ0xLX1BDTEtfU0xJTVNTUywgInBjbGtfc2xpbXNzcyIs ICJhY2xrX2ltZW1fMjAwIiwKPiArCQkJRU5BQkxFX1BDTEtfSU1FTV9TTElNU1NTLCAwLCBDTEtf SUdOT1JFX1VOVVNFRCwgMCksCgpkaXR0by4KCj4gKwkvKiBFTkFCTEVfUENMS19JTUVNX1JUSUMg Ki8KPiArCUdBVEUoQ0xLX1BDTEtfUlRJQywgInBjbGtfcnRpYyIsICJhY2xrX2ltZW1fMjAwIiwK PiArCQlFTkFCTEVfUENMS19JTUVNX1JUSUMsIDAsIENMS19JR05PUkVfVU5VU0VELCAwKSwKCmRp dHRvLgoKPiArCS8qIEVOQUJMRV9QQ0xLX0lNRU1fU01NVV9TU1MgKi8KPiArCUdBVEUoQ0xLX1BD TEtfU01NVV9TU1NfRFJBTSwgInBjbGtfc21tdV9zc3NfZHJhbSIsICJhY2xrX2ltZW1fMjAwIiwK PiArCQlFTkFCTEVfUENMS19JTUVNX1NNTVVfU1NTLCAxLCBDTEtfSUdOT1JFX1VOVVNFRCwgMCks Cj4gKwlHQVRFKENMS19QQ0xLX1NNTVVfU1NTX0NDSSwgInBjbGtfc21tdV9zc3NfY2NpIiwgImFj bGtfaW1lbV8yMDAiLAo+ICsJCUVOQUJMRV9QQ0xLX0lNRU1fU01NVV9TU1MsIDAsIENMS19JR05P UkVfVU5VU0VELCAwKSwKCmRpdHRvLgoKPiArCS8qIEVOQUJMRV9QQ0xLX0lNRU1fU01NVV9TTElN U1NTICovCj4gKwlHQVRFKENMS19QQ0xLX1NNTVVfU0xJTVNTUywgInBjbGtfc21tdV9zbGltc3Nz IiwgImFjbGtfaW1lbV8yMDAiLAo+ICsJCUVOQUJMRV9QQ0xLX0lNRU1fU01NVV9TTElNU1NTLCAw LCBDTEtfSUdOT1JFX1VOVVNFRCwgMCksCgpkaXR0by4KCj4gKwkvKiBFTkFCTEVfUENMS19JTUVN X1NNTVVfUlRJQyAqLwo+ICsJR0FURShDTEtfUENMS19TTU1VX1JUSUMsICJwY2xrX3NzcyIsICJh Y2xrX2ltZW1fMjAwIiwKPiArCQlFTkFCTEVfUENMS19JTUVNX1NNTVVfUlRJQywgMCwgQ0xLX0lH Tk9SRV9VTlVTRUQsIDApLAoKZGl0dG8uCgo+ICsJLyogRU5BQkxFX1BDTEtfSU1FTV9TTU1VX0FS R0JfVFggKi8KPiArCUdBVEUoQ0xLX1BDTEtfU01NVV9BUkJHX1RYLCAicGNsa19zbW11X2FyYmdf dHgiLCAiYWNsa19pbWVtXzIwMCIsCj4gKwkJRU5BQkxFX1BDTEtfSU1FTV9TTU1VX0FSR0JfVFgs IDAsIENMS19JR05PUkVfVU5VU0VELCAwKSwKPiArfTsKPiArCj4gK3N0YXRpYyBjb25zdCBzdHJ1 Y3Qgc2Ftc3VuZ19jbXVfaW5mbyBpbWVtX2NtdV9pbmZvIF9faW5pdGNvbnN0ID0gewo+ICsJLmdh dGVfY2xrcwkJPSBpbWVtX2dhdGVfY2xrcywKPiArCS5ucl9nYXRlX2Nsa3MJCT0gQVJSQVlfU0la RShpbWVtX2dhdGVfY2xrcyksCj4gKwkubnJfY2xrX2lkcwkJPSBJTUVNX05SX0NMSywKPiArCS5j bGtfcmVncwkJPSBpbWVtX2Nsa19yZWdzLAo+ICsJLm5yX2Nsa19yZWdzCQk9IEFSUkFZX1NJWkUo aW1lbV9jbGtfcmVncyksCj4gK307Cj4gKwo+ICtzdGF0aWMgdm9pZCBfX2luaXQgZXh5bm9zNTQz M19jbXVfaW1lbV9pbml0KHN0cnVjdCBkZXZpY2Vfbm9kZSAqbnApCj4gK3sKPiArCXNhbXN1bmdf Y211X3JlZ2lzdGVyX29uZShucCwgJmltZW1fY211X2luZm8pOwo+ICt9Cj4gKwo+ICtDTEtfT0Zf REVDTEFSRShleHlub3M1NDMzX2NtdV9pbWVtLCAic2Ftc3VuZyxleHlub3M1NDMzLWNtdS1pbWVt IiwKPiArCQlleHlub3M1NDMzX2NtdV9pbWVtX2luaXQpOwo+ICsKCkNMS19PRl9ERUNMQVJFKCkg ZGVjbGFyYXRpb24gYW5kIGFkZGluZyBuZXcgZW50cnkgdG8gZXh5bm9zNTQzM19jbXVfb2ZfbWF0 Y2hbXQpmb3IgaW1lbSBjbG9ja3MgYXJlIHJlZHVuZGFudC4KCkNMS19PRl9ERUNMQVJFKCkgaXMg bm90IG5lZWRlZCBiZWNhdXNlIHlvdSBhZGRlZCB0aGUgJ3NhbXN1bmcsZXh5bm9zNTQzMy1jbXUt aW1lbScKZW50cmllcyB0byBleHlub3M1NDMzX2NtdV9vZl9tYXRjaCB0YWJsZS4gCgo+ICAvKgo+ ICAgKiBSZWdpc3RlciBvZmZzZXQgZGVmaW5pdGlvbnMgZm9yIENNVV9HMkQKPiAgICovCj4gQEAg LTU2NDgsNiArNTgzNCw5IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIGV4eW5v czU0MzNfY211X29mX21hdGNoW10gPSB7Cj4gIAl9LCB7Cj4gIAkJLmNvbXBhdGlibGUgPSAic2Ft c3VuZyxleHlub3M1NDMzLWNtdS1oZXZjIiwKPiAgCQkuZGF0YSA9ICZoZXZjX2NtdV9pbmZvLAo+ ICsJfSwgewo+ICsJCS5jb21wYXRpYmxlID0gInNhbXN1bmcsZXh5bm9zNTQzMy1jbXUtaW1lbSIs Cj4gKwkJLmRhdGEgPSAmaW1lbV9jbXVfaW5mbywKCllvdSBhZGRlZCB0aGUgY29kZXMgYmVmb3Jl IGNtdV9nMmQgb24gZm9sbG93aW5nIGNvZGVzCi0gYXJjaC9hcm02NC9ib290L2R0cy9leHlub3Mv ZXh5bm9zNTQzMy5kdHNpCi0gaW5jbHVkZS9kdC1iaW5kaW5ncy9jbG9jay9leHlub3M1NDMzLmgK LSBkcml2ZXJzL2Nsay9zYW1zdW5nL2Nsay1leHlub3M1NDMzLmMKCkJ1dCwgaW4gdGhlIGV4eW5v czU0MzNfY211X29mX21hdGNoLCB5b3UgYWRkZWQgdGhlIG5ldyBlbnRyeQpiZXR3ZWVuICdjbXUt aGV2YycgYW5kICdjbXUtaXNwJy4gVGhlcmUgaXMgbm8gY29uc2lzdGVudCByZWFzb24uCklmIHRo ZXJlIGlzIG5vIGFueSBzcGVjaWFsIHJlYXNvbiB0byBhZGQgaXQgb24gdGhlIG1pZGRsZSwKeW91 IGJldHRlciB0byBhZGQgaXQgYXQgdGhlIGVuZC4KCgo+ICAJfSwgewo+ICAJCS5jb21wYXRpYmxl ID0gInNhbXN1bmcsZXh5bm9zNTQzMy1jbXUtaXNwIiwKPiAgCQkuZGF0YSA9ICZpc3BfY211X2lu Zm8sCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHQtYmluZGluZ3MvY2xvY2svZXh5bm9zNTQzMy5o IGIvaW5jbHVkZS9kdC1iaW5kaW5ncy9jbG9jay9leHlub3M1NDMzLmgKPiBpbmRleCA4N2JiMmIw MTcxNDMuLjMxMmQ4ODEwYjU2ZCAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2R0LWJpbmRpbmdzL2Ns b2NrL2V4eW5vczU0MzMuaAo+ICsrKyBiL2luY2x1ZGUvZHQtYmluZGluZ3MvY2xvY2svZXh5bm9z NTQzMy5oCj4gQEAgLTYyMyw2ICs2MjMsNjEgQEAKPiAgCj4gICNkZWZpbmUgRlNZU19OUl9DTEsJ CQkxMTYKPiAgCj4gKy8qIENNVV9JTUVNICovCj4gKyNkZWZpbmUgQ0xLX0FDTEtfU1NTCQkJMQo+ ICsjZGVmaW5lIENMS19BQ0xLX1NMSU1TU1MJCTIKPiArI2RlZmluZSBDTEtfQUNMS19SVElDCQkJ Mwo+ICsjZGVmaW5lIENMS19BQ0xLX1hJVV9TU1NYCQk0Cj4gKyNkZWZpbmUgQ0xLX0FDTEtfQVNZ TkNBSEJNX1NTU19BVExBUwk1Cj4gKyNkZWZpbmUgQ0xLX0FDTEtfQVNZTkNBWElfU1NTWAkJNgo+ ICsjZGVmaW5lIENMS19BQ0xLX0JUU19TU1NfQ0NJCQk3Cj4gKyNkZWZpbmUgQ0xLX0FDTEtfQlRT X1NTU19EUkFNCQk4Cj4gKyNkZWZpbmUgQ0xLX0FDTEtfQlRTX1NMSU1TU1MJCTkKPiArI2RlZmlu ZSBDTEtfQUNMS19TTU1VX1NTU19DQ0kJCTEwCj4gKyNkZWZpbmUgQ0xLX0FDTEtfU01NVV9TU1Nf RFJBTQkJMTEKPiArI2RlZmluZSBDTEtfQUNMS19TTU1VX1NMSU1TU1MJCTEyCj4gKyNkZWZpbmUg Q0xLX0FDTEtfU01NVV9SVElDCQkxMwo+ICsjZGVmaW5lIENMS19BQ0xLX0lNRU1ORF8yNjYJCTE0 Cj4gKyNkZWZpbmUgQ0xLX0FDTEtfQUxCX0lNRU0JCTE1Cj4gKyNkZWZpbmUgQ0xLX0FDTEtfWElV X0lNRU1YCQkxNgo+ICsjZGVmaW5lIENMS19BQ0xLX0FYSVVTX0lNRU1YCQkxNwo+ICsjZGVmaW5l IENMS19BQ0xLX0FTWU5DQVhJX0lNRU1YCQkxOAo+ICsjZGVmaW5lIENMS19BQ0xLX0FSQkdfVFgJ CTE5Cj4gKyNkZWZpbmUgQ0xLX0FDTEtfQlRTX0FSQkdfVFgJCTIwCj4gKyNkZWZpbmUgQ0xLX0FD TEtfU01NVV9BUkJHX1RYCQkyMQo+ICsjZGVmaW5lIENMS19BQ0xLX0dJQwkJCTIyCj4gKyNkZWZp bmUgQ0xLX0FDTEtfSU5UX01FTQkJMjMKPiArI2RlZmluZSBDTEtfQUNMS19YSVVfUElNRU1YCQky NAo+ICsjZGVmaW5lIENMS19BQ0xLX0FYSTJBUEJfSU1FTTBQCQkyNQo+ICsjZGVmaW5lIENMS19B Q0xLX0FYSTJBUEJfSU1FTTFQCQkyNgo+ICsjZGVmaW5lIENMS19BQ0xLX0FTWU5DQVhJU19NSUZf UElNRU1YCTI3Cj4gKyNkZWZpbmUgQ0xLX0FDTEtfQVhJRFNfUElNRU1YX0dJQwkyOAo+ICsjZGVm aW5lIENMS19BQ0xLX0FYSURTX1BJTUVNWF9JTUVNMFAJMjkKPiArI2RlZmluZSBDTEtfQUNMS19B WElEU19QSU1FTVhfSU1FTTFQCTMwCj4gKyNkZWZpbmUgQ0xLX0FDTEtfU1JPTUMJCQkzMQo+ICsj ZGVmaW5lIENMS19BQ0xLX0FYSURTX1NST01DCQkzMgo+ICsjZGVmaW5lIENMS19BQ0xLX0FYSTJB SEJfSU1FTUgJCTMzCj4gKyNkZWZpbmUgQ0xLX1BDTEtfU1NTCQkJMzQKPiArI2RlZmluZSBDTEtf UENMS19TTElNU1NTCQkzNQo+ICsjZGVmaW5lIENMS19QQ0xLX1JUSUMJCQkzNgo+ICsjZGVmaW5l IENMS19QQ0xLX1NZU1JFR19JTUVNCQkzNwo+ICsjZGVmaW5lIENMS19QQ0xLX1BNVV9JTUVNCQkz OAo+ICsjZGVmaW5lIENMS19QQ0xLX0FMQl9JTUVNCQkzOQo+ICsjZGVmaW5lIENMS19QQ0xLX0JU U19TU1NfQ0NJCQk0MAo+ICsjZGVmaW5lIENMS19QQ0xLX0JUU19TU1NfRFJBTQkJNDEKPiArI2Rl ZmluZSBDTEtfUENMS19CVFNfU0xJTVNTUwkJNDIKPiArI2RlZmluZSBDTEtfUENMS19TTU1VX1NT U19DQ0kJCTQzCj4gKyNkZWZpbmUgQ0xLX1BDTEtfU01NVV9TU1NfRFJBTQkJNDQKPiArI2RlZmlu ZSBDTEtfUENMS19TTU1VX1NMSU1TU1MJCTQ1Cj4gKyNkZWZpbmUgQ0xLX1BDTEtfU01NVV9SVElD CQk0Ngo+ICsjZGVmaW5lIENMS19QQ0xLX0FTWU5DQVBCX0FSQkdfVFgJNDcKPiArI2RlZmluZSBD TEtfUENMS19CVFNfQVJCR19UWAkJNDgKPiArI2RlZmluZSBDTEtfUENMS19TTU1VX0FSQkdfVFgJ CTQ5Cj4gKyNkZWZpbmUgQ0xLX1BDTEtfQVNZTkNBWElfSU1FTVgJCTUwCj4gKyNkZWZpbmUgQ0xL X1BDTEtfR1BJT19JTUVNCQk1MQo+ICsKPiArI2RlZmluZSBJTUVNX05SX0NMSwkJCTUyCj4gKwo+ ICAvKiBDTVVfRzJEICovCj4gICNkZWZpbmUgQ0xLX01VWF9BQ0xLX0cyRF8yNjZfVVNFUgkxCj4g ICNkZWZpbmUgQ0xLX01VWF9BQ0xLX0cyRF80MDBfVVNFUgkyCj4gCgoKLS0gCkJlc3QgUmVnYXJk cywKQ2hhbndvbyBDaG9pClNhbXN1bmcgRWxlY3Ryb25pY3MKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0 CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFk ZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK