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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id B66FAC531D0 for ; Mon, 27 Jul 2026 07:53:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=ck2Kz16xgXW5JC6qyV5GPO/z/HzlMiO5/eQsRUmt1Dw=; b=HyaFJlqsd7Q5nV 0LBwEcvMuBge8jYsEU+9d2s9FKcUdbRGRZyOih4S0h+eiP5sD0QXD64w1/AhBPELelk7ppZVfXl5Q Ya5YL28KxCG5LfrpqNBlU2tGBLFm1EV+1GXKvj9CbTSxTachJUznSfJWSFajrKtRgSjTNzTgeCwvF 55cFaDHsOzeOAzuSjmKXDWKUPzKGcKm0E8z5eDvuQ8JT/cklDQVN3hcrr89l7n33Wn5YyKdoKn3bj ShhHAfelzA1O0vyyx82iaPuVL7UblpzAZagtNxEx1jh/eDrWlApnkkajaDZfL3pDBe2Qr2kIk3XYF lTGkLn6n2cPA12klX8ow==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1woG8x-00000002BfN-38sX; Mon, 27 Jul 2026 07:52:59 +0000 Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1woG8u-00000002Bf1-2Cmr for linux-riscv@lists.infradead.org; Mon, 27 Jul 2026 07:52:58 +0000 Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-2cab973140bso31754055ad.3 for ; Mon, 27 Jul 2026 00:52:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; t=1785138775; x=1785743575; darn=lists.infradead.org; h=in-reply-to:content-transfer-encoding:content-disposition :content-type:mime-version:references:message-id:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to:content-type; bh=HbSDbVaDmzeDl40IpS/n9zeYRhfzN1ldtzWWLApwZkk=; b=HbX2U6EjVoQgj1Mqn3oNd6TdNCh2jhnwg/ob3XBtjWdimMVopiX7s/Au1kafPhNNfb LDtZwVj2wrF17362YrtqHHIJy6O5jJdoy7UPjtAjDT3rZe0Avgk6ZHY+T08UmcPnuD9K c7mPypxBMidt4CrNzbRMHuqDJLeK6TLwA4K56CSSBLhEWES8sHvDKXjf1044Qz/nQWcY nFoLmkqcsvtllB9kCQRtjkvOO2MvVvPUjgUgJU3/DcbvHQN+MdiEwC8g67BDiDnyrzLs kCeieEJ5dydGCI+aUwG2WcbucdfHLfZmDZrBENNV2Ih0Ogp5mxdYcVImLr47+smT2WDf yJYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785138775; x=1785743575; h=in-reply-to:content-transfer-encoding:content-disposition :content-type:mime-version:references:message-id:subject:cc:to:from :date:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to:content-type; bh=HbSDbVaDmzeDl40IpS/n9zeYRhfzN1ldtzWWLApwZkk=; b=GH/AxJGyPf5S4/6UPh/oFlDBAWdIrozi9J76NHB9JIeP70wAK3pGDy4W5CMoiHR6w2 th1irTBt6L8mgjOpOa9v7i760jPIyn8RVsAByhJnMbJ1hlUrFStAiNHPfPCJIAFLL/FL Nzc4BZ5c6fOGEd8jK6ctR16bP1Z818J8PKQNl+o3RpcoqVrVR99Ro7if2O4daulqauRD hettaeRuTF7hJd1dfFxDiq+AU/Emy0bqFK+Gt80wwot0LqyUsmF5msqIVTKwXM3M0RFR oVtzt+YJW0j1uNSWs17+9e0tEbQ3zodpoeoIhyj19oCDfrKL0swGeBV0BQjwM2435xMn ZpgQ== X-Forwarded-Encrypted: i=1; AHgh+RoFAVQKO4VvjjQJBvdSKLt2JCQ/DwmnUlH9UB9pmwpV1mqOWJ6ldBz69ugi7jCfypjG/ISau/126LyObg==@lists.infradead.org X-Gm-Message-State: AOJu0YwA4D374T5imHE32f3DP+XJSgHhYFDmBAPwsSGr7yyLPFGZN3ZT Jk/on7qhZiAqudoK76rzMKznqw9B8gU7B2mjuT9lOAWWxjvJn72BCD/RYokpHbEWuiI= X-Gm-Gg: AR+sD12tLU46tay+ioUQbL3G4GFOpKj6wQGUalnO8Ret0pAfPcXWQD3ExyLfmc/vCYE z3mYi293kkeMmvCRARlsTVrCxgWC8UZr2zAqEPQMqWUaKJ2dH/8eB2BaFhI2ax0FEckP8K642BE zttn9uAHJHOj+E53kaIE/CI/zjdb40z0dEP7AwWJd5rwl4L/U+ipot4+eh+6DI5UUMTd04/EZYi GfN9tyiVxBsz0mLX6c7Q4NibvgHyqDlWwKDCZaBh6pvGVBk095e3b6Z+Rb6EATCQQwl+JL4VgQk xhqgUnB1Of/ba8dUo5vZc4ZUadCKnDcez3FBCeQtvehfX94YGwH45gIVFkNANMiWpKCAnbMgDux LYDqwDywl/4F7xWjR0CLINZHuZzu0fwtjXellhA7mew9My1uCk+3sYuZ2VopmP8cB5c61MCax7D ln X-Received: by 2002:a17:902:fd87:b0:2cc:1452:a014 with SMTP id d9443c01a7336-2cfde7bca17mr68252865ad.18.1785138775086; Mon, 27 Jul 2026 00:52:55 -0700 (PDT) Received: from plin-1878 ([136.226.240.191]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2cfde7bc57asm30513145ad.45.2026.07.27.00.52.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Jul 2026 00:52:54 -0700 (PDT) Date: Mon, 27 Jul 2026 15:52:46 +0800 From: Yu-Chien Peter Lin To: Conor Dooley Cc: devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, samuel.holland@sifive.com, dlan@kernel.org, guodong@riscstar.com, dfustini@oss.tenstorrent.com, michal.simek@amd.com, junhui.liu@pigmoral.tech, darshan.prajapati@einfochips.com, akpm@linux-foundation.org, zhangchunyan@iscas.ac.cn, luxu.kernel@bytedance.com, pincheng.plct@isrc.iscas.ac.cn, nick.hu@sifive.com, jim.shu@sifive.com, zong.li@sifive.com, greentime.hu@sifive.com, robin.randhawa@sifive.com, scott@riscstar.com, dave.patel@riscstar.com, raymond.mao@riscstar.com Subject: Re: [RFC PATCH 3/3] dt-bindings: sifive: Add WorldGuard Checker Message-ID: References: <20260619105834.1277302-1-peter.lin@sifive.com> <20260619105834.1277302-4-peter.lin@sifive.com> <20260622-exemplary-navigate-88985b1444f5@spud> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20260622-exemplary-navigate-88985b1444f5@spud> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260727_005256_610936_963F7A14 X-CRM114-Status: GOOD ( 44.98 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org SGkgQ29ub3IsCgpPbiBNb24sIEp1biAyMiwgMjAyNiBhdCAwNjo1MDoyOFBNICswMTAwLCBDb25v ciBEb29sZXkgd3JvdGU6Cj4gT24gRnJpLCBKdW4gMTksIDIwMjYgYXQgMDY6NTg6MzRQTSArMDgw MCwgWXUtQ2hpZW4gUGV0ZXIgTGluIHdyb3RlOgo+ID4gQWRkIERUIGJpbmRpbmcgZm9yIFNpRml2 ZSB3Z0NoZWNrZXIyLCBhIGhhcmR3YXJlIGZpcmV3YWxsIGVuZm9yY2luZwo+ID4gV0lELWJhc2Vk IGFjY2VzcyBjb250cm9sIGluIFJJU0MtViBXb3JsZHMuIFByb3ZpZGVzIGNoZWNrZXIgc2xvdHMg dG8KPiA+IHByb2dyYW0gcGVyLVdJRCBwZXJtaXNzaW9ucyBmb3IgZG93bnN0cmVhbSByZXNvdXJj ZXMsIHdpdGggb3B0aW9uYWwKPiA+IHN1Yi1yYW5nZSBwYXJ0aXRpb25pbmcuCj4gPiAKPiA+IExp bms6IGh0dHBzOi8vZ2l0aHViLmNvbS9yaXNjdmFyY2hpdmUvc2VjdXJpdHkvYmxvYi9tYWluL3Bh cGVycy93b3JsZGd1YXJkJTIwcHJvcG9zYWwucGRmCj4gPiBTaWduZWQtb2ZmLWJ5OiBZdS1DaGll biBQZXRlciBMaW4gPHBldGVyLmxpbkBzaWZpdmUuY29tPgo+ID4gUmV2aWV3ZWQtYnk6IFpvbmcg TGkgPHpvbmcubGlAc2lmaXZlLmNvbT4KPiA+IFJldmlld2VkLWJ5OiBKaW0gU2h1IDxqaW0uc2h1 QHNpZml2ZS5jb20+Cj4gPiAtLS0KPiA+ICAuLi4vZGV2aWNldHJlZS9iaW5kaW5ncy9yaXNjdi93 b3JsZHMueWFtbCAgICAgfCAgIDkgKwo+ID4gIC4uLi9iaW5kaW5ncy9zaWZpdmUvc2lmaXZlLHdn Y2hlY2tlcjIueWFtbCAgICB8IDIzNyArKysrKysrKysrKysrKysrKysKPiA+ICAyIGZpbGVzIGNo YW5nZWQsIDI0NiBpbnNlcnRpb25zKCspCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IERvY3VtZW50 YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9zaWZpdmUvc2lmaXZlLHdnY2hlY2tlcjIueWFtbAo+ ID4gCj4gPiBkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL3Jp c2N2L3dvcmxkcy55YW1sIGIvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL3Jpc2N2 L3dvcmxkcy55YW1sCj4gPiBpbmRleCBjYzhiMzc0NzU5MWUuLmMzOWEwNmMyZGQ4ZCAxMDA2NDQK PiA+IC0tLSBhL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9yaXNjdi93b3JsZHMu eWFtbAo+ID4gKysrIGIvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL3Jpc2N2L3dv cmxkcy55YW1sCj4gPiBAQCAtMzQsNiArMzQsMTQgQEAgcHJvcGVydGllczoKPiA+ICAgICAgbWlu aW11bTogMgo+ID4gICAgICBtYXhpbXVtOiA2NAo+ID4gIAo+ID4gKyAgc2lmaXZlLHRydXN0ZWR3 aWQ6Cj4gCj4gV2hhdCdzIHNpZml2ZSBzcGVjaWZpYyBhYm91dCB0aGlzPyBXb3VsZG4ndCBvdGhl ciB2ZW5kb3JzIGFsc28gaGF2ZQo+IHRydXN0ZWQgd29ybGRzPwoKVGhlIHByb3BlcnR5IGlzIGlu dGVuZGVkIHRvIGlkZW50aWZ5IHRoZSB0cnVzdGVkIFdJRCwgaS5lLiB0aGUKdHJ1c3RlZCBhZ2Vu dCBhdXRob3JpemVkIGZvciBwcm9ncmFtbWluZyBXb3JsZEd1YXJkIGNvbXBvbmVudHMKc3VjaCBh cyB3Z0NoZWNrZXIgYWNjb3JkaW5nIHRvIHRoZSBwb2xpY3kgc3BlY2lmaWVkIGluIHRoZSBkZXZp Y2UKdHJlZSAoc2VlIHNpZml2ZSxwYXJ0aXRpb24tcnVsZSBiZWxvdykuCgp3Z0NoZWNrZXIgaXMg YSBwcm9wcmlldGFyeSBXb3JsZHMtYXdhcmUgZmlyZXdhbGwgYW5kIGlzIG5vdCBwYXJ0IG9mCnRo ZSBSSVNDLVYgSVNBIHNwZWNpZmljYXRpb24sIHNvIHRoZSBXb3JsZHMgZXh0ZW5zaW9uIGl0c2Vs ZiBkb2VzCm5vdCBkZWZpbmUgYSBjb3JyZXNwb25kaW5nIGNvbmNlcHQgb2YgYSB0cnVzdGVkIHdv cmxkIGZvciB0aGlzLgoKPiAKPiA+ICsgICAgJHJlZjogL3NjaGVtYXMvdHlwZXMueWFtbCMvZGVm aW5pdGlvbnMvdWludDMyCj4gPiArICAgIG1heGltdW06IDMxCj4gPiArICAgIGRlc2NyaXB0aW9u OiB8Cj4gPiArICAgICAgVGhlIFdvcmxkIElEIChXSUQpIGRlc2lnbmF0ZWQgYXMgdGhlIHRydXN0 ZWQgV0lEIGZvciB0aGlzIHBsYXRmb3JtLgo+ID4gKyAgICAgIFRyYW5zYWN0aW9ucyB0YWdnZWQg d2l0aCB0aGlzIFdJRCBhcmUgYXV0aG9yaXplZCB0byBhY2Nlc3MgYW5kIGNvbmZpZ3VyZQo+ID4g KyAgICAgIFdvcmxkR3VhcmQgYmxvY2tzLCBpbmNsdWRpbmcgd2dDaGVja2VycyBhbmQgd2dNYXJr ZXJzLgo+ID4gKwo+ID4gIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB0cnVlCj4gPiAgCj4gPiAgZXhh bXBsZXM6Cj4gPiBAQCAtNDQsNiArNTIsNyBAQCBleGFtcGxlczoKPiA+ICAgICAgICAgICNzaXpl LWNlbGxzID0gPDA+Owo+ID4gICAgICAgICAgdGltZWJhc2UtZnJlcXVlbmN5ID0gPDEwMDAwMDA+ Owo+ID4gICAgICAgICAgcmlzY3YsbndvcmxkcyA9IDw0PjsKPiA+ICsgICAgICAgIHNpZml2ZSx0 cnVzdGVkd2lkID0gPDM+Owo+ID4gIAo+ID4gICAgICAgICAgY3B1QDAgewo+ID4gICAgICAgICAg ICAgIGRldmljZV90eXBlID0gImNwdSI7Cj4gPiBkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9k ZXZpY2V0cmVlL2JpbmRpbmdzL3NpZml2ZS9zaWZpdmUsd2djaGVja2VyMi55YW1sIGIvRG9jdW1l bnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL3NpZml2ZS9zaWZpdmUsd2djaGVja2VyMi55YW1s Cj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gaW5kZXggMDAwMDAwMDAwMDAwLi4wNDNjNzQ4 Mzg1ZWQKPiA+IC0tLSAvZGV2L251bGwKPiA+ICsrKyBiL0RvY3VtZW50YXRpb24vZGV2aWNldHJl ZS9iaW5kaW5ncy9zaWZpdmUvc2lmaXZlLHdnY2hlY2tlcjIueWFtbAo+ID4gQEAgLTAsMCArMSwy MzcgQEAKPiA+ICsjIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiAoR1BMLTIuMC1vbmx5IE9SIEJT RC0yLUNsYXVzZSkKPiA+ICsjIENvcHlyaWdodCAoQykgMjAyNiBTaUZpdmUsIEluYy4KPiA+ICsl WUFNTCAxLjIKPiA+ICstLS0KPiA+ICskaWQ6IGh0dHA6Ly9kZXZpY2V0cmVlLm9yZy9zY2hlbWFz L3NpZml2ZS9zaWZpdmUsd2djaGVja2VyMi55YW1sIwo+ID4gKyRzY2hlbWE6IGh0dHA6Ly9kZXZp Y2V0cmVlLm9yZy9tZXRhLXNjaGVtYXMvY29yZS55YW1sIwo+ID4gKwo+ID4gK3RpdGxlOiBTaUZp dmUgV29ybGRHdWFyZCBDaGVja2VyCj4gPiArCj4gPiArbWFpbnRhaW5lcnM6Cj4gPiArICAtIFl1 LUNoaWVuIFBldGVyIExpbiA8cGV0ZXIubGluQHNpZml2ZS5jb20+Cj4gPiArCj4gPiArZGVzY3Jp cHRpb246IHwKPiA+ICsgIFRoZSBSSVNDLVYgV29ybGRzIElTQSBleHRlbnNpb24gZGVmaW5lcyBX b3JsZCBJRHMgKFdJRHMpIGFzIGFyY2hpdGVjdHVyYWwKPiA+ICsgIGlkZW50aWZpZXJzIHRoYXQg dGFnIGVhY2ggc3lzdGVtIHRyYW5zYWN0aW9uIHdpdGggaXRzIG9yaWdpbmF0aW5nIGNvbnRleHQu Cj4gPiArICBTeXN0ZW0gaW50ZWdyYXRvcnMgYXNzaWduIFdJRHMgdG8gZXhlY3V0aW9uIGNvbnRl eHRzIHN1Y2ggYXMgcHJpdmlsZWdlIG1vZGVzLAo+ID4gKyAgdHJ1c3RlZCBleGVjdXRpb24gZW52 aXJvbm1lbnRzLCBvciBvdGhlciBpc29sYXRpb24gYm91bmRhcmllcy4KPiA+ICsKPiA+ICsgIFRo ZSBTaUZpdmUgV29ybGRHdWFyZCBDaGVja2VyIGlzIGEgaGFyZHdhcmUgZmlyZXdhbGwgcG9zaXRp b25lZCBpbiB0aGUKPiA+ICsgIHN5c3RlbSBpbnRlcmNvbm5lY3QgZmFicmljLiBJdCBpbnNwZWN0 cyBldmVyeSB0cmFuc2FjdGlvbiwgZXZhbHVhdGluZyB0aGUKPiA+ICsgIFdJRCBhZ2FpbnN0IGFj Y2VzcyBjb250cm9sIHBvbGljaWVzIGVuY29kZWQgaW4gY2hlY2tlciBzbG90cyBmb3IgZWFjaAo+ ID4gKyAgcHJvdGVjdGVkIHJlc291cmNlLiBUcmFuc2FjdGlvbnMgZnJvbSB1bmF1dGhvcml6ZWQg V0lEcyBhcmUgYmxvY2tlZCBhbmQKPiA+ICsgIHJlcG9ydGVkIGFzIGJ1cyBlcnJvcnMsIGludGVy cnVwdHMsIG9yIGJvdGguCj4gPiArCj4gPiArICBUaGlzIGVuYWJsZXMgc3BhdGlhbCBwYXJ0aXRp b25pbmcgb2YgbWVtb3J5IHJlZ2lvbnMgYW5kIG1lbW9yeS1tYXBwZWQgZGV2aWNlcwo+ID4gKyAg YWNyb3NzIGV4ZWN1dGlvbiBjb250ZXh0cy4gRGlmZmVyZW50IGFkZHJlc3MgcmFuZ2VzIGNhbiBl bmZvcmNlIGRpc3RpbmN0Cj4gPiArICBwb2xpY2llcywgYWxsb3dpbmcgaXNvbGF0ZWQgd29ya2xv YWRzIHRvIGNvZXhpc3Qgd2l0aCBoYXJkd2FyZS1lbmZvcmNlZAo+ID4gKyAgcHJvdGVjdGlvbi4K PiA+ICsKPiA+ICsgIFRoZSB3Z0NoZWNrZXIgYWN0cyBhcyBhbiBhY2Nlc3MtY29udHJvbGxlciBw cm92aWRlciBhcyBkZWZpbmVkIGluIHRoZQo+ID4gKyAgYWNjZXNzLWNvbnRyb2xsZXJzIGZyYW1l d29yay4gUHJvdGVjdGVkIGRldmljZXMgYXJlIGNvbnN1bWVycyB0aGF0IGRlY2xhcmUKPiA+ICsg IHRoZWlyIGFjY2VzcyBwb2xpY3kgdmlhIHRoZSBhY2Nlc3MtY29udHJvbGxlcnMgcHJvcGVydHku IFRoZSBoYXJkd2FyZQo+ID4gKyAgc3VwcG9ydHMgdXAgdG8gMzIgV29ybGQgSURzLgo+ID4gKwo+ ID4gKyAgVGhlIFdvcmxkIElEIGF1dGhvcml6ZWQgdG8gY29uZmlndXJlIFdvcmxkR3VhcmQgYmxv Y2tzIGlzIHNwZWNpZmllZCBieSB0aGUKPiA+ICsgIHNpZml2ZSx0cnVzdGVkd2lkIHByb3BlcnR5 IGluIHRoZSAvY3B1cyBub2RlLgo+ID4gKwo+ID4gK2FsbE9mOgo+ID4gKyAgLSAkcmVmOiAvc2No ZW1hcy9hY2Nlc3MtY29udHJvbGxlcnMvYWNjZXNzLWNvbnRyb2xsZXJzLnlhbWwjCj4gPiArCj4g PiArcHJvcGVydGllczoKPiA+ICsgIGNvbXBhdGlibGU6Cj4gPiArICAgIGNvbnN0OiBzaWZpdmUs d2djaGVja2VyMgo+IAo+IE1pc3NpbmcgZGV2aWNlIHNwZWNpZmljIGNvbXBhdGlibGVzLgoKV2Ug d2lsbCB0ZXN0IG9uIHFlbXUsIGNhbiBJIGFkZCAicWVtdSx3Z2NoZWNrZXIyIiBoZXJlPwoKPiAK PiA+ICsKPiA+ICsgIHJlZzoKPiA+ICsgICAgbWF4SXRlbXM6IDEKPiA+ICsgICAgZGVzY3JpcHRp b246Cj4gPiArICAgICAgQmFzZSBhZGRyZXNzIGFuZCBzaXplIG9mIHRoZSB3Z0NoZWNrZXIgbWVt b3J5LW1hcHBlZCBJL08gcmVnaXN0ZXJzLgo+ID4gKwo+ID4gKyAgaW50ZXJydXB0czoKPiA+ICsg ICAgbWF4SXRlbXM6IDEKPiA+ICsgICAgZGVzY3JpcHRpb246Cj4gPiArICAgICAgSW50ZXJydXB0 IGxpbmUgYXNzZXJ0ZWQgd2hlbiBhIFdJRCBhY2Nlc3MgdmlvbGF0aW9uIGlzIGRldGVjdGVkIGFu ZAo+ID4gKyAgICAgIGludGVycnVwdCByZXBvcnRpbmcgaXMgZW5hYmxlZCBpbiB0aGUgc2xvdCBj b25maWd1cmF0aW9uIChJUiBvciBJVwo+ID4gKyAgICAgIGJpdHMgc2V0KS4KPiA+ICsKPiA+ICsg ICcjYWNjZXNzLWNvbnRyb2xsZXItY2VsbHMnOgo+ID4gKyAgICBjb25zdDogNwo+ID4gKyAgICBk ZXNjcmlwdGlvbjogfAo+ID4gKyAgICAgIFNwZWNpZmllciBmb3Igb25lIGFjY2Vzcy1jb250cm9s IHJ1bGUsIGVuY29kZWQgYXMgc2V2ZW4gdTMyIGNlbGxzOgo+ID4gKyAgICAgICAgPGFkZHItaGkg YWRkci1sbyBzaXplLWhpIHNpemUtbG8gcGVybS1oaSBwZXJtLWxvIGNvbmZpZz4KPiA+ICsKPiA+ ICsgICAgICB3aGVyZToKPiA+ICsgICAgICAgIC0gYWRkci1oaSwgYWRkci1sbzogNjQtYml0IGJh c2UgYWRkcmVzcyBvZiB0aGUgcHJvdGVjdGVkIHJlZ2lvbi4KPiA+ICsgICAgICAgIC0gc2l6ZS1o aSwgc2l6ZS1sbzogNjQtYml0IHNpemUgb2YgdGhlIHByb3RlY3RlZCByZWdpb24gaW4gYnl0ZXMu Cj4gCj4gVGhlc2UgdHdvIGNlbGxzIGVmZmVjdGl2ZWx5IGp1c3QgZHVwbGljYXRlIHRoZSByZWcg cHJvcGVydHkuCgpBZ3JlZWQsIHdpbGwgZHJvcCB0aGlzIHJlZ2lvbiBlbmNvZGluZy4KCj4gCj4g PiArICAgICAgICAtIHBlcm0taGk6IFBlcm1pc3Npb24gYml0bWFwIGZvciBXSURzIDE2Li4zMS4g VHdvIGJpdHMgcGVyIFdJRDoKPiA+ICsgICAgICAgICAgICAgICAgICAgICBiaXQgMiooV0lELTE2 KSAgID0gUmVhZCAgcGVybWlzc2lvbgo+ID4gKyAgICAgICAgICAgICAgICAgICAgIGJpdCAyKihX SUQtMTYpKzEgPSBXcml0ZSBwZXJtaXNzaW9uCj4gPiArICAgICAgICAgICAgICAgICAgIFNldCBi aXRzIGdyYW50IGFjY2Vzcy4gVXNlIDB4MCBmb3Igc3lzdGVtcyB3aXRoCj4gPiArICAgICAgICAg ICAgICAgICAgIHJpc2N2LG53b3JsZHMgPD0gMTYuCj4gPiArICAgICAgICAtIHBlcm0tbG86IFBl cm1pc3Npb24gYml0bWFwIGZvciBXSURzIDAuLjE1LiBUd28gYml0cyBwZXIgV0lEOgo+ID4gKyAg ICAgICAgICAgICAgICAgICAgIGJpdCAyKldJRCAgID0gUmVhZCAgcGVybWlzc2lvbgo+ID4gKyAg ICAgICAgICAgICAgICAgICAgIGJpdCAyKldJRCsxID0gV3JpdGUgcGVybWlzc2lvbgo+ID4gKyAg ICAgICAgICAgICAgICAgICBTZXQgYml0cyBncmFudCBhY2Nlc3MuCj4gCj4gQW5kIHRoZXNlIHR3 byBsb29rIGxpa2UgYSBsYXllcmluZyB2aW9sYXRpb24gdG8gbWUuIFdoeSBkb2VzIHRoZQo+IGNv bnN1bWVyIGNvbnRhaW4gaXRzIG93biBjb25maWd1cmF0aW9uIGluZm9ybWF0aW9uPyBJZiBmaXJt d2FyZSBwcm92aWRlcwo+IHRoaXMgdG8gcy1tb2RlLCBpdCBpcyBlaXRoZXIgdXNlbGVzcyAoYmVj YXVzZSBmaXJtd2FyZSBoYXMgYWxyZWFkeSBkb25lCj4gdGhlIGNvbmZpZ3VyYXRpb24pIG9yIGl0 IG1ha2VzIHRoZSBhY2Nlc3MgY29udHJvbCBwb2ludGxlc3MgYmVjYXVzZQo+IHMtbW9kZSBpcyBl eHBlY3RlZCB0byBwcm9ncmFtIGl0cyBvd24gYWNjZXNzLgoKWWVzIOKAlCBEVCBvbmx5IGRlc2Ny aWJlcyB0aGUgYWNjZXNzIHJ1bGVzLiBUaGUgd2dDaGVja2VyIHNsb3RzIGFyZSBwcm9ncmFtbWVk CmJ5IE0tbW9kZSBmaXJtd2FyZSAoT3BlblNCSSksIHdoaWNoIGhvbGRzIHRoZSB0cnVzdGVkIFdJ RC4KCnJpc2N2LHBtd2lkID0gPDM+OwpzaWZpdmUsdHJ1c3RlZHdpZCA9IDwzPgpNLW1vZGUgIDog V0lEMyAoc2V0cyBtbHdpZCB0byAwKQpTL1UtbW9kZTogV0lEMAoKSXQncyBmaW5lIGZvciBMaW51 eCB0byBzZWUgdGhlIGFjY2VzcyBydWxlLCBiZWNhdXNlIFdJRDAgaXMgbm90IHRoZSB0cnVzdGVk CldJRCBhbmQgdGhlcmVmb3JlIGNhbm5vdCBwcm9ncmFtIHRoZSB3Z0NoZWNrZXIgY29uZmlndXJh dGlvbiByZWdpc3RlcnMuCkZvciBkZW5pZWQgYWNjZXNzZXMsIHJlYWRzIHJldHVybiB6ZXJvIGRh dGEgYW5kIHdyaXRlcyBhcmUgaWdub3JlZC4KCj4gV2l0aCB0aGF0IGluIG1pbmQsIHRoZSBmaXJz dCA0IGNlbGxzIGNhbiBwcm9iYWJseSBqdXN0IGJlIHRyYW5zbXV0ZWQgdG8KPiBhIHNpbmdsZSBj ZWxsIHdpdGggcGxhdGZvcm0tc3BlY2lmaWMgdW5pcXVlIGlkZW50aWZpZXJzLgoKR29vZCBwb2lu dCwgZm9yIG1lbW9yeSBwYXJ0aXRpb24gdXNlIGNhc2UsIEkgcGxhbiB0byB1cGRhdGUgdGhlCmVu Y29kaW5nIHRvOgoKICBkZHI6IG1lbW9yeUA4MDAwMDAwMCB7CiAgICAgIGRldmljZV90eXBlID0g Im1lbW9yeSI7CiAgICAgIHJlZyA9IDwweDAgMHg4MDAwMDAwMCAweDAgMHg4MDAwMDAwMD47CiAg ICAgIGFjY2Vzcy1jb250cm9sbGVycyA9IDwmd2djaGVja2VyMiAwPiwgLy8gcGFydGl0aW9uIElE OiAwCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwmd2djaGVja2VyMiAxPiwgLy8gcGFydGl0 aW9uIElEOiAxCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwmd2djaGVja2VyMiAyPjsgLy8g cGFydGl0aW9uIElEOiAyCiAgfTsKICAKICB3Z2NoZWNrZXIyOiB3Z2NoZWNrZXJANDAwMDAwMDAg ewogICAgICBjb21wYXRpYmxlID0gInNpZml2ZSx3Z2NoZWNrZXIyIjsKICAgICAgcmVnID0gPDB4 MCAweDQwMDAwMDAwIDB4MCAweDEwMDA+OwogICAgICAjYWNjZXNzLWNvbnRyb2xsZXItY2VsbHMg PSA8MT47CiAgICAgICNhZGRyZXNzLWNlbGxzID0gPDI+OwogICAgICAjc2l6ZS1jZWxscyA9IDwy PjsKICAgICAgaW50ZXJydXB0cyA9IDw4MiBJUlFfVFlQRV9MRVZFTF9ISUdIPjsKICAgICAgaW50 ZXJydXB0LXBhcmVudCA9IDwmYXBsaWNfbT47CiAgCiAgICAgIHBhcnRpdGlvbkAwIHsKICAgICAg ICAgICAgICByZWcgPSA8MHgwIDB4ODAwMDAwMDAgMHgwIDB4NDAwMDAwMDA+OwogICAgICAgICAg ICAgIHNpZml2ZSxwYXJ0aXRpb24taWQgPSA8MD47CiAgICAgICAgICAgICAgLyogKHBlcm1faGks IHBlcm1fbG8sIGNvbmZpZykgKi8KICAgICAgICAgICAgICBzaWZpdmUscGFydGl0aW9uLXJ1bGUg PSA8MHgwIDB4MDAwMDAwY2YgMHgwZj47CiAgICAgIH07CiAgCiAgICAgIHBhcnRpdGlvbkAxIHsK ICAgICAgICAgICAgICByZWcgPSA8MHgwIDB4YzAwMDAwMDAgMHgwIDB4MDEwMDAwMDA+OwogICAg ICAgICAgICAgIHNpZml2ZSxwYXJ0aXRpb24taWQgPSA8MT47CiAgICAgICAgICAgICAgLyogKHBl cm1faGksIHBlcm1fbG8sIGNvbmZpZykgKi8KICAgICAgICAgICAgICBzaWZpdmUscGFydGl0aW9u LXJ1bGUgPSA8MHgwIDB4MDAwMDAwY2MgMHgwZj47CiAgICAgIH07CiAgCiAgICAgIHBhcnRpdGlv bkAyIHsKICAgICAgICAgICAgICByZWcgPSA8MHgwIDB4YzEwMDAwMDAgMHgwIDB4M2YwMDAwMDA+ OwogICAgICAgICAgICAgIHNpZml2ZSxwYXJ0aXRpb24taWQgPSA8Mj47CiAgICAgICAgICAgICAg LyogKHBlcm1faGksIHBlcm1fbG8sIGNvbmZpZykgKi8KICAgICAgICAgICAgICBzaWZpdmUscGFy dGl0aW9uLXJ1bGUgPSA8MHgwIDB4MDAwMDAwY2YgMHgwZj47CiAgICAgIH07CiAgfTsKCkkgaG9w ZSB0aGlzIHdvcmsgZm9yIHlvdS4KCj4gU3VyZWx5IHRoZSBlY2FsbCBpbnZvbHZlZCB3aXRoIGFj dHVhbGx5IHJlcXVlc3RpbmcgYWNjZXNzIG5lZWRzCj4gc29tZXRoaW5nIGxpa2UgdGhhdCBhbnl3 YXk/CgpJbiB0aGlzIGluaXRpYWwgc3VwcG9ydCwgdGhlcmUgaXMgbm8gc3VjaCBpbnRlcmZhY2Ug Zm9yIFMtbW9kZQp0byByZXF1ZXN0IHJlY29uZmlndXJhdGlvbiAtLSB3Z0NoZWNrZXJzIGFyZSBw cm9ncmFtbWVkIG9uY2UgYXQKYm9vdC10aW1lLgoKPiAKPiBUaGUgb25seSB2YWx1ZSBJIGNhbiBz ZWUgaW4gdGhpcyBpcyBpZiBzb21lIHdvcmxkcyB0aGF0IGEgYml0IG9mCj4gc29mdHdhcmUgaXMg cnVubmluZyBvbiBjYW4gYWNjZXNzIGEgcGVyaXBoZXJhbCAob3IgcGFydCB0aGVyZW9mKSBhbmQK PiBvdGhlcnMgY2FuJ3Q/IFRob3VnaCBwbGF0Zm9ybXMgbGlrZSB0aGF0IG1pZ2h0IGJlbmVmaXQg bW9yZSBmcm9tIGJlaW5nCj4gcmV3b3JrZWQgdG8gaGF2ZSBob21vZ2VuZW91cyBhY2Nlc3MhIEkn dmUgZ290IG5vIGlkZWEgaG93IGEgTGludXggZHJpdmVyCj4gZXRjIHdvdWxkIGhhbmRsZSB0aGUg b25seSBzb21lIENQVXMgYmVpbmcgcGVybWl0dGVkIHRvIGFjY2VzcyBhIHJlZ2lzdGVyCj4gcmVn aW9uLgoKT25lIHVzZSBjYXNlIGlzIEFQTElDLCB3aGljaCBuYXR1cmFsbHkgaGFzIHNlcGFyYXRl IHJvb3QtZG9tYWluCmFuZCBjaGlsZC1kb21haW4gcmVnaW9ucyBhbmQgc2hvdWxkIGJlIGNvbnRy b2xsZWQgYnkgTS1tb2RlIGFuZApTLW1vZGUgcmVzcGVjdGl2ZWx5LiBBIHdnQ2hlY2tlciBjYW4g cHJvdGVjdCB0aGVzZSByZWdpb25zCndpdGggZGlmZmVyZW50IGFjY2VzcyBwZXJtaXNzaW9ucywg Zm9yIGV4YW1wbGUgTS1tb2RlLW9ubHkgYWNjZXNzCmZvciB0aGUgcm9vdCBkb21haW4gYW5kIE0v Uy1tb2RlIGFjY2VzcyBmb3IgdGhlIGNoaWxkIGRvbWFpbi4KClRoZSBzYW1lIG1lY2hhbmlzbSBj YW4gYWxzbyBzdXBwb3J0IG11bHRpcGxlIHN1cGVydmlzb3IgZG9tYWlucwplLmcuIGZvciBhIFRF RS4gQXMgc2hvd24gaW4gdGhpcmQgZXhhbXBsZSwgYSBEUkFNIHN1Yi1yZWdpb24gbWF5CmJlIGNh cnZlZCBvdXQgZXhjbHVzaXZlbHkgZm9yIHRoZSBURUUuCgo+IAo+ID4gKyAgICAgICAgLSBjb25m aWc6ICBTbG90IGNvbmZpZ3VyYXRpb24gYml0czoKPiA+ICsgICAgICAgICAgICAgICAgICAgICBC aXQgMCAoRVIpOiBSZXBvcnQgcmVhZCAgdmlvbGF0aW9ucyBhcyBidXMgZXJyb3JzCj4gPiArICAg ICAgICAgICAgICAgICAgICAgQml0IDEgKEVXKTogUmVwb3J0IHdyaXRlIHZpb2xhdGlvbnMgYXMg YnVzIGVycm9ycwo+ID4gKyAgICAgICAgICAgICAgICAgICAgIEJpdCAyIChJUik6IFJlcG9ydCBy ZWFkICB2aW9sYXRpb25zIHZpYSBpbnRlcnJ1cHQKPiA+ICsgICAgICAgICAgICAgICAgICAgICBC aXQgMyAoSVcpOiBSZXBvcnQgd3JpdGUgdmlvbGF0aW9ucyB2aWEgaW50ZXJydXB0Cj4gPiArICAg ICAgICAgICAgICAgICAgICAgQml0IDQgKEwpOiAgTG9jayBiaXQgLSBwcmV2ZW50cyBmdXJ0aGVy IG1vZGlmaWNhdGlvbgo+ID4gKyAgICAgICAgICAgICAgICAgICBCaXRzIDUuLjMxIGFyZSByZXNl cnZlZCBhbmQgbXVzdCBiZSB6ZXJvLgo+IAo+IEZvciB0aGUgbmV4dCByZXZpc2lvbiBvZiB0aGlz LCBJIHJlYWxseSB3b3VsZCBsaWtlIHRvIHNlZSB0aGUgYWNjZXNzCj4gY29udHJvbGxlciBkcml2 ZXIuCgpTdXJlLCB0aGUgZmR0IGRyaXZlciB3aWxsIGJlIGFkZGVkIHRvIE9wZW5TQkkuIChOb3Qg aW4gdGhlIGtlcm5lbCB3aGljaApydW5zIHVudHJ1c3RlZCBXSUQpLgoKPiAKPiA+ICsKPiA+ICsg ICAgICBNdWx0aXBsZSBlbnRyaWVzIG1heSBiZSBsaXN0ZWQgdG8gYXBwbHkgZGlmZmVyZW50IHBv bGljaWVzIHRvCj4gPiArICAgICAgZGlmZmVyZW50IGFkZHJlc3MgcmFuZ2VzLCBpbmNsdWRpbmcg c3ViLXJhbmdlcyB3aXRoaW4gYSBzaW5nbGUKPiA+ICsgICAgICBwaHlzaWNhbCByZXNvdXJjZS4K PiA+ICsKPiA+ICtyZXF1aXJlZDoKPiA+ICsgIC0gY29tcGF0aWJsZQo+ID4gKyAgLSByZWcKPiA+ ICsgIC0gJyNhY2Nlc3MtY29udHJvbGxlci1jZWxscycKPiA+ICsKPiA+ICthZGRpdGlvbmFsUHJv cGVydGllczogZmFsc2UKPiA+ICsKPiA+ICtleGFtcGxlczoKPiA+ICsgIC0gfAo+ID4gKyAgICAj aW5jbHVkZSA8ZHQtYmluZGluZ3MvaW50ZXJydXB0LWNvbnRyb2xsZXIvaXJxLmg+Cj4gPiArCj4g PiArICAgIC8vIEV4YW1wbGUgMTogU2luZ2xlIGRldmljZSBwcm90ZWN0aW9uCj4gPiArICAgIC8v IFdJRCAwIGFuZCBXSUQgMyBoYXZlIFJXIGFjY2VzcyB0byBVQVJUOyBlcnJvcnMgYW5kIElSUXMg cmVwb3J0ZWQuCj4gPiArCj4gPiArICAgIGNwdXMgewo+ID4gKyAgICAgICAgI2FkZHJlc3MtY2Vs bHMgPSA8MT47Cj4gPiArICAgICAgICAjc2l6ZS1jZWxscyA9IDwwPjsKPiA+ICsgICAgICAgIHRp bWViYXNlLWZyZXF1ZW5jeSA9IDwxMDAwMDAwPjsKPiA+ICsgICAgICAgIHJpc2N2LG53b3JsZHMg PSA8ND47Cj4gPiArICAgICAgICBzaWZpdmUsdHJ1c3RlZHdpZCA9IDwzPjsKPiA+ICsKPiA+ICsg ICAgICAgIGNwdUAwIHsKPiA+ICsgICAgICAgICAgICBkZXZpY2VfdHlwZSA9ICJjcHUiOwo+ID4g KyAgICAgICAgICAgIHJlZyA9IDwwPjsKPiA+ICsgICAgICAgICAgICBjb21wYXRpYmxlID0gInJp c2N2IjsKPiA+ICsgICAgICAgICAgICByaXNjdixpc2EgPSAicnY2NGltYWMiOwo+ID4gKyAgICAg ICAgfTsKPiA+ICsgICAgfTsKPiA+ICsKPiA+ICsgICAgc29jIHsKPiA+ICsgICAgICAgICNhZGRy ZXNzLWNlbGxzID0gPDI+Owo+ID4gKyAgICAgICAgI3NpemUtY2VsbHMgPSA8Mj47Cj4gPiArCj4g PiArICAgICAgICB1YXJ0OiB1YXJ0QDFjMTAwMCB7Cj4gPiArICAgICAgICAgICAgY29tcGF0aWJs ZSA9ICJuczE2NTUwYSI7Cj4gPiArICAgICAgICAgICAgcmVnID0gPDB4MCAweDAwMWMxMDAwIDB4 MCAweDEwMDA+Owo+ID4gKyAgICAgICAgICAgIHJlZy1uYW1lcyA9ICJjb250cm9sIjsKPiA+ICsg ICAgICAgICAgICBpbnRlcnJ1cHRzID0gPDEwIElSUV9UWVBFX0xFVkVMX0hJR0g+Owo+ID4gKyAg ICAgICAgICAgIC8vIFdJRCAwLDMgUlc7IHJlcG9ydCBlcnJvcnMrSVJRcwo+ID4gKyAgICAgICAg ICAgIGFjY2Vzcy1jb250cm9sbGVycyA9IDwmd2djaGVja2VyMAo+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAweDAgMHgwMDFjMTAwMCAweDAgMHgwMDAwMTAwMAo+ID4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAgMHgwMDAwMDBjMyAweDBmPjsKPiA+ ICsgICAgICAgIH07Cj4gPiArCj4gPiArICAgICAgICB3Z2NoZWNrZXIwOiB3Z2NoZWNrZXJAMWMy MDAwIHsKPiAKPiBJIHRoaW5rIHRoaXMgc2hvdWxkIGJlIGFjY2Vzcy1jb250cm9sbGVyQAoKV2ls bCB1cGRhdGUuCgpUaGFua3MsClBldGVyIExpbgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KbGludXgtcmlzY3YgbWFpbGluZyBsaXN0CmxpbnV4LXJpc2N2 QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9s aXN0aW5mby9saW51eC1yaXNjdgo= From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CD203377AA2 for ; Mon, 27 Jul 2026 07:52:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.170 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785138777; cv=none; b=GMSp0I2fBE2UBwHxjXNPWDVzRZBxcV24Ai19zQqazIl6J8hu3uC2qchMNq6KtW1Gdf1KTrfKnOD/q0sB1zUq6j3EEAC2ZJBYLdFFSjunnrpU/gfW1jezLNqhaA+XjViK2Kj3cVFTdCGbD5C00ic4PvmiIRuKChN8hMGHi9/i9+E= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785138777; c=relaxed/simple; bh=1u8Y4AyQQ4ig4jZQ0uAt1J3U/PBdgVNxXsWP8C6Rikg=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=IgROm3K8ohw+tzNKpvgN3VfSnjWFneAJm/ToQHq8tdjZn/lvzVrlAU5fAnbW9EsrbTJzGnIKhvc0Zlq7XNodDs6tPjzVfh+9L102akvbItqu2dhlz2Iv6qLo1wD5pRZOHa9BrQABviXl6CkPAWBULYkZORhIzfC88H8qTxJJSUI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=sifive.com; spf=pass smtp.mailfrom=sifive.com; dkim=pass (2048-bit key) header.d=sifive.com header.i=@sifive.com header.b=LmMl/OUm; arc=none smtp.client-ip=209.85.214.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=sifive.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=sifive.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=sifive.com header.i=@sifive.com header.b="LmMl/OUm" Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-2cab973140bso31754085ad.3 for ; Mon, 27 Jul 2026 00:52:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; t=1785138775; x=1785743575; darn=vger.kernel.org; h=in-reply-to:content-transfer-encoding:content-disposition :content-type:mime-version:references:message-id:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to:content-type; bh=HbSDbVaDmzeDl40IpS/n9zeYRhfzN1ldtzWWLApwZkk=; b=LmMl/OUmFYN6IMegYtEfQ/LN5dGfKcG57La96mNtzOBAbT2sLEiSuP1h8I7+F5ZGOR nua7VjBY+/VEMtWDkUZB9p7KIIQQkYiOK56DT3Na0ZGnj2DVTO11uXGRR+4Stq6vycGo 77G1TDcV0o0wXRGr3tcgp7xo9+hHkL9QbNozxFXQ7ktjiOZ8DrxXih3oTMPJ3DWSl/E6 DvEHdkJW2wj1sRwGyz56usjh5d3LYQc39rM/LP5EaZKs8kwt4unO/3vYPr+R+C3H4koe XK8lmhShGJYVQb1T22NaDzPfpu3xwJoo4AHTeCY9H6hVnIc2iBULnJ1+N/T8B+x43DBT 0mpA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785138775; x=1785743575; h=in-reply-to:content-transfer-encoding:content-disposition :content-type:mime-version:references:message-id:subject:cc:to:from :date:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to:content-type; bh=HbSDbVaDmzeDl40IpS/n9zeYRhfzN1ldtzWWLApwZkk=; b=NRIA5AcSE1nbVAsMD+cX0/2T/mOMnbNytUSrHrfPFDuGl5aQeQRJco/rQP7l0RM8ix fd9ZDO6nzL4oSU/JyN/sjFXlmZkkkdXUQXlURXJc1HHXqLd8Gb9JjImIROBAbqcKoN9k yqAnCoE1qBs4ckHG01C6YtSRGDAcYxSxmC9mG2GMOd0QwObiaHlGbL1wSQTgs7Y44+xr lWDhE3T7KcLJIQx34/Cs5fF2UG5sFCA1tKC5IlpgXodRrAZ+sLA+lQK3LA+WBhidblS5 kqBKr9fF0LsMhKnXnD9gVQqwQj0H4NJbKqYFzkoC+lOvCILYpUtP9Ixro76SvjnIuOyb wFcQ== X-Gm-Message-State: AOJu0YxCVYazEl6wvqQI0yaHZYdRib1Lrryma7qa4agPsjylJ0VTcoA6 RgkihHO5nbRanGX6/397xUIoky2RwOziZGfQallHwDjx5ky19Nrm8TkKZ3++S7pQBhQ= X-Gm-Gg: AR+sD13qXJoihyfyjZTpGvNRgE387/NxO1+8Rxo8E4sFCJzTFJL/I9KAwq8oisqxesg wqfIQz7R3/+YqtYANlqWUz0GTUOTz9NC8F2mTfFROGpF0iVmnrDqHoOh6o++tvRElGAhqpOIj9L SnvEphu91TzwccT/Pz2YVkuef7ZqAR/Q7IhLVxuGlVeRPk8C/tZl94fXBL5aEjgst26IkcoOz/4 s4b/Edzqh7Q7R2D29Y83GKeniD8W/vwcH060WyLz2xFkP+zlfBHg+lbs7gXCYayO8iCy11pV1AC gPR6kUxrVqVrMxJM0PfEETzNLeO7rLpDmvIUWnDMcdHMMgU+50nM6uHWWcx0/+VP+RhH+Trr+kP fBYAgStsPTAk3BLcfBjeozaBus98KKIw3cRsFOmLGyor7HsthoEO1ta6LL60j114fix/NtSxT7Z 6G X-Received: by 2002:a17:902:fd87:b0:2cc:1452:a014 with SMTP id d9443c01a7336-2cfde7bca17mr68252865ad.18.1785138775086; Mon, 27 Jul 2026 00:52:55 -0700 (PDT) Received: from plin-1878 ([136.226.240.191]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2cfde7bc57asm30513145ad.45.2026.07.27.00.52.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Jul 2026 00:52:54 -0700 (PDT) Date: Mon, 27 Jul 2026 15:52:46 +0800 From: Yu-Chien Peter Lin To: Conor Dooley Cc: devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, samuel.holland@sifive.com, dlan@kernel.org, guodong@riscstar.com, dfustini@oss.tenstorrent.com, michal.simek@amd.com, junhui.liu@pigmoral.tech, darshan.prajapati@einfochips.com, akpm@linux-foundation.org, zhangchunyan@iscas.ac.cn, luxu.kernel@bytedance.com, pincheng.plct@isrc.iscas.ac.cn, nick.hu@sifive.com, jim.shu@sifive.com, zong.li@sifive.com, greentime.hu@sifive.com, robin.randhawa@sifive.com, scott@riscstar.com, dave.patel@riscstar.com, raymond.mao@riscstar.com Subject: Re: [RFC PATCH 3/3] dt-bindings: sifive: Add WorldGuard Checker Message-ID: References: <20260619105834.1277302-1-peter.lin@sifive.com> <20260619105834.1277302-4-peter.lin@sifive.com> <20260622-exemplary-navigate-88985b1444f5@spud> Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20260622-exemplary-navigate-88985b1444f5@spud> Hi Conor, On Mon, Jun 22, 2026 at 06:50:28PM +0100, Conor Dooley wrote: > On Fri, Jun 19, 2026 at 06:58:34PM +0800, Yu-Chien Peter Lin wrote: > > Add DT binding for SiFive wgChecker2, a hardware firewall enforcing > > WID-based access control in RISC-V Worlds. Provides checker slots to > > program per-WID permissions for downstream resources, with optional > > sub-range partitioning. > > > > Link: https://github.com/riscvarchive/security/blob/main/papers/worldguard%20proposal.pdf > > Signed-off-by: Yu-Chien Peter Lin > > Reviewed-by: Zong Li > > Reviewed-by: Jim Shu > > --- > > .../devicetree/bindings/riscv/worlds.yaml | 9 + > > .../bindings/sifive/sifive,wgchecker2.yaml | 237 ++++++++++++++++++ > > 2 files changed, 246 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/sifive/sifive,wgchecker2.yaml > > > > diff --git a/Documentation/devicetree/bindings/riscv/worlds.yaml b/Documentation/devicetree/bindings/riscv/worlds.yaml > > index cc8b3747591e..c39a06c2dd8d 100644 > > --- a/Documentation/devicetree/bindings/riscv/worlds.yaml > > +++ b/Documentation/devicetree/bindings/riscv/worlds.yaml > > @@ -34,6 +34,14 @@ properties: > > minimum: 2 > > maximum: 64 > > > > + sifive,trustedwid: > > What's sifive specific about this? Wouldn't other vendors also have > trusted worlds? The property is intended to identify the trusted WID, i.e. the trusted agent authorized for programming WorldGuard components such as wgChecker according to the policy specified in the device tree (see sifive,partition-rule below). wgChecker is a proprietary Worlds-aware firewall and is not part of the RISC-V ISA specification, so the Worlds extension itself does not define a corresponding concept of a trusted world for this. > > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + maximum: 31 > > + description: | > > + The World ID (WID) designated as the trusted WID for this platform. > > + Transactions tagged with this WID are authorized to access and configure > > + WorldGuard blocks, including wgCheckers and wgMarkers. > > + > > additionalProperties: true > > > > examples: > > @@ -44,6 +52,7 @@ examples: > > #size-cells = <0>; > > timebase-frequency = <1000000>; > > riscv,nworlds = <4>; > > + sifive,trustedwid = <3>; > > > > cpu@0 { > > device_type = "cpu"; > > diff --git a/Documentation/devicetree/bindings/sifive/sifive,wgchecker2.yaml b/Documentation/devicetree/bindings/sifive/sifive,wgchecker2.yaml > > new file mode 100644 > > index 000000000000..043c748385ed > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/sifive/sifive,wgchecker2.yaml > > @@ -0,0 +1,237 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +# Copyright (C) 2026 SiFive, Inc. > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/sifive/sifive,wgchecker2.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: SiFive WorldGuard Checker > > + > > +maintainers: > > + - Yu-Chien Peter Lin > > + > > +description: | > > + The RISC-V Worlds ISA extension defines World IDs (WIDs) as architectural > > + identifiers that tag each system transaction with its originating context. > > + System integrators assign WIDs to execution contexts such as privilege modes, > > + trusted execution environments, or other isolation boundaries. > > + > > + The SiFive WorldGuard Checker is a hardware firewall positioned in the > > + system interconnect fabric. It inspects every transaction, evaluating the > > + WID against access control policies encoded in checker slots for each > > + protected resource. Transactions from unauthorized WIDs are blocked and > > + reported as bus errors, interrupts, or both. > > + > > + This enables spatial partitioning of memory regions and memory-mapped devices > > + across execution contexts. Different address ranges can enforce distinct > > + policies, allowing isolated workloads to coexist with hardware-enforced > > + protection. > > + > > + The wgChecker acts as an access-controller provider as defined in the > > + access-controllers framework. Protected devices are consumers that declare > > + their access policy via the access-controllers property. The hardware > > + supports up to 32 World IDs. > > + > > + The World ID authorized to configure WorldGuard blocks is specified by the > > + sifive,trustedwid property in the /cpus node. > > + > > +allOf: > > + - $ref: /schemas/access-controllers/access-controllers.yaml# > > + > > +properties: > > + compatible: > > + const: sifive,wgchecker2 > > Missing device specific compatibles. We will test on qemu, can I add "qemu,wgchecker2" here? > > > + > > + reg: > > + maxItems: 1 > > + description: > > + Base address and size of the wgChecker memory-mapped I/O registers. > > + > > + interrupts: > > + maxItems: 1 > > + description: > > + Interrupt line asserted when a WID access violation is detected and > > + interrupt reporting is enabled in the slot configuration (IR or IW > > + bits set). > > + > > + '#access-controller-cells': > > + const: 7 > > + description: | > > + Specifier for one access-control rule, encoded as seven u32 cells: > > + > > + > > + where: > > + - addr-hi, addr-lo: 64-bit base address of the protected region. > > + - size-hi, size-lo: 64-bit size of the protected region in bytes. > > These two cells effectively just duplicate the reg property. Agreed, will drop this region encoding. > > > + - perm-hi: Permission bitmap for WIDs 16..31. Two bits per WID: > > + bit 2*(WID-16) = Read permission > > + bit 2*(WID-16)+1 = Write permission > > + Set bits grant access. Use 0x0 for systems with > > + riscv,nworlds <= 16. > > + - perm-lo: Permission bitmap for WIDs 0..15. Two bits per WID: > > + bit 2*WID = Read permission > > + bit 2*WID+1 = Write permission > > + Set bits grant access. > > And these two look like a layering violation to me. Why does the > consumer contain its own configuration information? If firmware provides > this to s-mode, it is either useless (because firmware has already done > the configuration) or it makes the access control pointless because > s-mode is expected to program its own access. Yes — DT only describes the access rules. The wgChecker slots are programmed by M-mode firmware (OpenSBI), which holds the trusted WID. riscv,pmwid = <3>; sifive,trustedwid = <3> M-mode : WID3 (sets mlwid to 0) S/U-mode: WID0 It's fine for Linux to see the access rule, because WID0 is not the trusted WID and therefore cannot program the wgChecker configuration registers. For denied accesses, reads return zero data and writes are ignored. > With that in mind, the first 4 cells can probably just be transmuted to > a single cell with platform-specific unique identifiers. Good point, for memory partition use case, I plan to update the encoding to: ddr: memory@80000000 { device_type = "memory"; reg = <0x0 0x80000000 0x0 0x80000000>; access-controllers = <&wgchecker2 0>, // partition ID: 0 <&wgchecker2 1>, // partition ID: 1 <&wgchecker2 2>; // partition ID: 2 }; wgchecker2: wgchecker@40000000 { compatible = "sifive,wgchecker2"; reg = <0x0 0x40000000 0x0 0x1000>; #access-controller-cells = <1>; #address-cells = <2>; #size-cells = <2>; interrupts = <82 IRQ_TYPE_LEVEL_HIGH>; interrupt-parent = <&aplic_m>; partition@0 { reg = <0x0 0x80000000 0x0 0x40000000>; sifive,partition-id = <0>; /* (perm_hi, perm_lo, config) */ sifive,partition-rule = <0x0 0x000000cf 0x0f>; }; partition@1 { reg = <0x0 0xc0000000 0x0 0x01000000>; sifive,partition-id = <1>; /* (perm_hi, perm_lo, config) */ sifive,partition-rule = <0x0 0x000000cc 0x0f>; }; partition@2 { reg = <0x0 0xc1000000 0x0 0x3f000000>; sifive,partition-id = <2>; /* (perm_hi, perm_lo, config) */ sifive,partition-rule = <0x0 0x000000cf 0x0f>; }; }; I hope this work for you. > Surely the ecall involved with actually requesting access needs > something like that anyway? In this initial support, there is no such interface for S-mode to request reconfiguration -- wgCheckers are programmed once at boot-time. > > The only value I can see in this is if some worlds that a bit of > software is running on can access a peripheral (or part thereof) and > others can't? Though platforms like that might benefit more from being > reworked to have homogeneous access! I've got no idea how a Linux driver > etc would handle the only some CPUs being permitted to access a register > region. One use case is APLIC, which naturally has separate root-domain and child-domain regions and should be controlled by M-mode and S-mode respectively. A wgChecker can protect these regions with different access permissions, for example M-mode-only access for the root domain and M/S-mode access for the child domain. The same mechanism can also support multiple supervisor domains e.g. for a TEE. As shown in third example, a DRAM sub-region may be carved out exclusively for the TEE. > > > + - config: Slot configuration bits: > > + Bit 0 (ER): Report read violations as bus errors > > + Bit 1 (EW): Report write violations as bus errors > > + Bit 2 (IR): Report read violations via interrupt > > + Bit 3 (IW): Report write violations via interrupt > > + Bit 4 (L): Lock bit - prevents further modification > > + Bits 5..31 are reserved and must be zero. > > For the next revision of this, I really would like to see the access > controller driver. Sure, the fdt driver will be added to OpenSBI. (Not in the kernel which runs untrusted WID). > > > + > > + Multiple entries may be listed to apply different policies to > > + different address ranges, including sub-ranges within a single > > + physical resource. > > + > > +required: > > + - compatible > > + - reg > > + - '#access-controller-cells' > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + #include > > + > > + // Example 1: Single device protection > > + // WID 0 and WID 3 have RW access to UART; errors and IRQs reported. > > + > > + cpus { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + timebase-frequency = <1000000>; > > + riscv,nworlds = <4>; > > + sifive,trustedwid = <3>; > > + > > + cpu@0 { > > + device_type = "cpu"; > > + reg = <0>; > > + compatible = "riscv"; > > + riscv,isa = "rv64imac"; > > + }; > > + }; > > + > > + soc { > > + #address-cells = <2>; > > + #size-cells = <2>; > > + > > + uart: uart@1c1000 { > > + compatible = "ns16550a"; > > + reg = <0x0 0x001c1000 0x0 0x1000>; > > + reg-names = "control"; > > + interrupts = <10 IRQ_TYPE_LEVEL_HIGH>; > > + // WID 0,3 RW; report errors+IRQs > > + access-controllers = <&wgchecker0 > > + 0x0 0x001c1000 0x0 0x00001000 > > + 0x0 0x000000c3 0x0f>; > > + }; > > + > > + wgchecker0: wgchecker@1c2000 { > > I think this should be access-controller@ Will update. Thanks, Peter Lin