From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 19DEDD80CA2 for ; Sun, 8 Oct 2023 15:39:35 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=3gAYHvXJvsptvuBQlaJ+/FM4cIPFK6sFKxboozBMRSo=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding:Content-Type; s=20140610; t=1696779574; v=1; b=XO3pLfozN7QllSvU9IYUEbh4hdUwOhQf9QeWpP8S0y8dM6cXIQ4VtBNReOOikUcrX+eA4rL4 zkhkP60q2dlkLwLqDUsHq3SQ/eHfCKxmFOP+B75RsE0sjU5WpPoXm1RJ5mfeNaFfrWg9ZeStCRt b88wWVAGS1foAMR/3oeLKXJo= X-Received: by 127.0.0.2 with SMTP id 9XEiYY7687511xVAacOZZNo1; Sun, 08 Oct 2023 08:39:34 -0700 X-Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.groups.io with SMTP id smtpd.web11.40267.1696779572635562343 for ; Sun, 08 Oct 2023 08:39:32 -0700 X-Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-527-s-uNK0SsOQScedJgruvYBQ-1; Sun, 08 Oct 2023 11:39:27 -0400 X-MC-Unique: s-uNK0SsOQScedJgruvYBQ-1 X-Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.rdu2.redhat.com [10.11.54.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id C5400811E7B; Sun, 8 Oct 2023 15:39:26 +0000 (UTC) X-Received: from lacos-laptop-9.usersys.redhat.com (unknown [10.39.192.50]) by smtp.corp.redhat.com (Postfix) with ESMTP id A8C8649BB9A; Sun, 8 Oct 2023 15:39:25 +0000 (UTC) From: "Laszlo Ersek" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Gerd Hoffmann , Leif Lindholm , Sami Mujawar Subject: [edk2-devel] [PATCH 7/9] ArmVirtPkg: introduce DebugLibFdtPL011Uart RAM instance Date: Sun, 8 Oct 2023 17:39:10 +0200 Message-Id: <20231008153912.175941-8-lersek@redhat.com> In-Reply-To: <20231008153912.175941-1-lersek@redhat.com> References: <20231008153912.175941-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.10 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,lersek@redhat.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: nh8glWJdfhT3mSEzP91fH37Hx7686176AA= Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="US-ASCII"; x-default=true X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=XO3pLfoz; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=redhat.com (policy=none) SW50cm9kdWNlIHRocmVlIG5ldyBEZWJ1Z0xpYiBpbnN0YW5jZXMsIGZvcmtlZCBmcm9tCk1kZVBr Zy9MaWJyYXJ5L0Jhc2VEZWJ1Z0xpYlNlcmlhbFBvcnQuIEFsbCB0aHJlZSBpbnN0YW5jZXMgcmVs eSBvbgpQTDAxMVVhcnRMaWIgcmF0aGVyIHRoYW4gU2VyaWFsUG9ydExpYiBzbyB0aGF0IHRoZXkg Y2FuIGN1c3RvbWl6ZSB0aGUKUEwwMTEgVUFSVCB0aGF0IHRoZSBkZWJ1ZyBtZXNzYWdlcyBhcmUg d3JpdHRlbiB0by4gQWxsIHRocmVlIGluc3RhbmNlcwpkaXJlY3QgdGhlIGRlYnVnIG91dHB1dCB0 byB0aGUgZmlyc3Qgc3VjaCBQTDAxMSBVQVJUIHRoYXQgKmRpZmZlcnMqIGZyb20KdGhlIG9uZSBz cGVjaWZpZWQgaW4gdGhlIERldmljZSBUcmVlJ3MgL2Nob3NlbiBub2RlJ3MgInN0ZG91dC1wYXRo Igpwcm9wZXJ0eS4KCkZyb20gdGhlc2UsIERlYnVnTGliRmR0UEwwMTFVYXJ0UmFtIG1pcnJvcnMg RmR0UEwwMTFTZXJpYWxQb3J0TGliOiBpdApyZWxpZXMgb24gdGhlIEVhcmx5UEwwMTFCYXNlQWRk cmVzcyBHVUlEIEhPQiwgYW5kIGluaXRpYWxpemVzIHRoZSBVQVJUIC0tCmEgVUFSVCBkaWZmZXJl bnQgZnJvbSBGZHRQTDAxMVNlcmlhbFBvcnRMaWIncyAtLSBvbmx5IG9uY2UgaW4gdGhlIGxpZmV0 aW1lCm9mIHRoZSBjb250YWluaW5nIG1vZHVsZS4gU3VpdGFibGUgZm9yIG1vZHVsZSB0eXBlcyB0 aGF0IGNhbiBvbmx5IGV4ZWN1dGUKZnJvbSBSQU0gKGkuZS4sIGFsbCB0eXBlcyBkaWZmZXJlbnQg ZnJvbSBTRUMsIFBFSV9DT1JFLCBQRUlNKSwgZXhjZXB0CkRYRV9SVU5USU1FX0RSSVZFUi4KCihO b3RlIHRoYXQgT1ZNRiB1c2VzIGEgc2ltaWxhciBzZXQgb2YgZGVkaWNhdGVkIERlYnVnTGliIGlu c3RhbmNlcwooUGxhdGZvcm1EZWJ1Z0xpYklvUG9ydCkgZm9yIGxvZ2dpbmcgdG8gdGhlICh4ODYt b25seSkgaXNhLWRlYnVnY29uIGRldmljZQpmcm9tIHZhcmlvdXMgZmlybXdhcmUgcGhhc2VzLikK ClRoZSBjb250ZXh0cyBpbiB3aGljaCB0aGVzZSBEZWJ1Z0xpYiBpbnN0YW5jZXMgcnVuIGFyZSBp ZGVudGljYWwgdG8gdGhvc2UKaW4gd2hpY2ggdGhlIGNvcnJlc3BvbmRpbmcgU2VyaWFsUG9ydExp YiBpbnN0YW5jZXMgcnVuLiBUaGUgcGFydGljdWxhcgpvcmlnaW5hbCBkZXBlbmRlbmN5IGNoYWlu IGlzCgogIEJhc2VEZWJ1Z0xpYlNlcmlhbFBvcnQgKG5vdCBTRUMsIFBFSV9DT1JFLCBQRUlNLCBE WEVfUlVOVElNRV9EUklWRVIpCiAgICBGZHRQTDAxMVNlcmlhbFBvcnRMaWIKICAgICAgZ0Vhcmx5 UEwwMTFCYXNlQWRkcmVzc0d1aWQKICAgICAgSG9iTGliCiAgICAgIFBMMDExVWFydExpYgoKYW5k IHRoZSBuZXcgZGVwZW5kZW5jeSBjaGFpbiBpcwoKICBEZWJ1Z0xpYkZkdFBMMDExVWFydFJhbSAo bm90IFNFQywgUEVJX0NPUkUsIFBFSU0sIERYRV9SVU5USU1FX0RSSVZFUikKICAgIGdFYXJseVBM MDExQmFzZUFkZHJlc3NHdWlkCiAgICBIb2JMaWIKICAgIFBMMDExVWFydExpYgoKTm90ZSB0aGF0 IEZkdFBMMDExU2VyaWFsUG9ydExpYiByZW1haW5zIGluIHVzZSAoanVzdCBub3QgdmlhCkJhc2VE ZWJ1Z0xpYlNlcmlhbFBvcnQpOyBmb3IgaW5zdGFuY2UgYnkgTWRlTW9kdWxlUGtnL1VuaXZlcnNh bC9TZXJpYWxEeGUsCndoaWNoIHByb2R1Y2VzIHRoZSBTZXJpYWxJbyBwcm90b2NvbCwgdW5kZXJs eWluZyB0aGUgVUVGSSBjb25zb2xlLgoKVGhlIEFybVZpcnRQa2cgRFNDIGZpbGVzIHdpbGwgYmUg c3dpdGNoZWQgdG8gdGhlIG5ldyBsaWJyYXJ5IGluc3RhbmNlcyBpbgphIHNlcGFyYXRlIHBhdGNo LgoKVGhpcyBwYXRjaCBpcyB3b3J0aCB2aWV3aW5nIHdpdGggImdpdCBzaG93IC0tZmluZC1jb3Bp ZXMtaGFyZGVyIi4KCkNjOiBBcmQgQmllc2hldXZlbCA8YXJkYit0aWFub2NvcmVAa2VybmVsLm9y Zz4KQ2M6IEdlcmQgSG9mZm1hbm4gPGtyYXhlbEByZWRoYXQuY29tPgpDYzogTGVpZiBMaW5kaG9s bSA8cXVpY19sbGluZGhvbEBxdWljaW5jLmNvbT4KQ2M6IFNhbWkgTXVqYXdhciA8c2FtaS5tdWph d2FyQGFybS5jb20+ClNpZ25lZC1vZmYtYnk6IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5j b20+Ci0tLQogQXJtVmlydFBrZy9MaWJyYXJ5L0RlYnVnTGliRmR0UEwwMTFVYXJ0L3tEZWJ1Z0xp YkZkdFBMMDExVWFydEZsYXNoLmluZiA9PiBEZWJ1Z0xpYkZkdFBMMDExVWFydFJhbS5pbmZ9IHwg IDIwICsrLS0KIEFybVZpcnRQa2cvTGlicmFyeS9EZWJ1Z0xpYkZkdFBMMDExVWFydC9SYW0uaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAxOCArKysKIEFybVZpcnRQa2cvTGlicmFyeS9EZWJ1Z0xpYkZkdFBMMDExVWFydC9SYW0uYyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 IDEyNCArKysrKysrKysrKysrKysrKysrKwogQXJtVmlydFBrZy9MaWJyYXJ5L0RlYnVnTGliRmR0 UEwwMTFVYXJ0L1JhbU5vblJ1bnRpbWUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDI3ICsrKysrCiA0IGZpbGVzIGNoYW5nZWQsIDE4MiBpbnNlcnRp b25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL0FybVZpcnRQa2cvTGlicmFyeS9E ZWJ1Z0xpYkZkdFBMMDExVWFydC9EZWJ1Z0xpYkZkdFBMMDExVWFydEZsYXNoLmluZiBiL0FybVZp cnRQa2cvTGlicmFyeS9EZWJ1Z0xpYkZkdFBMMDExVWFydC9EZWJ1Z0xpYkZkdFBMMDExVWFydFJh bS5pbmYKc2ltaWxhcml0eSBpbmRleCA2NyUKY29weSBmcm9tIEFybVZpcnRQa2cvTGlicmFyeS9E ZWJ1Z0xpYkZkdFBMMDExVWFydC9EZWJ1Z0xpYkZkdFBMMDExVWFydEZsYXNoLmluZgpjb3B5IHRv IEFybVZpcnRQa2cvTGlicmFyeS9EZWJ1Z0xpYkZkdFBMMDExVWFydC9EZWJ1Z0xpYkZkdFBMMDEx VWFydFJhbS5pbmYKaW5kZXggNzg3MGNhMmFlNDdmLi5hNWY0YzJkODBhM2MgMTAwNjQ0Ci0tLSBh L0FybVZpcnRQa2cvTGlicmFyeS9EZWJ1Z0xpYkZkdFBMMDExVWFydC9EZWJ1Z0xpYkZkdFBMMDEx VWFydEZsYXNoLmluZgorKysgYi9Bcm1WaXJ0UGtnL0xpYnJhcnkvRGVidWdMaWJGZHRQTDAxMVVh cnQvRGVidWdMaWJGZHRQTDAxMVVhcnRSYW0uaW5mCkBAIC02LDcgKzYsOCBAQAogIyBTZXJpYWxQ b3J0TGliIElPLCBhbmQgLS0gdmlhIFNlcmlhbER4ZSAtLSBVRUZJIGNvbnNvbGUgSU8sIHdpbGwg b2NjdXIgb24gdGhhdA0KICMgVUFSVDsgYW5kIHRoaXMgRGVidWdMaWIgaW5zdGFuY2Ugd2lsbCBw cm9kdWNlIG91dHB1dCBvbiBhICpkaWZmZXJlbnQqIFVBUlQuDQogIw0KLSMgVGhpcyBpbnN0YW5j ZSBpcyBzdWl0YWJsZSBmb3IgbW9kdWxlcyB0aGF0IG1heSBydW4gZnJvbSBmbGFzaCBvciBSQU0u DQorIyBUaGlzIGluc3RhbmNlIGlzIHN1aXRhYmxlIGZvciBtb2R1bGVzIHRoYXQgY2FuIG9ubHkg cnVuIGZyb20gUkFNIChleGNlcHQNCisjIERYRV9SVU5USU1FX0RSSVZFUikuDQogIw0KICMgQ29w eXJpZ2h0IChDKSBSZWQgSGF0DQogIw0KQEAgLTE1LDE1ICsxNiwxOCBAQAogDQogW0RlZmluZXNd DQogICBJTkZfVkVSU0lPTiAgICA9IDEuMjcNCi0gIEJBU0VfTkFNRSAgICAgID0gRGVidWdMaWJG ZHRQTDAxMVVhcnRGbGFzaA0KLSAgRklMRV9HVUlEICAgICAgPSA0M0E0QzU2Qi1EMDcxLTRDRTAt QTE1Ny05RDU5RTYxNjFERUMNCisgIEJBU0VfTkFNRSAgICAgID0gRGVidWdMaWJGZHRQTDAxMVVh cnRSYW0NCisgIEZJTEVfR1VJRCAgICAgID0gMDU4NERFNTUtOUM0Qy00OUMxLUFEQTAtRjYyQzlD MUYzNjAwDQogICBNT0RVTEVfVFlQRSAgICA9IEJBU0UNCiAgIFZFUlNJT05fU1RSSU5HID0gMS4w DQotICBMSUJSQVJZX0NMQVNTICA9IERlYnVnTGlifFNFQyBQRUlfQ09SRSBQRUlNDQorICBMSUJS QVJZX0NMQVNTICA9IERlYnVnTGlifERYRV9DT1JFIFNNTV9DT1JFIE1NX0NPUkVfU1RBTkRBTE9O RSBEWEVfRFJJVkVSIERYRV9TTU1fRFJJVkVSIFNNTV9EUklWRVIgTU1fU1RBTkRBTE9ORSBVRUZJ X0RSSVZFUiBVRUZJX0FQUExJQ0FUSU9ODQorICBDT05TVFJVQ1RPUiAgICA9IERlYnVnTGliRmR0 UEwwMTFVYXJ0UmFtQ29uc3RydWN0b3INCiANCiBbU291cmNlc10NCiAgIERlYnVnTGliLmMNCi0g IEZsYXNoLmMNCisgIFJhbS5jDQorICBSYW0uaA0KKyAgUmFtTm9uUnVudGltZS5jDQogICBXcml0 ZS5oDQogDQogW1BhY2thZ2VzXQ0KQEAgLTM1LDEzICszOSwxMiBAQCBbTGlicmFyeUNsYXNzZXNd CiAgIEJhc2VMaWINCiAgIEJhc2VNZW1vcnlMaWINCiAgIERlYnVnUHJpbnRFcnJvckxldmVsTGli DQotICBGZHRTZXJpYWxQb3J0QWRkcmVzc0xpYiAjIEZsYXNoLmMNCisgIEhvYkxpYiAgICAgICAg ICAgICAgICAgICMgUmFtLmMNCiAgIFBMMDExVWFydExpYg0KICAgUGNkTGliDQogICBQcmludExp Yg0KIA0KIFtQY2RdDQotICBnQXJtVmlydFRva2VuU3BhY2VHdWlkLlBjZERldmljZVRyZWVJbml0 aWFsQmFzZUFkZHJlc3MgIyBGbGFzaC5jDQogICBnRWZpTWRlUGtnVG9rZW5TcGFjZUd1aWQuUGNk RGVidWdDbGVhck1lbW9yeVZhbHVlDQogICBnRWZpTWRlUGtnVG9rZW5TcGFjZUd1aWQuUGNkRGVi dWdQcm9wZXJ0eU1hc2sNCiAgIGdFZmlNZGVQa2dUb2tlblNwYWNlR3VpZC5QY2RGaXhlZERlYnVn UHJpbnRFcnJvckxldmVsDQpAQCAtNTIsMyArNTUsNiBAQCBbRml4ZWRQY2RdCiAgIGdFZmlNZGVQ a2dUb2tlblNwYWNlR3VpZC5QY2RVYXJ0RGVmYXVsdERhdGFCaXRzDQogICBnRWZpTWRlUGtnVG9r ZW5TcGFjZUd1aWQuUGNkVWFydERlZmF1bHRQYXJpdHkNCiAgIGdFZmlNZGVQa2dUb2tlblNwYWNl R3VpZC5QY2RVYXJ0RGVmYXVsdFN0b3BCaXRzDQorDQorW0d1aWRzXQ0KKyAgZ0Vhcmx5UEwwMTFC YXNlQWRkcmVzc0d1aWQgIyBSYW0uYw0KZGlmZiAtLWdpdCBhL0FybVZpcnRQa2cvTGlicmFyeS9E ZWJ1Z0xpYkZkdFBMMDExVWFydC9SYW0uaCBiL0FybVZpcnRQa2cvTGlicmFyeS9EZWJ1Z0xpYkZk dFBMMDExVWFydC9SYW0uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAu LjhjMWVmNTJiNGRiYQotLS0gL2Rldi9udWxsCisrKyBiL0FybVZpcnRQa2cvTGlicmFyeS9EZWJ1 Z0xpYkZkdFBMMDExVWFydC9SYW0uaApAQCAtMCwwICsxLDE4IEBACisvKiogQGZpbGUNCisgIERl Y2xhcmUgdGhlIHZhcmlhYmxlcyB0aGF0IG1vZHVsZXMgdGhhdCBjYW4gb25seSBydW4gZnJvbSBS QU0gdXNlIGZvcg0KKyAgcmVtZW1iZXJpbmcgaW5pdGlhbGl6YXRpb24gc3RhdHVzLg0KKw0KKyAg Q29weXJpZ2h0IChDKSBSZWQgSGF0DQorDQorICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNE LTItQ2xhdXNlLVBhdGVudA0KKyoqLw0KKw0KKyNpZm5kZWYgREVCVUdfTElCX0ZEVF9QTDAxMV9V QVJUX1JBTV9IXw0KKyNkZWZpbmUgREVCVUdfTElCX0ZEVF9QTDAxMV9VQVJUX1JBTV9IXw0KKw0K KyNpbmNsdWRlIDxCYXNlLmg+DQorDQorZXh0ZXJuIFVJTlROICAgICAgICAgIG1EZWJ1Z0xpYkZk dFBMMDExVWFydEFkZHJlc3M7DQorZXh0ZXJuIFJFVFVSTl9TVEFUVVMgIG1EZWJ1Z0xpYkZkdFBM MDExVWFydFBlcm1hbmVudFN0YXR1czsNCisNCisjZW5kaWYNCmRpZmYgLS1naXQgYS9Bcm1WaXJ0 UGtnL0xpYnJhcnkvRGVidWdMaWJGZHRQTDAxMVVhcnQvUmFtLmMgYi9Bcm1WaXJ0UGtnL0xpYnJh cnkvRGVidWdMaWJGZHRQTDAxMVVhcnQvUmFtLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMDAwLi5iYzViZTAxNWJkZWQKLS0tIC9kZXYvbnVsbAorKysgYi9Bcm1WaXJ0UGtn L0xpYnJhcnkvRGVidWdMaWJGZHRQTDAxMVVhcnQvUmFtLmMKQEAgLTAsMCArMSwxMjQgQEAKKy8q KiBAZmlsZQ0KKyAgRGVmaW5lIERlYnVnTGliRmR0UEwwMTFVYXJ0V3JpdGUoKSBmb3IgbW9kdWxl cyB0aGF0IGNhbiBvbmx5IHJ1biBmcm9tIFJBTS4NCisNCisgIENvcHlyaWdodCAoQykgUmVkIEhh dA0KKw0KKyAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCisq Ki8NCisNCisjaW5jbHVkZSA8VWVmaS9VZWZpQmFzZVR5cGUuaD4NCisjaW5jbHVkZSA8VWVmaS9V ZWZpTXVsdGlQaGFzZS5oPg0KKyNpbmNsdWRlIDxQaS9QaUJvb3RNb2RlLmg+DQorI2luY2x1ZGUg PFBpL1BpSG9iLmg+DQorI2luY2x1ZGUgPExpYnJhcnkvSG9iTGliLmg+DQorI2luY2x1ZGUgPExp YnJhcnkvUEwwMTFVYXJ0TGliLmg+DQorI2luY2x1ZGUgPExpYnJhcnkvUGNkTGliLmg+DQorI2lu Y2x1ZGUgPEd1aWQvRWFybHlQTDAxMUJhc2VBZGRyZXNzLmg+DQorDQorI2luY2x1ZGUgIlJhbS5o Ig0KKyNpbmNsdWRlICJXcml0ZS5oIg0KKw0KK1VJTlROICAgICAgICAgIG1EZWJ1Z0xpYkZkdFBM MDExVWFydEFkZHJlc3M7DQorUkVUVVJOX1NUQVRVUyAgbURlYnVnTGliRmR0UEwwMTFVYXJ0UGVy bWFuZW50U3RhdHVzID0gUkVUVVJOX1NVQ0NFU1M7DQorDQorLyoqDQorICBTdGF0ZWZ1bGx5IGlu aXRpYWxpemUgYm90aCB0aGUgbGlicmFyeSBpbnN0YW5jZSBhbmQgdGhlIGRlYnVnIFBMMDExIFVB UlQuDQorKiovDQorU1RBVElDDQorUkVUVVJOX1NUQVRVUw0KK0luaXRpYWxpemUgKA0KKyAgVk9J RA0KKyAgKQ0KK3sNCisgIENPTlNUIFZPSUQgICAgICAgICAgICAgICAgICAgICAgKkhvYjsNCisg IENPTlNUIEVBUkxZX1BMMDExX0JBU0VfQUREUkVTUyAgKlVhcnRCYXNlOw0KKyAgUkVUVVJOX1NU QVRVUyAgICAgICAgICAgICAgICAgICBTdGF0dXM7DQorICBVSU5UTiAgICAgICAgICAgICAgICAg ICAgICAgICAgIERlYnVnQWRkcmVzczsNCisgIFVJTlQ2NCAgICAgICAgICAgICAgICAgICAgICAg ICAgQmF1ZFJhdGU7DQorICBVSU5UMzIgICAgICAgICAgICAgICAgICAgICAgICAgIFJlY2VpdmVG aWZvRGVwdGg7DQorICBFRklfUEFSSVRZX1RZUEUgICAgICAgICAgICAgICAgIFBhcml0eTsNCisg IFVJTlQ4ICAgICAgICAgICAgICAgICAgICAgICAgICAgRGF0YUJpdHM7DQorICBFRklfU1RPUF9C SVRTX1RZUEUgICAgICAgICAgICAgIFN0b3BCaXRzOw0KKw0KKyAgaWYgKG1EZWJ1Z0xpYkZkdFBM MDExVWFydEFkZHJlc3MgIT0gMCkgew0KKyAgICByZXR1cm4gUkVUVVJOX1NVQ0NFU1M7DQorICB9 DQorDQorICBpZiAoUkVUVVJOX0VSUk9SIChtRGVidWdMaWJGZHRQTDAxMVVhcnRQZXJtYW5lbnRT dGF0dXMpKSB7DQorICAgIHJldHVybiBtRGVidWdMaWJGZHRQTDAxMVVhcnRQZXJtYW5lbnRTdGF0 dXM7DQorICB9DQorDQorICBIb2IgPSBHZXRGaXJzdEd1aWRIb2IgKCZnRWFybHlQTDAxMUJhc2VB ZGRyZXNzR3VpZCk7DQorICBpZiAoKEhvYiA9PSBOVUxMKSB8fCAoR0VUX0dVSURfSE9CX0RBVEFf U0laRSAoSG9iKSAhPSBzaXplb2YgKlVhcnRCYXNlKSkgew0KKyAgICBTdGF0dXMgPSBSRVRVUk5f Tk9UX0ZPVU5EOw0KKyAgICBnb3RvIEZhaWxlZDsNCisgIH0NCisNCisgIFVhcnRCYXNlID0gR0VU X0dVSURfSE9CX0RBVEEgKEhvYik7DQorDQorICBEZWJ1Z0FkZHJlc3MgPSAoVUlOVE4pVWFydEJh c2UtPkRlYnVnQWRkcmVzczsNCisgIGlmIChEZWJ1Z0FkZHJlc3MgPT0gMCkgew0KKyAgICBTdGF0 dXMgPSBSRVRVUk5fTk9UX0ZPVU5EOw0KKyAgICBnb3RvIEZhaWxlZDsNCisgIH0NCisNCisgIEJh dWRSYXRlICAgICAgICAgPSAoVUlOVE4pUGNkR2V0NjQgKFBjZFVhcnREZWZhdWx0QmF1ZFJhdGUp Ow0KKyAgUmVjZWl2ZUZpZm9EZXB0aCA9IDA7IC8vIFVzZSB0aGUgZGVmYXVsdCB2YWx1ZSBmb3Ig RmlmbyBkZXB0aA0KKyAgUGFyaXR5ICAgICAgICAgICA9IChFRklfUEFSSVRZX1RZUEUpUGNkR2V0 OCAoUGNkVWFydERlZmF1bHRQYXJpdHkpOw0KKyAgRGF0YUJpdHMgICAgICAgICA9IFBjZEdldDgg KFBjZFVhcnREZWZhdWx0RGF0YUJpdHMpOw0KKyAgU3RvcEJpdHMgICAgICAgICA9IChFRklfU1RP UF9CSVRTX1RZUEUpUGNkR2V0OCAoUGNkVWFydERlZmF1bHRTdG9wQml0cyk7DQorDQorICBTdGF0 dXMgPSBQTDAxMVVhcnRJbml0aWFsaXplUG9ydCAoDQorICAgICAgICAgICAgIERlYnVnQWRkcmVz cywNCisgICAgICAgICAgICAgRml4ZWRQY2RHZXQzMiAoUEwwMTFVYXJ0Q2xrSW5IeiksDQorICAg ICAgICAgICAgICZCYXVkUmF0ZSwNCisgICAgICAgICAgICAgJlJlY2VpdmVGaWZvRGVwdGgsDQor ICAgICAgICAgICAgICZQYXJpdHksDQorICAgICAgICAgICAgICZEYXRhQml0cywNCisgICAgICAg ICAgICAgJlN0b3BCaXRzDQorICAgICAgICAgICAgICk7DQorICBpZiAoUkVUVVJOX0VSUk9SIChT dGF0dXMpKSB7DQorICAgIGdvdG8gRmFpbGVkOw0KKyAgfQ0KKw0KKyAgbURlYnVnTGliRmR0UEww MTFVYXJ0QWRkcmVzcyA9IERlYnVnQWRkcmVzczsNCisgIHJldHVybiBSRVRVUk5fU1VDQ0VTUzsN CisNCitGYWlsZWQ6DQorICBtRGVidWdMaWJGZHRQTDAxMVVhcnRQZXJtYW5lbnRTdGF0dXMgPSBT dGF0dXM7DQorICByZXR1cm4gU3RhdHVzOw0KK30NCisNCisvKioNCisgIChDb3BpZWQgZnJvbSBT ZXJpYWxQb3J0V3JpdGUoKSBpbiAiTWRlUGtnL0luY2x1ZGUvTGlicmFyeS9TZXJpYWxQb3J0TGli LmgiIGF0DQorICBjb21taXQgYzQ1NDdhZWZiM2QwLCB3aXRoIHRoZSBCdWZmZXIgbm9uLW51bGxp dHkgYXNzZXJ0aW9uIHJlbW92ZWQ6KQ0KKw0KKyAgV3JpdGUgZGF0YSBmcm9tIGJ1ZmZlciB0byBz ZXJpYWwgZGV2aWNlLg0KKw0KKyAgV3JpdGVzIE51bWJlck9mQnl0ZXMgZGF0YSBieXRlcyBmcm9t IEJ1ZmZlciB0byB0aGUgc2VyaWFsIGRldmljZS4NCisgIFRoZSBudW1iZXIgb2YgYnl0ZXMgYWN0 dWFsbHkgd3JpdHRlbiB0byB0aGUgc2VyaWFsIGRldmljZSBpcyByZXR1cm5lZC4NCisgIElmIHRo ZSByZXR1cm4gdmFsdWUgaXMgbGVzcyB0aGFuIE51bWJlck9mQnl0ZXMsIHRoZW4gdGhlIHdyaXRl IG9wZXJhdGlvbiBmYWlsZWQuDQorICBJZiBOdW1iZXJPZkJ5dGVzIGlzIHplcm8sIHRoZW4gcmV0 dXJuIDAuDQorDQorICBAcGFyYW0gIEJ1ZmZlciAgICAgICAgICAgUG9pbnRlciB0byB0aGUgZGF0 YSBidWZmZXIgdG8gYmUgd3JpdHRlbi4NCisgIEBwYXJhbSAgTnVtYmVyT2ZCeXRlcyAgICBOdW1i ZXIgb2YgYnl0ZXMgdG8gd3JpdHRlbiB0byB0aGUgc2VyaWFsIGRldmljZS4NCisNCisgIEByZXR2 YWwgMCAgICAgICAgICAgICAgICBOdW1iZXJPZkJ5dGVzIGlzIDAuDQorICBAcmV0dmFsID4wICAg ICAgICAgICAgICAgVGhlIG51bWJlciBvZiBieXRlcyB3cml0dGVuIHRvIHRoZSBzZXJpYWwgZGV2 aWNlLg0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIHRoaXMgdmFsdWUgaXMgbGVzcyB0 aGFuIE51bWJlck9mQnl0ZXMsIHRoZW4gdGhlIHdyaXRlIG9wZXJhdGlvbiBmYWlsZWQuDQorKiov DQorVUlOVE4NCitEZWJ1Z0xpYkZkdFBMMDExVWFydFdyaXRlICgNCisgIElOIFVJTlQ4ICAqQnVm ZmVyLA0KKyAgSU4gVUlOVE4gIE51bWJlck9mQnl0ZXMNCisgICkNCit7DQorICBSRVRVUk5fU1RB VFVTICBTdGF0dXM7DQorDQorICBTdGF0dXMgPSBJbml0aWFsaXplICgpOw0KKyAgaWYgKFJFVFVS Tl9FUlJPUiAoU3RhdHVzKSkgew0KKyAgICByZXR1cm4gMDsNCisgIH0NCisNCisgIHJldHVybiBQ TDAxMVVhcnRXcml0ZSAobURlYnVnTGliRmR0UEwwMTFVYXJ0QWRkcmVzcywgQnVmZmVyLCBOdW1i ZXJPZkJ5dGVzKTsNCit9DQpkaWZmIC0tZ2l0IGEvQXJtVmlydFBrZy9MaWJyYXJ5L0RlYnVnTGli RmR0UEwwMTFVYXJ0L1JhbU5vblJ1bnRpbWUuYyBiL0FybVZpcnRQa2cvTGlicmFyeS9EZWJ1Z0xp YkZkdFBMMDExVWFydC9SYW1Ob25SdW50aW1lLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMDAwLi43MTVkMzQwMGRkZDkKLS0tIC9kZXYvbnVsbAorKysgYi9Bcm1WaXJ0UGtn L0xpYnJhcnkvRGVidWdMaWJGZHRQTDAxMVVhcnQvUmFtTm9uUnVudGltZS5jCkBAIC0wLDAgKzEs MjcgQEAKKy8qKiBAZmlsZQ0KKyAgUHJvdmlkZSBhbiBlbXB0eSBsaWIgaW5zdGFuY2UgY29uc3Ry dWN0b3IgZm9yIG1vZHVsZXMgdGhhdCBjYW4gb25seSBydW4gZnJvbQ0KKyAgUkFNIGJ1dCBhcmUg bm90IERYRV9SVU5USU1FX0RSSVZFUiBtb2R1bGVzLg0KKw0KKyAgVGhpcyBlbnN1cmVzIHRoYXQg ZS5nLiBhbnkgSG9iTGliIGNvbnN0cnVjdG9yIGlzIG9yZGVyZWQgY29ycmVjdGx5LiAoVGhlDQor ICBEWEVfQ09SRSBjYWxscyBjb25zdHJ1Y3RvcnMgbGF0ZSwgYnV0IHRoZSBEWEVfQ09SRSBIb2JM aWIgaW5zdGFuY2UgbmVlZHMgbm8NCisgIGNvbnN0cnVjdGlvbiBhbnl3YXkuKQ0KKw0KKyAgQ29w eXJpZ2h0IChDKSBSZWQgSGF0DQorDQorICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTIt Q2xhdXNlLVBhdGVudA0KKyoqLw0KKw0KKyNpbmNsdWRlIDxCYXNlLmg+DQorDQorLyoqDQorICBF bXB0eSBsaWJyYXJ5IGluc3RhbmNlIGNvbnN0cnVjdG9yLCBvbmx5IGZvciBlbnN1cmluZyB0aGUg Y29ubmVjdGl2aXR5IG9mIHRoZQ0KKyAgY29uc3RydWN0b3IgZGVwZW5kZW5jeSBncmFwaC4NCisq Ki8NCitSRVRVUk5fU1RBVFVTDQorRUZJQVBJDQorRGVidWdMaWJGZHRQTDAxMVVhcnRSYW1Db25z dHJ1Y3RvciAoDQorICBWT0lEDQorICApDQorew0KKyAgcmV0dXJuIFJFVFVSTl9TVUNDRVNTOw0K K30NCgoNCgotPS09LT0tPS09LT0tPS09LT0tPS09LQpHcm91cHMuaW8gTGlua3M6IFlvdSByZWNl aXZlIGFsbCBtZXNzYWdlcyBzZW50IHRvIHRoaXMgZ3JvdXAuClZpZXcvUmVwbHkgT25saW5lICgj MTA5Mzk5KTogaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL21lc3NhZ2UvMTA5Mzk5Ck11 dGUgVGhpcyBUb3BpYzogaHR0cHM6Ly9ncm91cHMuaW8vbXQvMTAxODM0ODg1Lzc2ODYxNzYKR3Jv dXAgT3duZXI6IGRldmVsK293bmVyQGVkazIuZ3JvdXBzLmlvClVuc3Vic2NyaWJlOiBodHRwczov L2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvbGVhdmUvMTIzNjcxMTEvNzY4NjE3Ni8xOTEzNDU2MjEy L3h5enp5IFtyZWJlY2NhQG9wZW5mdy5pb10KLT0tPS09LT0tPS09LT0tPS09LT0tPS0KCg0K