How to read/write SPI flash descriptor
Li Qiang <[email protected]> Thu, 09 May 2019 15:31:11 +0800
| Newsgroups | dev.linux.lists.oe-chipsec |
|---|---|
| Message-ID | <CAKXe6SKOfuyB3jOvhMFzd617Wxj0R-yF=HSeUtoA5MWYA5-+YA@mail.gmail.com> |
--===============7654368901620617333== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hello all, I used chipsec to evaluate my hardware. And I got following report: [-] Software has write access to SPI flash descriptor [-] FAILED: SPI flash permissions allow SW to write flash descriptor I look at the chipsec source code and find that this is read from frap register(SPIBAR + 50h). However I can't find the spec how to read the SPI flash descriptor itself. I find some code from flashrom: https://github.com/flashrom/flashrom/blob/db7482bb72035fab8386226d1720cde09= e0c700e/ich_descriptors.c It reads SPI flash descriptor using MMIO, but also I don't know how to write it.(it has no effect when write to the same register with read). Any hints? Thanks, Li Qiang --===============7654368901620617333== Content-Type: text/html MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.html" PGRpdiBkaXI9Imx0ciI+PGRpdiBkaXI9Imx0ciI+PGRpdiBkaXI9Imx0ciI+PGRpdj5IZWxsbyBh bGwsPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5JIHVzZWQgY2hpcHNlYyB0byBldmFsdWF0ZSBt eSBoYXJkd2FyZS7CoDwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+QW5kIEkgZ290IGZvbGxvd2lu ZyByZXBvcnQ6PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5bLV0gU29mdHdhcmUgaGFzIHdyaXRl IGFjY2VzcyB0byBTUEkgZmxhc2ggZGVzY3JpcHRvcjwvZGl2PjxkaXY+Wy1dIEZBSUxFRDogU1BJ IGZsYXNoIHBlcm1pc3Npb25zIGFsbG93IFNXIHRvIHdyaXRlIGZsYXNoIGRlc2NyaXB0b3I8L2Rp dj48ZGl2Pjxicj48L2Rpdj5JIGxvb2sgYXQgdGhlIGNoaXBzZWMgc291cmNlIGNvZGUgYW5kIGZp bmQgdGhhdCB0aGlzIGlzIHJlYWQgZnJvbSBmcmFwIHJlZ2lzdGVyKFNQSUJBUsKgKyA1MGgpLjxk aXY+SG93ZXZlciBJIGNhbiYjMzk7dCBmaW5kIHRoZSBzcGVjIGhvdyB0byByZWFkIHRoZSBTUEkg Zmxhc2ggZGVzY3JpcHRvciBpdHNlbGYuPC9kaXY+PGRpdj5JIGZpbmQgc29tZSBjb2RlIGZyb20g Zmxhc2hyb206PC9kaXY+PGRpdj48YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vZmxhc2hyb20v Zmxhc2hyb20vYmxvYi9kYjc0ODJiYjcyMDM1ZmFiODM4NjIyNmQxNzIwY2RlMDllMGM3MDBlL2lj aF9kZXNjcmlwdG9ycy5jIj5odHRwczovL2dpdGh1Yi5jb20vZmxhc2hyb20vZmxhc2hyb20vYmxv Yi9kYjc0ODJiYjcyMDM1ZmFiODM4NjIyNmQxNzIwY2RlMDllMGM3MDBlL2ljaF9kZXNjcmlwdG9y cy5jPC9hPjxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pkl0IHJlYWRzIFNQSSBmbGFzaCBk ZXNjcmlwdG9yIHVzaW5nIE1NSU8sIGJ1dCBhbHNvIEkgZG9uJiMzOTt0IGtub3cgaG93IHRvIHdy aXRlIGl0LihpdCBoYXMgbm8gZWZmZWN0IHdoZW4gd3JpdGUgdG8gdGhlIHNhbWUgcmVnaXN0ZXIg d2l0aCByZWFkKS48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PkFueSBoaW50cz88L2Rpdj48ZGl2 Pjxicj48L2Rpdj48ZGl2PlRoYW5rcyw8L2Rpdj48ZGl2PkxpIFFpYW5nPC9kaXY+PGRpdj48ZGl2 Pjxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4K --===============7654368901620617333==--