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.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,URIBL_BLOCKED,USER_AGENT_SANE_2 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 D48C3C00A89 for ; Mon, 2 Nov 2020 07:24:38 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 7047321556 for ; Mon, 2 Nov 2020 07:24:38 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="UKSAAML8"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="OG22lScN" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 7047321556 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Date:To:From: Subject:Message-ID:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=I5Z8q5e544/b4efCVGSI6VNwUoXhhuVHwU8Nhcd88mU=; b=UKSAAML8lguu1Ro40SQ5VKTuy ml+3OpHIHnRxEbuFpgjbDGzrF3hgzW8T4Q9KyczvHE5P39WhOlzBYwY6Jx6HhkCuK/NhW1210k0mD E1M7w2vxg8o6xEmc3mqdGdCGsue77pZNP2aTEtNl9PxGkKPsMJQlb7gOZ/kzCVo7OE67TKPIkUwbv AgUpe1yI4Kir9Cam41Rm3zRirfKyf8PZefDAxTYPFPhSZAnxDKI0J+BfgC/8lrnmoOQMfLG70r1NA QQkqGfibJfcoJlE4mvfWVxA/1/JupYoJx9bsp1l9/+rZY981x2jg7dbp+u731KT0UjkEav/zTJ4Y6 uHa+olBIA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kZUCb-0006Kd-3o; Mon, 02 Nov 2020 07:24:29 +0000 Received: from mailgw01.mediatek.com ([216.200.240.184]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kZUCW-0006Je-L3; Mon, 02 Nov 2020 07:24:25 +0000 X-UUID: ffbcc969b70047f28d1354d14f18eb4a-20201101 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=q4bvGdMGyh2E0MZ8xSG66t4ZOKnXaBEU1VOFr3jNnss=; b=OG22lScNGiPMvdumuMg8CmHY5oKU0aClJMdYIm69ocu3fDe5kUu2aQFJ5fw3xXoQ+LIoMNSF0nivq9Vww4ksOMg4uR9LkKNSq/eWi3eUXWPB4Exjq6/vcDlCzz2BpWTpT/yVhl30YwDmcJEkffoiglnxxfHUcIrpz6HlMtIuDtw=; X-UUID: ffbcc969b70047f28d1354d14f18eb4a-20201101 Received: from mtkcas68.mediatek.inc [(172.29.94.19)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-SHA384 256/256) with ESMTP id 1650832920; Sun, 01 Nov 2020 23:24:19 -0800 Received: from MTKMBS02N1.mediatek.inc (172.21.101.77) by MTKMBS62N2.mediatek.inc (172.29.193.42) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Sun, 1 Nov 2020 23:24:17 -0800 Received: from mtkcas10.mediatek.inc (172.21.101.39) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Mon, 2 Nov 2020 15:24:16 +0800 Received: from [172.21.77.33] (172.21.77.33) by mtkcas10.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Mon, 2 Nov 2020 15:24:16 +0800 Message-ID: <1604301856.804.0.camel@mtkswgap22> Subject: Re: [PATCH v8] Add MediaTek MT6779 devapc driver From: Neal Liu To: Matthias Brugger Date: Mon, 2 Nov 2020 15:24:16 +0800 In-Reply-To: <1602732276.13734.1.camel@mtkswgap22> References: <1602732039-12179-1-git-send-email-neal.liu@mediatek.com> <1602732276.13734.1.camel@mtkswgap22> X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201102_022424_956488_DE4801A1 X-CRM114-Status: GOOD ( 19.62 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Chun-Kuang Hu , wsd_upstream , "devicetree@vger.kernel.org" , lkml , Rob Herring , "linux-mediatek@lists.infradead.org" , Neal Liu , "linux-arm-kernel@lists.infradead.org" Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Gentle ping for these patch series. Thanks ! On Thu, 2020-10-15 at 11:24 +0800, Neal Liu wrote: > add subject > > On Thu, 2020-10-15 at 11:20 +0800, Neal Liu wrote: > > These patch series introduce a MediaTek MT6779 devapc driver. > > > > MediaTek bus fabric provides TrustZone security support and data protection to prevent slaves from being accessed by unexpected masters. > > The security violation is logged and sent to the processor for further analysis or countermeasures. > > > > Any occurrence of security violation would raise an interrupt, and it will be handled by mtk-devapc driver. > > The violation information is printed in order to find the murderer. > > > > changes since v7: > > - fix VIO_MOD_TO_REG_IND calculation wrong problem. > > - revise parameter type of ISR. > > > > changes since v6: > > - remove unnecessary mask/unmask module irq during ISR. > > > > changes since v5: > > - remove redundant write reg operation. > > - use static variable of vio_dbgs instead. > > - add stop_devapc() if driver is removed. > > > > changes since v4: > > - refactor data structure. > > - merge two simple functions into one. > > - refactor register setting to prevent too many function call overhead. > > > > changes since v3: > > - revise violation handling flow to make it more easily to understand > > hardware behavior. > > - add more comments to understand how hardware works. > > > > changes since v2: > > - pass platform info through DT data. > > - remove unnecessary function. > > - remove slave_type because it always equals to 1 in current support SoC. > > - use vio_idx_num instread of list all devices' index. > > - add more comments to describe hardware behavior. > > > > changes since v1: > > - move SoC specific part to DT data. > > - remove unnecessary boundary check. > > - remove unnecessary data type declaration. > > - use read_poll_timeout() instread of for loop polling. > > - revise coding style elegantly. > > > > > > *** BLURB HERE *** > > > > Neal Liu (2): > > dt-bindings: devapc: add bindings for mtk-devapc > > soc: mediatek: add mt6779 devapc driver > > > > .../bindings/soc/mediatek/devapc.yaml | 58 ++++ > > drivers/soc/mediatek/Kconfig | 9 + > > drivers/soc/mediatek/Makefile | 1 + > > drivers/soc/mediatek/mtk-devapc.c | 308 ++++++++++++++++++ > > 4 files changed, 376 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/soc/mediatek/devapc.yaml > > create mode 100644 drivers/soc/mediatek/mtk-devapc.c > > > > _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,URIBL_BLOCKED,USER_AGENT_SANE_2 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 654FCC388F2 for ; Mon, 2 Nov 2020 07:26:05 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 0955C221FF for ; Mon, 2 Nov 2020 07:26:04 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="djKEQpQD"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="OG22lScN" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0955C221FF Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+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=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Date:To:From: Subject:Message-ID:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=TsQswfVSFzM5EAOEKty1xGk/9IQwc8iGwYnE/JEV19I=; b=djKEQpQDufE7r5uAo5ua5EUnK I07Vt0PPiCL5Hyz+IRdzjdYnspd8oB6Kf0kglvWfBWUUDTD1XlBTCJ6wVlxoimGbIDxseh7en20wq wemQnNCRNHPj2JG7/DbNpLyqdXoKQhaD0mVNj1i6J4iBc4Ow+PFei6g5HgbXkIggDlIxmv9bQY45F 4sIHxfgv06c5stkOkWew6kKDrKW8lNnyj7vIRAq/ylVB50jXz+3lV6uvmC11kQRXIK9TQwvIqwoov IlcP5ZgQ6ieP4tukudvR7EHeI4ikwD6YWTQDYfJ3piVdmm6+PwsPrJCBP6Y8yUsY1aDGFRKei29dM 7c1w/Pl2g==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kZUCZ-0006KM-IJ; Mon, 02 Nov 2020 07:24:27 +0000 Received: from mailgw01.mediatek.com ([216.200.240.184]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kZUCW-0006Je-L3; Mon, 02 Nov 2020 07:24:25 +0000 X-UUID: ffbcc969b70047f28d1354d14f18eb4a-20201101 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=q4bvGdMGyh2E0MZ8xSG66t4ZOKnXaBEU1VOFr3jNnss=; b=OG22lScNGiPMvdumuMg8CmHY5oKU0aClJMdYIm69ocu3fDe5kUu2aQFJ5fw3xXoQ+LIoMNSF0nivq9Vww4ksOMg4uR9LkKNSq/eWi3eUXWPB4Exjq6/vcDlCzz2BpWTpT/yVhl30YwDmcJEkffoiglnxxfHUcIrpz6HlMtIuDtw=; X-UUID: ffbcc969b70047f28d1354d14f18eb4a-20201101 Received: from mtkcas68.mediatek.inc [(172.29.94.19)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-SHA384 256/256) with ESMTP id 1650832920; Sun, 01 Nov 2020 23:24:19 -0800 Received: from MTKMBS02N1.mediatek.inc (172.21.101.77) by MTKMBS62N2.mediatek.inc (172.29.193.42) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Sun, 1 Nov 2020 23:24:17 -0800 Received: from mtkcas10.mediatek.inc (172.21.101.39) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Mon, 2 Nov 2020 15:24:16 +0800 Received: from [172.21.77.33] (172.21.77.33) by mtkcas10.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Mon, 2 Nov 2020 15:24:16 +0800 Message-ID: <1604301856.804.0.camel@mtkswgap22> Subject: Re: [PATCH v8] Add MediaTek MT6779 devapc driver From: Neal Liu To: Matthias Brugger Date: Mon, 2 Nov 2020 15:24:16 +0800 In-Reply-To: <1602732276.13734.1.camel@mtkswgap22> References: <1602732039-12179-1-git-send-email-neal.liu@mediatek.com> <1602732276.13734.1.camel@mtkswgap22> X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201102_022424_956488_DE4801A1 X-CRM114-Status: GOOD ( 19.62 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Chun-Kuang Hu , wsd_upstream , "devicetree@vger.kernel.org" , lkml , Rob Herring , "linux-mediatek@lists.infradead.org" , Neal Liu , "linux-arm-kernel@lists.infradead.org" Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Gentle ping for these patch series. Thanks ! On Thu, 2020-10-15 at 11:24 +0800, Neal Liu wrote: > add subject > > On Thu, 2020-10-15 at 11:20 +0800, Neal Liu wrote: > > These patch series introduce a MediaTek MT6779 devapc driver. > > > > MediaTek bus fabric provides TrustZone security support and data protection to prevent slaves from being accessed by unexpected masters. > > The security violation is logged and sent to the processor for further analysis or countermeasures. > > > > Any occurrence of security violation would raise an interrupt, and it will be handled by mtk-devapc driver. > > The violation information is printed in order to find the murderer. > > > > changes since v7: > > - fix VIO_MOD_TO_REG_IND calculation wrong problem. > > - revise parameter type of ISR. > > > > changes since v6: > > - remove unnecessary mask/unmask module irq during ISR. > > > > changes since v5: > > - remove redundant write reg operation. > > - use static variable of vio_dbgs instead. > > - add stop_devapc() if driver is removed. > > > > changes since v4: > > - refactor data structure. > > - merge two simple functions into one. > > - refactor register setting to prevent too many function call overhead. > > > > changes since v3: > > - revise violation handling flow to make it more easily to understand > > hardware behavior. > > - add more comments to understand how hardware works. > > > > changes since v2: > > - pass platform info through DT data. > > - remove unnecessary function. > > - remove slave_type because it always equals to 1 in current support SoC. > > - use vio_idx_num instread of list all devices' index. > > - add more comments to describe hardware behavior. > > > > changes since v1: > > - move SoC specific part to DT data. > > - remove unnecessary boundary check. > > - remove unnecessary data type declaration. > > - use read_poll_timeout() instread of for loop polling. > > - revise coding style elegantly. > > > > > > *** BLURB HERE *** > > > > Neal Liu (2): > > dt-bindings: devapc: add bindings for mtk-devapc > > soc: mediatek: add mt6779 devapc driver > > > > .../bindings/soc/mediatek/devapc.yaml | 58 ++++ > > drivers/soc/mediatek/Kconfig | 9 + > > drivers/soc/mediatek/Makefile | 1 + > > drivers/soc/mediatek/mtk-devapc.c | 308 ++++++++++++++++++ > > 4 files changed, 376 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/soc/mediatek/devapc.yaml > > create mode 100644 drivers/soc/mediatek/mtk-devapc.c > > > > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel 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.3 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,USER_AGENT_SANE_2 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 39D38C4742C for ; Mon, 2 Nov 2020 07:29:29 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E779D221FF for ; Mon, 2 Nov 2020 07:29:28 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="OG22lScN" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728017AbgKBH32 (ORCPT ); Mon, 2 Nov 2020 02:29:28 -0500 Received: from mailgw02.mediatek.com ([210.61.82.184]:54794 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1728064AbgKBH31 (ORCPT ); Mon, 2 Nov 2020 02:29:27 -0500 X-UUID: c4bb20b5ab7a4cc6aed752af9ebb52fa-20201102 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=q4bvGdMGyh2E0MZ8xSG66t4ZOKnXaBEU1VOFr3jNnss=; b=OG22lScNGiPMvdumuMg8CmHY5oKU0aClJMdYIm69ocu3fDe5kUu2aQFJ5fw3xXoQ+LIoMNSF0nivq9Vww4ksOMg4uR9LkKNSq/eWi3eUXWPB4Exjq6/vcDlCzz2BpWTpT/yVhl30YwDmcJEkffoiglnxxfHUcIrpz6HlMtIuDtw=; X-UUID: c4bb20b5ab7a4cc6aed752af9ebb52fa-20201102 Received: from mtkcas08.mediatek.inc [(172.21.101.126)] by mailgw02.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.14 Build 0819 with TLSv1.2 ECDHE-RSA-AES256-SHA384 256/256) with ESMTP id 1338950142; Mon, 02 Nov 2020 15:24:18 +0800 Received: from mtkcas10.mediatek.inc (172.21.101.39) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Mon, 2 Nov 2020 15:24:16 +0800 Received: from [172.21.77.33] (172.21.77.33) by mtkcas10.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Mon, 2 Nov 2020 15:24:16 +0800 Message-ID: <1604301856.804.0.camel@mtkswgap22> Subject: Re: [PATCH v8] Add MediaTek MT6779 devapc driver From: Neal Liu To: Matthias Brugger CC: Neal Liu , Rob Herring , Chun-Kuang Hu , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-mediatek@lists.infradead.org" , lkml , wsd_upstream Date: Mon, 2 Nov 2020 15:24:16 +0800 In-Reply-To: <1602732276.13734.1.camel@mtkswgap22> References: <1602732039-12179-1-git-send-email-neal.liu@mediatek.com> <1602732276.13734.1.camel@mtkswgap22> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N Content-Transfer-Encoding: base64 Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org R2VudGxlIHBpbmcgZm9yIHRoZXNlIHBhdGNoIHNlcmllcy4NClRoYW5rcyAhDQoNCk9uIFRodSwg MjAyMC0xMC0xNSBhdCAxMToyNCArMDgwMCwgTmVhbCBMaXUgd3JvdGU6DQo+IGFkZCBzdWJqZWN0 DQo+IA0KPiBPbiBUaHUsIDIwMjAtMTAtMTUgYXQgMTE6MjAgKzA4MDAsIE5lYWwgTGl1IHdyb3Rl Og0KPiA+IFRoZXNlIHBhdGNoIHNlcmllcyBpbnRyb2R1Y2UgYSBNZWRpYVRlayBNVDY3NzkgZGV2 YXBjIGRyaXZlci4NCj4gPiANCj4gPiBNZWRpYVRlayBidXMgZmFicmljIHByb3ZpZGVzIFRydXN0 Wm9uZSBzZWN1cml0eSBzdXBwb3J0IGFuZCBkYXRhIHByb3RlY3Rpb24gdG8gcHJldmVudCBzbGF2 ZXMgZnJvbSBiZWluZyBhY2Nlc3NlZCBieSB1bmV4cGVjdGVkIG1hc3RlcnMuDQo+ID4gVGhlIHNl Y3VyaXR5IHZpb2xhdGlvbiBpcyBsb2dnZWQgYW5kIHNlbnQgdG8gdGhlIHByb2Nlc3NvciBmb3Ig ZnVydGhlciBhbmFseXNpcyBvciBjb3VudGVybWVhc3VyZXMuDQo+ID4gDQo+ID4gQW55IG9jY3Vy cmVuY2Ugb2Ygc2VjdXJpdHkgdmlvbGF0aW9uIHdvdWxkIHJhaXNlIGFuIGludGVycnVwdCwgYW5k IGl0IHdpbGwgYmUgaGFuZGxlZCBieSBtdGstZGV2YXBjIGRyaXZlci4NCj4gPiBUaGUgdmlvbGF0 aW9uIGluZm9ybWF0aW9uIGlzIHByaW50ZWQgaW4gb3JkZXIgdG8gZmluZCB0aGUgbXVyZGVyZXIu DQo+ID4gDQo+ID4gY2hhbmdlcyBzaW5jZSB2NzoNCj4gPiAtIGZpeCBWSU9fTU9EX1RPX1JFR19J TkQgY2FsY3VsYXRpb24gd3JvbmcgcHJvYmxlbS4NCj4gPiAtIHJldmlzZSBwYXJhbWV0ZXIgdHlw ZSBvZiBJU1IuDQo+ID4gDQo+ID4gY2hhbmdlcyBzaW5jZSB2NjoNCj4gPiAtIHJlbW92ZSB1bm5l Y2Vzc2FyeSBtYXNrL3VubWFzayBtb2R1bGUgaXJxIGR1cmluZyBJU1IuDQo+ID4gDQo+ID4gY2hh bmdlcyBzaW5jZSB2NToNCj4gPiAtIHJlbW92ZSByZWR1bmRhbnQgd3JpdGUgcmVnIG9wZXJhdGlv bi4NCj4gPiAtIHVzZSBzdGF0aWMgdmFyaWFibGUgb2YgdmlvX2RiZ3MgaW5zdGVhZC4NCj4gPiAt IGFkZCBzdG9wX2RldmFwYygpIGlmIGRyaXZlciBpcyByZW1vdmVkLg0KPiA+IA0KPiA+IGNoYW5n ZXMgc2luY2UgdjQ6DQo+ID4gLSByZWZhY3RvciBkYXRhIHN0cnVjdHVyZS4NCj4gPiAtIG1lcmdl IHR3byBzaW1wbGUgZnVuY3Rpb25zIGludG8gb25lLg0KPiA+IC0gcmVmYWN0b3IgcmVnaXN0ZXIg c2V0dGluZyB0byBwcmV2ZW50IHRvbyBtYW55IGZ1bmN0aW9uIGNhbGwgb3ZlcmhlYWQuDQo+ID4g DQo+ID4gY2hhbmdlcyBzaW5jZSB2MzoNCj4gPiAtIHJldmlzZSB2aW9sYXRpb24gaGFuZGxpbmcg ZmxvdyB0byBtYWtlIGl0IG1vcmUgZWFzaWx5IHRvIHVuZGVyc3RhbmQNCj4gPiAgIGhhcmR3YXJl IGJlaGF2aW9yLg0KPiA+IC0gYWRkIG1vcmUgY29tbWVudHMgdG8gdW5kZXJzdGFuZCBob3cgaGFy ZHdhcmUgd29ya3MuDQo+ID4gDQo+ID4gY2hhbmdlcyBzaW5jZSB2MjoNCj4gPiAtIHBhc3MgcGxh dGZvcm0gaW5mbyB0aHJvdWdoIERUIGRhdGEuDQo+ID4gLSByZW1vdmUgdW5uZWNlc3NhcnkgZnVu Y3Rpb24uDQo+ID4gLSByZW1vdmUgc2xhdmVfdHlwZSBiZWNhdXNlIGl0IGFsd2F5cyBlcXVhbHMg dG8gMSBpbiBjdXJyZW50IHN1cHBvcnQgU29DLg0KPiA+IC0gdXNlIHZpb19pZHhfbnVtIGluc3Ry ZWFkIG9mIGxpc3QgYWxsIGRldmljZXMnIGluZGV4Lg0KPiA+IC0gYWRkIG1vcmUgY29tbWVudHMg dG8gZGVzY3JpYmUgaGFyZHdhcmUgYmVoYXZpb3IuDQo+ID4gDQo+ID4gY2hhbmdlcyBzaW5jZSB2 MToNCj4gPiAtIG1vdmUgU29DIHNwZWNpZmljIHBhcnQgdG8gRFQgZGF0YS4NCj4gPiAtIHJlbW92 ZSB1bm5lY2Vzc2FyeSBib3VuZGFyeSBjaGVjay4NCj4gPiAtIHJlbW92ZSB1bm5lY2Vzc2FyeSBk YXRhIHR5cGUgZGVjbGFyYXRpb24uDQo+ID4gLSB1c2UgcmVhZF9wb2xsX3RpbWVvdXQoKSBpbnN0 cmVhZCBvZiBmb3IgbG9vcCBwb2xsaW5nLg0KPiA+IC0gcmV2aXNlIGNvZGluZyBzdHlsZSBlbGVn YW50bHkuDQo+ID4gDQo+ID4gDQo+ID4gKioqIEJMVVJCIEhFUkUgKioqDQo+ID4gDQo+ID4gTmVh bCBMaXUgKDIpOg0KPiA+ICAgZHQtYmluZGluZ3M6IGRldmFwYzogYWRkIGJpbmRpbmdzIGZvciBt dGstZGV2YXBjDQo+ID4gICBzb2M6IG1lZGlhdGVrOiBhZGQgbXQ2Nzc5IGRldmFwYyBkcml2ZXIN Cj4gPiANCj4gPiAgLi4uL2JpbmRpbmdzL3NvYy9tZWRpYXRlay9kZXZhcGMueWFtbCAgICAgICAg IHwgIDU4ICsrKysNCj4gPiAgZHJpdmVycy9zb2MvbWVkaWF0ZWsvS2NvbmZpZyAgICAgICAgICAg ICAgICAgIHwgICA5ICsNCj4gPiAgZHJpdmVycy9zb2MvbWVkaWF0ZWsvTWFrZWZpbGUgICAgICAg ICAgICAgICAgIHwgICAxICsNCj4gPiAgZHJpdmVycy9zb2MvbWVkaWF0ZWsvbXRrLWRldmFwYy5j ICAgICAgICAgICAgIHwgMzA4ICsrKysrKysrKysrKysrKysrKw0KPiA+ICA0IGZpbGVzIGNoYW5n ZWQsIDM3NiBpbnNlcnRpb25zKCspDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBEb2N1bWVudGF0 aW9uL2RldmljZXRyZWUvYmluZGluZ3Mvc29jL21lZGlhdGVrL2RldmFwYy55YW1sDQo+ID4gIGNy ZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3NvYy9tZWRpYXRlay9tdGstZGV2YXBjLmMNCj4gPiAN Cj4gDQo+IA0KDQo=