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.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS autolearn=no 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 7E93FC433DB for ; Sun, 3 Jan 2021 14:31:17 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 4A67A2071E for ; Sun, 3 Jan 2021 14:31:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727106AbhACObQ (ORCPT ); Sun, 3 Jan 2021 09:31:16 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35958 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725283AbhACObO (ORCPT ); Sun, 3 Jan 2021 09:31:14 -0500 Received: from mail-ed1-x531.google.com (mail-ed1-x531.google.com [IPv6:2a00:1450:4864:20::531]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1E463C061573; Sun, 3 Jan 2021 06:30:34 -0800 (PST) Received: by mail-ed1-x531.google.com with SMTP id dk8so24614295edb.1; Sun, 03 Jan 2021 06:30:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=ln5/xdl46vtSdR4LXWQxmJUctJoaIW0Vq5QIACIBVo8=; b=kdoa4Sb7Hz5+hZwblIxwT6C6Pq1vgI3o6uktF5AXHZ26IkY3BU1ImfkqxyQ3ENHKzy s1SH3WujeL0fmV+nJU6yXhf1Fh80v9g2dt5YH5rob5yuuB0av0BKDxMmQQbTCglr3doL 2ZW+Q4L3LPjUDEiK8CtrITPdj471iGK8YyZwGSWXNqdIdd/9e8VvXTJOleT5BDhzYPEV 4YipYrqA9MtVSS2XE9z2m8rcEO7yZsETlFrAbor5L6xb4U8UBCJLLTzN0LVOkxo+Jt92 F8hZ8P+AqcQwlTjzerBzqzkj0Q0CbfYEswo6notB5Zp1CspCQlCgxyZSFrkxucLBl+iO kgqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=ln5/xdl46vtSdR4LXWQxmJUctJoaIW0Vq5QIACIBVo8=; b=k0tiso8YXAugwPvhb5Aw3kuY+JdscegxiVT0YERBnF85gp7EKvslWdYHtbN7K1ZOal wBOKMd+6txWYihMxgeR8NR/0AWGSY6jbGu9DIs638WGARbwVByoQQseTCoa9WM/d4pQL HlmFYecqNHsBkyLcNxBS8D8Wzr3FtGOOVIWYqDiytlHOd5VO0n2OdIOH/p3LloDRu6tX Cwuh+7VV+MtpWZV/GjuYie+ev3cuyt7ZzixrzEFjF2gu514iTtXURr9IKswImLwZdnOw NhRflI56EcB95+4CgLKyxIhaP0PU8r+Hd81T98h6TI/GuVMfdAqyW1BAnecnmHeqwcKX CFAA== X-Gm-Message-State: AOAM531YfJQaEajeW0ELZbqEoMuwHZvYGoGMf/z9NO86yd+h5W6mmImo NwUMuHTHVYekxx7u9vZw5mzEygLw6S1QJSm+8Ek= X-Google-Smtp-Source: ABdhPJw6jFAYPdCFrr5nWTUKmXg/nfcOHtKrxXEa8lvDyRpKOkMbA+XxS4VTXL+asLwPwirAOww3tpZFDrLzQcZn+UQ= X-Received: by 2002:aa7:c3c2:: with SMTP id l2mr65799064edr.15.1609684231486; Sun, 03 Jan 2021 06:30:31 -0800 (PST) MIME-Version: 1.0 References: <20210101165507.19486-1-tiny.windzz@gmail.com> <819f4eaf-18e4-678d-84dd-e4ac9d88c414@gmail.com> In-Reply-To: <819f4eaf-18e4-678d-84dd-e4ac9d88c414@gmail.com> From: Frank Lee Date: Sun, 3 Jan 2021 22:30:08 +0800 Message-ID: Subject: Re: [PATCH 00/31] Introduce devm_pm_opp_* API To: Dmitry Osipenko Cc: MyungJoo Ham , Kyungmin Park , Chanwoo Choi , Krzysztof Kozlowski , shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, dl-linux-imx , Thierry Reding , Jonathan Hunter , yuq825@gmail.com, airlied@linux.ie, Daniel Vetter , Rob Clark , Sean Paul , Rob Herring , tomeu.vizoso@collabora.com, steven.price@arm.com, alyssa.rosenzweig@collabora.com, Stanimir Varbanov , agross@kernel.org, bjorn.andersson@linaro.org, Mauro Carvalho Chehab , lukasz.luba@arm.com, Adrian Hunter , Ulf Hansson , Viresh Kumar , Nishanth Menon , Stephen Boyd , Mark Brown , Greg Kroah-Hartman , jirislaby@kernel.org, "Rafael J. Wysocki" , jcrouse@codeaurora.org, hoegsberg@google.com, eric@anholt.net, tzimmermann@suse.de, marijn.suijten@somainline.org, gustavoars@kernel.org, emil.velikov@collabora.com, Jonathan Marek , akhilpo@codeaurora.org, smasetty@codeaurora.org, airlied@redhat.com, masneyb@onstation.org, kalyan_t@codeaurora.org, tanmay@codeaurora.org, ddavenport@chromium.org, jsanka@codeaurora.org, rnayak@codeaurora.org, tongtiangen@huawei.com, miaoqinglang@huawei.com, khsieh@codeaurora.org, abhinavk@codeaurora.org, chandanu@codeaurora.org, groeck@chromium.org, varar@codeaurora.org, mka@chromium.org, harigovi@codeaurora.org, rikard.falkeborn@gmail.com, Nathan Chancellor , georgi.djakov@linaro.org, akashast@codeaurora.org, parashar@codeaurora.org, Douglas Anderson , Linux PM , Linux Kernel Mailing List , linux-samsung-soc , Linux ARM , linux-tegra@vger.kernel.org, dri-devel , lima@lists.freedesktop.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, linux-media@vger.kernel.org, "open list:SECURE DIGITAL HO..." , linux-spi@vger.kernel.org, linux-serial@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-tegra@vger.kernel.org HI, On Sun, Jan 3, 2021 at 8:52 PM Dmitry Osipenko wrote: > > 01.01.2021 19:54, Yangtao Li =D0=BF=D0=B8=D1=88=D0=B5=D1=82: > > Hi, > > > > This patchset add devm_pm_opp_set_clkname, devm_pm_opp_put_clkname, > > devm_pm_opp_set_regulators, devm_pm_opp_put_regulators, > > devm_pm_opp_set_supported_hw, devm_pm_opp_of_add_table and > > devm_pm_opp_register_notifier. > > > > Yangtao Li (31): > > opp: Add devres wrapper for dev_pm_opp_set_clkname and > > dev_pm_opp_put_clkname > > opp: Add devres wrapper for dev_pm_opp_set_regulators and > > dev_pm_opp_put_regulators > > opp: Add devres wrapper for dev_pm_opp_set_supported_hw > > opp: Add devres wrapper for dev_pm_opp_of_add_table > > opp: Add devres wrapper for dev_pm_opp_register_notifier > > serial: qcom_geni_serial: fix potential mem leak in > > qcom_geni_serial_probe() > > serial: qcom_geni_serial: convert to use devm_pm_opp_* API > > spi: spi-qcom-qspi: fix potential mem leak in spi_geni_probe() > > spi: spi-qcom-qspi: fix potential mem leak in spi_geni_probe() > > qcom-geni-se: remove opp_table > > mmc: sdhci-msm: fix potential mem leak in sdhci_msm_probe() > > mmc: sdhci-msm: convert to use devm_pm_opp_* API > > spi: spi-qcom-qspi: fix potential mem leak in qcom_qspi_probe() > > spi: spi-qcom-qspi: convert to use devm_pm_opp_* API > > drm/msm: fix potential mem leak > > drm/msm: convert to use devm_pm_opp_* API and remove dp_ctrl_put > > drm/lima: convert to use devm_pm_opp_* API > > drm/lima: remove unneeded devm_devfreq_remove_device() > > drm/panfrost: convert to use devm_pm_opp_* API > > media: venus: fix error check in core_get_v4() > > media: venus: convert to use devm_pm_opp_* API > > memory: samsung: exynos5422-dmc: fix return error in > > exynos5_init_freq_table > > memory: samsung: exynos5422-dmc: convert to use devm_pm_opp_* API > > memory: tegra20: convert to use devm_pm_opp_* API > > memory: tegra30: convert to use devm_pm_opp_* API > > PM / devfreq: tegra30: convert to use devm_pm_opp_* API > > PM / devfreq: rk3399_dmc: convert to use devm_pm_opp_* API > > PM / devfreq: imx8m-ddrc: convert to use devm_pm_opp_* API > > PM / devfreq: imx-bus: convert to use devm_pm_opp_* API > > PM / devfreq: exynos: convert to use devm_pm_opp_* API > > PM / devfreq: convert to devm_pm_opp_register_notifier and remove > > unused API > > > > drivers/devfreq/devfreq.c | 66 +------ > > drivers/devfreq/exynos-bus.c | 42 +---- > > drivers/devfreq/imx-bus.c | 14 +- > > drivers/devfreq/imx8m-ddrc.c | 15 +- > > drivers/devfreq/rk3399_dmc.c | 22 +-- > > drivers/devfreq/tegra30-devfreq.c | 21 +-- > > drivers/gpu/drm/lima/lima_devfreq.c | 45 +---- > > drivers/gpu/drm/lima/lima_devfreq.h | 2 - > > drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 2 +- > > drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 2 +- > > drivers/gpu/drm/msm/adreno/adreno_gpu.c | 2 +- > > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 31 ++-- > > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h | 2 - > > drivers/gpu/drm/msm/dp/dp_ctrl.c | 29 +-- > > drivers/gpu/drm/msm/dp/dp_ctrl.h | 1 - > > drivers/gpu/drm/msm/dp/dp_display.c | 5 +- > > drivers/gpu/drm/msm/dsi/dsi_host.c | 23 ++- > > drivers/gpu/drm/panfrost/panfrost_devfreq.c | 34 +--- > > drivers/gpu/drm/panfrost/panfrost_devfreq.h | 1 - > > .../media/platform/qcom/venus/pm_helpers.c | 22 +-- > > drivers/memory/samsung/exynos5422-dmc.c | 13 +- > > drivers/memory/tegra/tegra20-emc.c | 29 +-- > > drivers/memory/tegra/tegra30-emc.c | 29 +-- > > drivers/mmc/host/sdhci-msm.c | 27 ++- > > drivers/opp/core.c | 173 ++++++++++++++++++ > > drivers/opp/of.c | 36 ++++ > > drivers/spi/spi-geni-qcom.c | 23 ++- > > drivers/spi/spi-qcom-qspi.c | 25 ++- > > drivers/tty/serial/qcom_geni_serial.c | 31 ++-- > > include/linux/devfreq.h | 23 --- > > include/linux/pm_opp.h | 38 ++++ > > include/linux/qcom-geni-se.h | 2 - > > 32 files changed, 402 insertions(+), 428 deletions(-) > > > > Hello, > > Could you please add helper for dev_pm_opp_attach_genpd() and make > cpufreq drivers to use the helpers? Thank you for reminding me. But we shouldn't use this for CPU devices as the CPU device doesn't get bound to a driver, it is rather a fake platfo= rm device which gets the cpufreq drivers probed. > > I'd also like to see a devm helper for > dev_pm_opp_register_set_opp_helper(), which should become useful for > Tegra drivers sometime soon. For non-cpu devices? BR / Yangtao 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=-5.5 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED autolearn=no 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 8D07BC433E0 for ; Mon, 4 Jan 2021 08:39:25 +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 4540F207BC for ; Mon, 4 Jan 2021 08:39:25 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4540F207BC Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 925B889B48; Mon, 4 Jan 2021 08:39:02 +0000 (UTC) Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) by gabe.freedesktop.org (Postfix) with ESMTPS id C9544893A2; Sun, 3 Jan 2021 14:30:32 +0000 (UTC) Received: by mail-ed1-x52e.google.com with SMTP id cw27so24573927edb.5; Sun, 03 Jan 2021 06:30:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=ln5/xdl46vtSdR4LXWQxmJUctJoaIW0Vq5QIACIBVo8=; b=kdoa4Sb7Hz5+hZwblIxwT6C6Pq1vgI3o6uktF5AXHZ26IkY3BU1ImfkqxyQ3ENHKzy s1SH3WujeL0fmV+nJU6yXhf1Fh80v9g2dt5YH5rob5yuuB0av0BKDxMmQQbTCglr3doL 2ZW+Q4L3LPjUDEiK8CtrITPdj471iGK8YyZwGSWXNqdIdd/9e8VvXTJOleT5BDhzYPEV 4YipYrqA9MtVSS2XE9z2m8rcEO7yZsETlFrAbor5L6xb4U8UBCJLLTzN0LVOkxo+Jt92 F8hZ8P+AqcQwlTjzerBzqzkj0Q0CbfYEswo6notB5Zp1CspCQlCgxyZSFrkxucLBl+iO kgqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=ln5/xdl46vtSdR4LXWQxmJUctJoaIW0Vq5QIACIBVo8=; b=guT4PwGB75PgXcyLAZCGJDjzsmAJe4I6fkDWCu1Q3aJOgPKLRFJ69AEAZnhdnq/Jki un8YmXtiA6csIxQ7WkfSrHl+uDuTziCIYqV2T0aX2qkSb0ulyxratlKxua/QptWcVhGo eT8CzQlaYKN3ZdbnirvJxlxCF0PByM0P6H7/WizYAykZzh+K157kyl6JZKunOCbecZPN DFm80czNATTz6a6Gb9bC3hHc9jUj6LoNQmbwc/AWXPjXb59smQNuNQALHKgDbXtmSX/0 nMKl+s4UppnBnI54ZISNSrhCHqpbag7XOmxdWwdvP12Jnno3j/dLesaC+1BEFEYPOlDL Qe4g== X-Gm-Message-State: AOAM5303ArPWFL9F7vqOjvtUlT2rIHILfLKtyrkimO2VgVfuqJv/PzrF atE/p28T6rCpmTfJavzE4Awo3JeewJw3cvJLS58= X-Google-Smtp-Source: ABdhPJw6jFAYPdCFrr5nWTUKmXg/nfcOHtKrxXEa8lvDyRpKOkMbA+XxS4VTXL+asLwPwirAOww3tpZFDrLzQcZn+UQ= X-Received: by 2002:aa7:c3c2:: with SMTP id l2mr65799064edr.15.1609684231486; Sun, 03 Jan 2021 06:30:31 -0800 (PST) MIME-Version: 1.0 References: <20210101165507.19486-1-tiny.windzz@gmail.com> <819f4eaf-18e4-678d-84dd-e4ac9d88c414@gmail.com> In-Reply-To: <819f4eaf-18e4-678d-84dd-e4ac9d88c414@gmail.com> From: Frank Lee Date: Sun, 3 Jan 2021 22:30:08 +0800 Message-ID: Subject: Re: [PATCH 00/31] Introduce devm_pm_opp_* API To: Dmitry Osipenko X-Mailman-Approved-At: Mon, 04 Jan 2021 08:39:01 +0000 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: , Cc: Nishanth Menon , Ulf Hansson , gustavoars@kernel.org, jirislaby@kernel.org, airlied@linux.ie, "open list:SECURE DIGITAL HO..." , Stanimir Varbanov , tanmay@codeaurora.org, bjorn.andersson@linaro.org, Nathan Chancellor , Thierry Reding , tongtiangen@huawei.com, groeck@chromium.org, marijn.suijten@somainline.org, steven.price@arm.com, mka@chromium.org, chandanu@codeaurora.org, emil.velikov@collabora.com, linux-samsung-soc , Jonathan Marek , harigovi@codeaurora.org, Adrian Hunter , Viresh Kumar , Linux PM , Kyungmin Park , Krzysztof Kozlowski , Jonathan Hunter , Chanwoo Choi , MyungJoo Ham , alyssa.rosenzweig@collabora.com, linux-serial@vger.kernel.org, airlied@redhat.com, smasetty@codeaurora.org, dl-linux-imx , freedreno@lists.freedesktop.org, kernel@pengutronix.de, tzimmermann@suse.de, linux-arm-msm@vger.kernel.org, s.hauer@pengutronix.de, linux-spi@vger.kernel.org, linux-media@vger.kernel.org, abhinavk@codeaurora.org, akhilpo@codeaurora.org, khsieh@codeaurora.org, lima@lists.freedesktop.org, Mark Brown , rikard.falkeborn@gmail.com, kalyan_t@codeaurora.org, linux-tegra@vger.kernel.org, varar@codeaurora.org, Mauro Carvalho Chehab , Sean Paul , Linux ARM , Douglas Anderson , akashast@codeaurora.org, rnayak@codeaurora.org, parashar@codeaurora.org, tomeu.vizoso@collabora.com, Stephen Boyd , Greg Kroah-Hartman , dri-devel , "Rafael J. Wysocki" , agross@kernel.org, Linux Kernel Mailing List , miaoqinglang@huawei.com, hoegsberg@google.com, yuq825@gmail.com, ddavenport@chromium.org, masneyb@onstation.org, shawnguo@kernel.org, georgi.djakov@linaro.org, lukasz.luba@arm.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" SEksCgpPbiBTdW4sIEphbiAzLCAyMDIxIGF0IDg6NTIgUE0gRG1pdHJ5IE9zaXBlbmtvIDxkaWdl dHhAZ21haWwuY29tPiB3cm90ZToKPgo+IDAxLjAxLjIwMjEgMTk6NTQsIFlhbmd0YW8gTGkg0L/Q uNGI0LXRgjoKPiA+IEhpLAo+ID4KPiA+IFRoaXMgcGF0Y2hzZXQgYWRkIGRldm1fcG1fb3BwX3Nl dF9jbGtuYW1lLCBkZXZtX3BtX29wcF9wdXRfY2xrbmFtZSwKPiA+IGRldm1fcG1fb3BwX3NldF9y ZWd1bGF0b3JzLCBkZXZtX3BtX29wcF9wdXRfcmVndWxhdG9ycywKPiA+IGRldm1fcG1fb3BwX3Nl dF9zdXBwb3J0ZWRfaHcsIGRldm1fcG1fb3BwX29mX2FkZF90YWJsZSBhbmQKPiA+IGRldm1fcG1f b3BwX3JlZ2lzdGVyX25vdGlmaWVyLgo+ID4KPiA+IFlhbmd0YW8gTGkgKDMxKToKPiA+ICAgb3Bw OiBBZGQgZGV2cmVzIHdyYXBwZXIgZm9yIGRldl9wbV9vcHBfc2V0X2Nsa25hbWUgYW5kCj4gPiAg ICAgZGV2X3BtX29wcF9wdXRfY2xrbmFtZQo+ID4gICBvcHA6IEFkZCBkZXZyZXMgd3JhcHBlciBm b3IgZGV2X3BtX29wcF9zZXRfcmVndWxhdG9ycyBhbmQKPiA+ICAgICBkZXZfcG1fb3BwX3B1dF9y ZWd1bGF0b3JzCj4gPiAgIG9wcDogQWRkIGRldnJlcyB3cmFwcGVyIGZvciBkZXZfcG1fb3BwX3Nl dF9zdXBwb3J0ZWRfaHcKPiA+ICAgb3BwOiBBZGQgZGV2cmVzIHdyYXBwZXIgZm9yIGRldl9wbV9v cHBfb2ZfYWRkX3RhYmxlCj4gPiAgIG9wcDogQWRkIGRldnJlcyB3cmFwcGVyIGZvciBkZXZfcG1f b3BwX3JlZ2lzdGVyX25vdGlmaWVyCj4gPiAgIHNlcmlhbDogcWNvbV9nZW5pX3NlcmlhbDogZml4 IHBvdGVudGlhbCBtZW0gbGVhayBpbgo+ID4gICAgIHFjb21fZ2VuaV9zZXJpYWxfcHJvYmUoKQo+ ID4gICBzZXJpYWw6IHFjb21fZ2VuaV9zZXJpYWw6IGNvbnZlcnQgdG8gdXNlIGRldm1fcG1fb3Bw XyogQVBJCj4gPiAgIHNwaTogc3BpLXFjb20tcXNwaTogZml4IHBvdGVudGlhbCBtZW0gbGVhayBp biBzcGlfZ2VuaV9wcm9iZSgpCj4gPiAgIHNwaTogc3BpLXFjb20tcXNwaTogZml4IHBvdGVudGlh bCBtZW0gbGVhayBpbiBzcGlfZ2VuaV9wcm9iZSgpCj4gPiAgIHFjb20tZ2VuaS1zZTogcmVtb3Zl IG9wcF90YWJsZQo+ID4gICBtbWM6IHNkaGNpLW1zbTogZml4IHBvdGVudGlhbCBtZW0gbGVhayBp biBzZGhjaV9tc21fcHJvYmUoKQo+ID4gICBtbWM6IHNkaGNpLW1zbTogY29udmVydCB0byB1c2Ug ZGV2bV9wbV9vcHBfKiBBUEkKPiA+ICAgc3BpOiBzcGktcWNvbS1xc3BpOiBmaXggcG90ZW50aWFs IG1lbSBsZWFrIGluIHFjb21fcXNwaV9wcm9iZSgpCj4gPiAgIHNwaTogc3BpLXFjb20tcXNwaTog Y29udmVydCB0byB1c2UgZGV2bV9wbV9vcHBfKiBBUEkKPiA+ICAgZHJtL21zbTogZml4IHBvdGVu dGlhbCBtZW0gbGVhawo+ID4gICBkcm0vbXNtOiBjb252ZXJ0IHRvIHVzZSBkZXZtX3BtX29wcF8q IEFQSSBhbmQgcmVtb3ZlIGRwX2N0cmxfcHV0Cj4gPiAgIGRybS9saW1hOiBjb252ZXJ0IHRvIHVz ZSBkZXZtX3BtX29wcF8qIEFQSQo+ID4gICBkcm0vbGltYTogcmVtb3ZlIHVubmVlZGVkIGRldm1f ZGV2ZnJlcV9yZW1vdmVfZGV2aWNlKCkKPiA+ICAgZHJtL3BhbmZyb3N0OiBjb252ZXJ0IHRvIHVz ZSBkZXZtX3BtX29wcF8qIEFQSQo+ID4gICBtZWRpYTogdmVudXM6IGZpeCBlcnJvciBjaGVjayBp biBjb3JlX2dldF92NCgpCj4gPiAgIG1lZGlhOiB2ZW51czogY29udmVydCB0byB1c2UgZGV2bV9w bV9vcHBfKiBBUEkKPiA+ICAgbWVtb3J5OiBzYW1zdW5nOiBleHlub3M1NDIyLWRtYzogZml4IHJl dHVybiBlcnJvciBpbgo+ID4gICAgIGV4eW5vczVfaW5pdF9mcmVxX3RhYmxlCj4gPiAgIG1lbW9y eTogc2Ftc3VuZzogZXh5bm9zNTQyMi1kbWM6IGNvbnZlcnQgdG8gdXNlIGRldm1fcG1fb3BwXyog QVBJCj4gPiAgIG1lbW9yeTogdGVncmEyMDogY29udmVydCB0byB1c2UgZGV2bV9wbV9vcHBfKiBB UEkKPiA+ICAgbWVtb3J5OiB0ZWdyYTMwOiBjb252ZXJ0IHRvIHVzZSBkZXZtX3BtX29wcF8qIEFQ SQo+ID4gICBQTSAvIGRldmZyZXE6IHRlZ3JhMzA6IGNvbnZlcnQgdG8gdXNlIGRldm1fcG1fb3Bw XyogQVBJCj4gPiAgIFBNIC8gZGV2ZnJlcTogcmszMzk5X2RtYzogY29udmVydCB0byB1c2UgZGV2 bV9wbV9vcHBfKiBBUEkKPiA+ICAgUE0gLyBkZXZmcmVxOiBpbXg4bS1kZHJjOiBjb252ZXJ0IHRv IHVzZSBkZXZtX3BtX29wcF8qIEFQSQo+ID4gICBQTSAvIGRldmZyZXE6IGlteC1idXM6IGNvbnZl cnQgdG8gdXNlIGRldm1fcG1fb3BwXyogQVBJCj4gPiAgIFBNIC8gZGV2ZnJlcTogZXh5bm9zOiBj b252ZXJ0IHRvIHVzZSBkZXZtX3BtX29wcF8qIEFQSQo+ID4gICBQTSAvIGRldmZyZXE6IGNvbnZl cnQgdG8gZGV2bV9wbV9vcHBfcmVnaXN0ZXJfbm90aWZpZXIgYW5kIHJlbW92ZQo+ID4gICAgIHVu dXNlZCBBUEkKPiA+Cj4gPiAgZHJpdmVycy9kZXZmcmVxL2RldmZyZXEuYyAgICAgICAgICAgICAg ICAgICAgIHwgIDY2ICstLS0tLS0KPiA+ICBkcml2ZXJzL2RldmZyZXEvZXh5bm9zLWJ1cy5jICAg ICAgICAgICAgICAgICAgfCAgNDIgKy0tLS0KPiA+ICBkcml2ZXJzL2RldmZyZXEvaW14LWJ1cy5j ICAgICAgICAgICAgICAgICAgICAgfCAgMTQgKy0KPiA+ICBkcml2ZXJzL2RldmZyZXEvaW14OG0t ZGRyYy5jICAgICAgICAgICAgICAgICAgfCAgMTUgKy0KPiA+ICBkcml2ZXJzL2RldmZyZXEvcmsz Mzk5X2RtYy5jICAgICAgICAgICAgICAgICAgfCAgMjIgKy0tCj4gPiAgZHJpdmVycy9kZXZmcmVx L3RlZ3JhMzAtZGV2ZnJlcS5jICAgICAgICAgICAgIHwgIDIxICstLQo+ID4gIGRyaXZlcnMvZ3B1 L2RybS9saW1hL2xpbWFfZGV2ZnJlcS5jICAgICAgICAgICB8ICA0NSArLS0tLQo+ID4gIGRyaXZl cnMvZ3B1L2RybS9saW1hL2xpbWFfZGV2ZnJlcS5oICAgICAgICAgICB8ICAgMiAtCj4gPiAgZHJp dmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4eF9ncHUuYyAgICAgICAgIHwgICAyICstCj4gPiAg ZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTZ4eF9nbXUuYyAgICAgICAgIHwgICAyICstCj4g PiAgZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jICAgICAgIHwgICAyICst Cj4gPiAgZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2ttcy5jICAgICAgIHwgIDMx ICsrLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmggICAgICAg fCAgIDIgLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9tc20vZHAvZHBfY3RybC5jICAgICAgICAgICAg ICB8ICAyOSArLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vbXNtL2RwL2RwX2N0cmwuaCAgICAgICAg ICAgICAgfCAgIDEgLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9tc20vZHAvZHBfZGlzcGxheS5jICAg ICAgICAgICB8ICAgNSArLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9tc20vZHNpL2RzaV9ob3N0LmMg ICAgICAgICAgICB8ICAyMyArKy0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJv c3RfZGV2ZnJlcS5jICAgfCAgMzQgKy0tLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9wYW5mcm9zdC9w YW5mcm9zdF9kZXZmcmVxLmggICB8ICAgMSAtCj4gPiAgLi4uL21lZGlhL3BsYXRmb3JtL3Fjb20v dmVudXMvcG1faGVscGVycy5jICAgIHwgIDIyICstLQo+ID4gIGRyaXZlcnMvbWVtb3J5L3NhbXN1 bmcvZXh5bm9zNTQyMi1kbWMuYyAgICAgICB8ICAxMyArLQo+ID4gIGRyaXZlcnMvbWVtb3J5L3Rl Z3JhL3RlZ3JhMjAtZW1jLmMgICAgICAgICAgICB8ICAyOSArLS0KPiA+ICBkcml2ZXJzL21lbW9y eS90ZWdyYS90ZWdyYTMwLWVtYy5jICAgICAgICAgICAgfCAgMjkgKy0tCj4gPiAgZHJpdmVycy9t bWMvaG9zdC9zZGhjaS1tc20uYyAgICAgICAgICAgICAgICAgIHwgIDI3ICsrLQo+ID4gIGRyaXZl cnMvb3BwL2NvcmUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE3MyArKysrKysrKysr KysrKysrKysKPiA+ICBkcml2ZXJzL29wcC9vZi5jICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgMzYgKysrKwo+ID4gIGRyaXZlcnMvc3BpL3NwaS1nZW5pLXFjb20uYyAgICAgICAgICAg ICAgICAgICB8ICAyMyArKy0KPiA+ICBkcml2ZXJzL3NwaS9zcGktcWNvbS1xc3BpLmMgICAgICAg ICAgICAgICAgICAgfCAgMjUgKystCj4gPiAgZHJpdmVycy90dHkvc2VyaWFsL3Fjb21fZ2VuaV9z ZXJpYWwuYyAgICAgICAgIHwgIDMxICsrLS0KPiA+ICBpbmNsdWRlL2xpbnV4L2RldmZyZXEuaCAg ICAgICAgICAgICAgICAgICAgICAgfCAgMjMgLS0tCj4gPiAgaW5jbHVkZS9saW51eC9wbV9vcHAu aCAgICAgICAgICAgICAgICAgICAgICAgIHwgIDM4ICsrKysKPiA+ICBpbmNsdWRlL2xpbnV4L3Fj b20tZ2VuaS1zZS5oICAgICAgICAgICAgICAgICAgfCAgIDIgLQo+ID4gIDMyIGZpbGVzIGNoYW5n ZWQsIDQwMiBpbnNlcnRpb25zKCspLCA0MjggZGVsZXRpb25zKC0pCj4gPgo+Cj4gSGVsbG8sCj4K PiBDb3VsZCB5b3UgcGxlYXNlIGFkZCBoZWxwZXIgZm9yIGRldl9wbV9vcHBfYXR0YWNoX2dlbnBk KCkgYW5kIG1ha2UKPiBjcHVmcmVxIGRyaXZlcnMgdG8gdXNlIHRoZSBoZWxwZXJzPwoKVGhhbmsg eW91IGZvciByZW1pbmRpbmcgbWUuIEJ1dCB3ZSBzaG91bGRuJ3QgdXNlIHRoaXMgZm9yIENQVSBk ZXZpY2VzCmFzIHRoZSBDUFUgZGV2aWNlIGRvZXNuJ3QgZ2V0IGJvdW5kIHRvIGEgZHJpdmVyLCBp dCBpcyByYXRoZXIgYSBmYWtlIHBsYXRmb3JtCmRldmljZSB3aGljaCBnZXRzIHRoZSBjcHVmcmVx IGRyaXZlcnMgcHJvYmVkLgoKPgo+IEknZCBhbHNvIGxpa2UgdG8gc2VlIGEgZGV2bSBoZWxwZXIg Zm9yCj4gZGV2X3BtX29wcF9yZWdpc3Rlcl9zZXRfb3BwX2hlbHBlcigpLCB3aGljaCBzaG91bGQg YmVjb21lIHVzZWZ1bCBmb3IKPiBUZWdyYSBkcml2ZXJzIHNvbWV0aW1lIHNvb24uCgpGb3Igbm9u LWNwdSBkZXZpY2VzPwoKQlIgLyBZYW5ndGFvCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2RyaS1kZXZlbAo=