Re: [RFC PATCH v2 3/5] platform/generic: Initialise MPT at boot

Pawandeep Oza <[email protected]> Tue, 28 Jul 2026 10:53:45 -0700
Newsgroups org.infradead.lists.opensbi
Message-ID <CAAVgOk+rvAbyKAApWub-3KrCNVjcMb8ggaS_bTwGdN_aTPMk1g@mail.gmail.com>
T24gTW9uLCBKdWwgMjcsIDIwMjYgYXQgNjo1NuKAr0FNIFJhaHVsIFBhdGhhawo8cmFodWwucGF0
aGFrQG9zcy5xdWFsY29tbS5jb20+IHdyb3RlOgo+Cj4gSW50ZWdyYXRlcyBNUFQgaW5pdGlhbGlz
YXRpb24gaW50byB0aGUgZ2VuZXJpYyBwbGF0Zm9ybSBib290IGZsb3cuCj4KPiBtcHRfZWFybHlf
aW5pdCgpIHByb2JlcyBmb3IgU01NUFQgZHVyaW5nIGNvbGQtYm9vdCBlYXJseSBpbml0IGFuZAo+
IGluaXRpYWxpc2VzIHRoZSBzdHJ1Y3R1cmVzIHJlcXVpcmVkIHRvIGJ1aWxkIE1QVCB0YWJsZXMu
Cj4KPiBtcHRfZmluYWxfaW5pdCgpIGNyZWF0ZXMgdGhlIHJvb3Qgc3VwZXJ2aXNvciBkb21haW4g
d2hpY2ggaXMgbWFwcGluZyBhbGwKPiBwaHlzaWNhbCBtZW1vcnkgd2l0aCB0aGUgZmlybXdhcmUg
cmVnaW9uIGV4cGxjaXRseSBkZW5pZWQgdG8gUy1tb2RlIGFuZAo+IGFkZHMgc3VwcG9ydCBmb3Ig
YW4gTVBUIGRvbWFpbiBmb3IgZWFjaCBhZGRpdGlvbmFsIHJlZ2lzdGVyZWQgU0JJIGRvbWFpbi4K
Pgo+IFRoZSBoZWFwIGJ1ZGdldCBpcyBleHRlbmRlZCB0byByZXNlcnZlIHNwYWNlIGZvciBNUFQg
dGFibGVzLgo+Cj4gV2l0aCB0aGlzIHBhdGNoIE1QVCB0YWJsZXMgYXJlIGJ1aWx0IGF0IGJvb3Qu
Cj4KPiBTaWduZWQtb2ZmLWJ5OiBSYWh1bCBQYXRoYWsgPHJhaHVsLnBhdGhha0Bvc3MucXVhbGNv
bW0uY29tPgo+IC0tLQo+ICBwbGF0Zm9ybS9nZW5lcmljL3BsYXRmb3JtLmMgfCAxMDEgKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gIDEgZmlsZSBjaGFuZ2VkLCAxMDEgaW5z
ZXJ0aW9ucygrKQo+Cj4gZGlmZiAtLWdpdCBhL3BsYXRmb3JtL2dlbmVyaWMvcGxhdGZvcm0uYyBi
L3BsYXRmb3JtL2dlbmVyaWMvcGxhdGZvcm0uYwo+IGluZGV4IDFkZjAyODBkLi5iOWE3MTViNiAx
MDA2NDQKPiAtLS0gYS9wbGF0Zm9ybS9nZW5lcmljL3BsYXRmb3JtLmMKPiArKysgYi9wbGF0Zm9y
bS9nZW5lcmljL3BsYXRmb3JtLmMKPiBAQCAtMTcsNiArMTcsOSBAQAo+ICAjaW5jbHVkZSA8c2Jp
L3NiaV9zdHJpbmcuaD4KPiAgI2luY2x1ZGUgPHNiaS9zYmlfc3lzdGVtLmg+Cj4gICNpbmNsdWRl
IDxzYmkvc2JpX3RsYi5oPgo+ICsjaW5jbHVkZSA8c2JpL3NiaV9tcHQuaD4KPiArI2luY2x1ZGUg
PHNiaS9zYmlfZG9tYWluLmg+Cj4gKyNpbmNsdWRlIDxzYmkvc2JpX2NvbnNvbGUuaD4KPiAgI2lu
Y2x1ZGUgPHNiaV91dGlscy9jYWNoZS9mZHRfY21vX2hlbHBlci5oPgo+ICAjaW5jbHVkZSA8c2Jp
X3V0aWxzL2ZkdC9mZHRfZG9tYWluLmg+Cj4gICNpbmNsdWRlIDxzYmlfdXRpbHMvZmR0L2ZkdF9k
cml2ZXIuaD4KPiBAQCAtMzMsNiArMzYsODYgQEAKPiAgLyogTGlzdCBvZiBwbGF0Zm9ybSBvdmVy
cmlkZSBtb2R1bGVzIGdlbmVyYXRlZCBhdCBjb21waWxlIHRpbWUgKi8KPiAgZXh0ZXJuIGNvbnN0
IHN0cnVjdCBmZHRfZHJpdmVyICpjb25zdCBwbGF0Zm9ybV9vdmVycmlkZV9tb2R1bGVzW107Cj4K
PiArLyoKPiArICogbXB0X2Vhcmx5X2luaXQoKTogRGV0ZWN0cyB0aGUgU01NUFQgbW9kZSBhbmQg
aW5pdGlhbGl6ZXMgdGhlCj4gKyAqIHN0cnVjdHVyZXMgKG5vdCBNUFQgdGFibGVzKSByZXF1cmll
ZCB0byBwcmVwYXJlIE1QVCB0YWJsZXMgYW5kCj4gKyAqIGRvbWFpbiBwcm9ncmFtbWluZy4KPiAr
ICovCj4gK2ludCBtcHRfZWFybHlfaW5pdChib29sIGNvbGRfYm9vdCkKPiArewo+ICsgICAgICAg
aW50IHJjOwo+ICsKPiArICAgICAgIGlmICghY29sZF9ib290KQo+ICsgICAgICAgICAgICAgICBy
ZXR1cm4gMDsKPiArCj4gKyAgICAgICByYyA9IHNiaV9tcHRfaW5pdCgpOwo+ICsgICAgICAgaWYg
KHJjID09IFNCSV9FTk9ERVYpCj4gKyAgICAgICAgICAgICAgIHJldHVybiAwOwo+ICsKPiArICAg
ICAgIHJldHVybiByYzsKPiArfQo+ICsKPiArLyoKPiArICogbXB0X2ZpbmFsX2luaXQoKTogUGVy
Zm9ybXMgdGhlIGZpbmFsIGluaXRpYWx6YXRpb24gaW5jbHVkaW5nCj4gKyAqIGNyZWF0aW9uIG9m
IFJvb3Qgc3VwZXJ2aXNvciBkb21haW4uCj4gKyAqLwo+ICtpbnQgbXB0X2ZpbmFsX2luaXQoYm9v
bCBjb2xkX2Jvb3QpCj4gK3sKPiArICAgICAgIGludCByYzsKPiArICAgICAgIHUzMiBzZGlkOwo+
ICsgICAgICAgc3RydWN0IHNiaV9kb21haW4gKmRvbSwgKnJvb3RfZG9tOwo+ICsgICAgICAgc3Ry
dWN0IHNiaV9tcHRfZG9tYWluX2NvbmZpZyBjZmc7Cj4gKwo+ICsgICAgICAgaWYgKCFjb2xkX2Jv
b3QpCj4gKyAgICAgICAgICAgICAgIHJldHVybiAwOwo+ICsKPiArICAgICAgIC8qIFNNTVBUIG1h
eSBiZSB1bmF2YWlsYWJsZSAqLwo+ICsgICAgICAgaWYgKCFzYmlfbXB0X2N0cmxfZ2V0KCktPnJl
YWR5KQo+ICsgICAgICAgICAgICAgICByZXR1cm4gMDsKPiArCj4gKyAgICAgICAvKgo+ICsgICAg
ICAgICogQ3JlYXRlIE1QVCBkb21haW4gZm9yIFJvb3QgZG9tYWluLgo+ICsgICAgICAgICoKPiAr
ICAgICAgICAqIFJvb3QgZG9tYWluIG1hcHMgYWxsIHBoeXNpY2FsIG1lbW9yeSBzbyB0aGUKPiAr
ICAgICAgICAqIGZpcm13YXJlIHJlZ2lvbiBtdXN0IGJlIGV4cGxpY2l0bHkgZGVuaWVkIHRvIFMt
bW9kZS4KPiArICAgICAgICAqCj4gKyAgICAgICAgKiByZWdpb25zIHBvaW50ZXIgaXMgTlVMTCBh
bmQgbnJlZ2lvbnMgaXMgMCBzaW5jZSB0aGVyZQo+ICsgICAgICAgICogYXJlIG5vIG90aGVyIHJl
Z2lvbnMgb3RoZXIgdGhhbiByZXNwZWN0aXZlIFNCSSBkb21haW4gZm9yIG1hcHBpbmcuCj4gKyAg
ICAgICAgKi8KPiArICAgICAgIHJvb3RfZG9tID0gc2JpX2RvbWFpbl90aGlzaGFydF9wdHIoKTsK
PiArICAgICAgIGNmZy5zYmlfZG9tID0gcm9vdF9kb207Cj4gKyAgICAgICBjZmcueHdyID0gU0JJ
X01QVF9QRVJNX1JXWDsKPiArICAgICAgIGNmZy5md19wcm90ZWN0ID0gdHJ1ZTsKPiArICAgICAg
IGNmZy5yZWdpb25zID0gTlVMTDsKPiArICAgICAgIGNmZy5ucmVnaW9ucyA9IDA7Cj4gKwo+ICsg
ICAgICAgcmMgPSBzYmlfbXB0X2RvbWFpbl9jcmVhdGUoJmNmZywgJnNkaWQpOwo+ICsgICAgICAg
aWYgKHJjKSB7Cj4gKyAgICAgICAgICAgICAgIHNiaV9wcmludGYoIm1wdDogUm9vdCBkb21haW4g
Y3JlYXRlIGZhaWxlZCByYz0lZFxuIiwgcmMpOwo+ICsgICAgICAgICAgICAgICByZXR1cm4gcmM7
Cj4gKyAgICAgICB9Cj4gKwo+ICsgICAgICAgc2JpX21lbXNldCgmY2ZnLCAwLCBzaXplb2YoY2Zn
KSk7Cj4gKwo+ICsgICAgICAgLyogQ3JlYXRlIE1QVCBkb21haW4gZm9yIGFsbCBvdGhlciByZWdp
c3RlcmVkIFNCSSBkb21haW5zLiAqLwo+ICsgICAgICAgc2JpX2RvbWFpbl9mb3JfZWFjaChkb20p
IHsKPiArICAgICAgICAgICAgICAgaWYgKGRvbSA9PSByb290X2RvbSkKPiArICAgICAgICAgICAg
ICAgICAgICAgICBjb250aW51ZTsKPiArCj4gKyAgICAgICAgICAgICAgIGNmZy5zYmlfZG9tID0g
ZG9tOwo+ICsgICAgICAgICAgICAgICBjZmcueHdyID0gU0JJX01QVF9QRVJNX1JXWDsKPiArICAg
ICAgICAgICAgICAgY2ZnLmZ3X3Byb3RlY3QgPSBmYWxzZTsKPiArICAgICAgICAgICAgICAgY2Zn
LnJlZ2lvbnMgPSBOVUxMOwo+ICsgICAgICAgICAgICAgICBjZmcubnJlZ2lvbnMgPSAwOwo+ICsK
PiArICAgICAgICAgICAgICAgcmMgPSBzYmlfbXB0X2RvbWFpbl9jcmVhdGUoJmNmZywgJnNkaWQp
Owo+ICsgICAgICAgICAgICAgICBpZiAocmMpCj4gKyAgICAgICAgICAgICAgICAgICAgICAgc2Jp
X3ByaW50ZigibXB0OiBkb21haW4gJyVzJyBmYWlsZWQgcmM9JWRcbiIsIGRvbS0+bmFtZSwgcmMp
Owo+ICsgICAgICAgfQo+ICsKPiArICAgICAgIHJldHVybiAwOwo+ICt9Cj4gKwo+ICBzdGF0aWMg
dTMyIGZ3X3BsYXRmb3JtX2NhbGN1bGF0ZV9oZWFwX3NpemUodTMyIGhhcnRfY291bnQpCj4gIHsK
PiAgICAgICAgIHUzMiBoZWFwX3NpemU7Cj4gQEAgLTQyLDYgKzEyNSwxNSBAQCBzdGF0aWMgdTMy
IGZ3X3BsYXRmb3JtX2NhbGN1bGF0ZV9oZWFwX3NpemUodTMyIGhhcnRfY291bnQpCj4gICAgICAg
ICAvKiBGb3IgVExCIGZpZm8gKi8KPiAgICAgICAgIGhlYXBfc2l6ZSArPSBTQklfVExCX0lORk9f
U0laRSAqIChoYXJ0X2NvdW50KSAqIChoYXJ0X2NvdW50KTsKPgo+ICsgICAgICAgLyoKPiArICAg
ICAgICAqIE1QVCB0YWJsZSBidWRnZXQKPiArICAgICAgICAqIDEgTWlCIG1lbW9yeSBmb3IgTVBU
IGFsbG9jYXRlZCBjdXJyZW50bHkuCj4gKyAgICAgICAgKgo+ICsgICAgICAgICogVE9ETzogTmVl
ZCBiZXR0ZXIgd2F5IHRvIGdldCB0aGUgbWVtb3J5IGJ1ZGdldCBiYXNlZCBvbiBhY3RpdmUKPiAr
ICAgICAgICAqIFNNTVBUIG1vZGUuCj4gKyAgICAgICAgKi8KPiArICAgICAgIGhlYXBfc2l6ZSAr
PSAxMDI0ICogMTAyNDsKPiArCj4gICAgICAgICByZXR1cm4gQklUX0FMSUdOKGhlYXBfc2l6ZSwg
SEVBUF9CQVNFX0FMSUdOKTsKPiAgfQo+Cj4gQEAgLTIyOSw2ICszMjEsMTAgQEAgaW50IGdlbmVy
aWNfZWFybHlfaW5pdChib29sIGNvbGRfYm9vdCkKPiAgICAgICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gcmM7Cj4KPiAgICAgICAgICAgICAgICAgZmR0X2RyaXZlcl9pbml0X2FsbChmZHQsIGZk
dF9lYXJseV9kcml2ZXJzKTsKPiArCj4gKyAgICAgICAgICAgICAgIHJjID0gbXB0X2Vhcmx5X2lu
aXQoY29sZF9ib290KTsKPiArICAgICAgICAgICAgICAgaWYgKHJjKQo+ICsgICAgICAgICAgICAg
ICAgICAgICAgIHJldHVybiByYzsKPiAgICAgICAgIH0KPgo+ICAgICAgICAgcmV0dXJuIGZkdF9j
bW9faW5pdChjb2xkX2Jvb3QpOwo+IEBAIC0yMzYsMTEgKzMzMiwxNiBAQCBpbnQgZ2VuZXJpY19l
YXJseV9pbml0KGJvb2wgY29sZF9ib290KQo+Cj4gIGludCBnZW5lcmljX2ZpbmFsX2luaXQoYm9v
bCBjb2xkX2Jvb3QpCj4gIHsKPiArICAgICAgIGludCByYzsKPiAgICAgICAgIHZvaWQgKmZkdCA9
IGZkdF9nZXRfYWRkcmVzc19ydygpOwo+Cj4gICAgICAgICBpZiAoIWNvbGRfYm9vdCkKPiAgICAg
ICAgICAgICAgICAgcmV0dXJuIDA7Cj4KPiArICAgICAgIHJjID0gbXB0X2ZpbmFsX2luaXQoY29s
ZF9ib290KTsKPiArICAgICAgIGlmIChyYykKPiArICAgICAgICAgICAgICAgcmV0dXJuIHJjOwo+
ICsKT3phOiBkbyB5b3UgdGhpbmsgLSBpZiB0aGVyZSBpcyBhIG5lZWQgIHRvIG1vdmUgdGhpcyBj
YWxsIGFmdGVyIGFsbAp0aGUgZml4dXAgY2FsbHMgPwo+ICAgICAgICAgZmR0X2NwdV9maXh1cChm
ZHQpOwo+ICAgICAgICAgZmR0X2ZpeHVwcyhmZHQpOwo+ICAgICAgICAgZmR0X2RvbWFpbl9maXh1
cChmZHQpOwo+IC0tCj4gMi41MS4wCj4KPgo+IC0tCj4gb3BlbnNiaSBtYWlsaW5nIGxpc3QKPiBv
cGVuc2JpQGxpc3RzLmluZnJhZGVhZC5vcmcKPiBodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9t
YWlsbWFuL2xpc3RpbmZvL29wZW5zYmkKClJldmlld2VkLWJ5OiBQYXdhbmRlZXAgT3phIDxwYXdh
bmRlZXAub3phQG9zcy5xdWFsY29tbS5jb20+CgotLSAKb3BlbnNiaSBtYWlsaW5nIGxpc3QKb3Bl
bnNiaUBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxt
YW4vbGlzdGluZm8vb3BlbnNiaQo=