<feed xmlns='http://www.w3.org/2005/Atom'>
<title>opensbi.git/include/sbi/riscv_encoding.h, branch v1.4</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/opensbi.git/atom/include/sbi/riscv_encoding.h?h=v1.4</id>
<link rel='self' href='http://cgit.235523.xyz/opensbi.git/atom/include/sbi/riscv_encoding.h?h=v1.4'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/'/>
<updated>2023-12-19T08:24:33Z</updated>
<entry>
<title>lib: sbi: Refactor the code for enable extensions in menvfg CSR</title>
<updated>2023-12-19T08:24:33Z</updated>
<author>
<name>Yong-Xuan Wang</name>
<email>yongxuan.wang@sifive.com</email>
</author>
<published>2023-12-12T08:58:33Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=056fe6f85dc6b68783f56cb6ea7394e857ab8cc3'/>
<id>urn:sha1:056fe6f85dc6b68783f56cb6ea7394e857ab8cc3</id>
<content type='text'>
Use 1 variable to store the value of menvcfg.

Signed-off-by: Yong-Xuan Wang &lt;yongxuan.wang@sifive.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>include: sbi: macros for mseccfg.sseed and .useed</title>
<updated>2023-11-17T06:33:59Z</updated>
<author>
<name>Heinrich Schuchardt</name>
<email>heinrich.schuchardt@canonical.com</email>
</author>
<published>2023-10-28T22:49:57Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=280f7ae62724b184fdd61347e6f905bc39dec64b'/>
<id>urn:sha1:280f7ae62724b184fdd61347e6f905bc39dec64b</id>
<content type='text'>
Define macros to access the sseed and the useed bit in the machine
security configuration register (mseccfg).

Signed-off-by: Heinrich Schuchardt &lt;heinrich.schuchardt@canonical.com&gt;
Reviewed-by: Xiang W &lt;wxjstz@126.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Add support for mconfigptr</title>
<updated>2023-10-06T12:28:42Z</updated>
<author>
<name>Yangjie Zhang</name>
<email>jay1273062855@outlook.com</email>
</author>
<published>2023-09-28T08:27:09Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=3632f2b5c43e2a01bbfdcf4864d358845dcf281e'/>
<id>urn:sha1:3632f2b5c43e2a01bbfdcf4864d358845dcf281e</id>
<content type='text'>
RISC-V privileged specification v1.12 introduced the mconfigptr CSR
which will hold the physical address of a configuration data
structure.

Signed-off-by: Yangjie Zhang &lt;jay1273062855@outlook.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Add support for smcntrpmf</title>
<updated>2023-08-18T09:20:38Z</updated>
<author>
<name>Kaiwen Xue</name>
<email>kaiwenx@rivosinc.com</email>
</author>
<published>2023-07-20T21:07:02Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=c104c60912a4ed26093f00a9675ad0286e8dcd29'/>
<id>urn:sha1:c104c60912a4ed26093f00a9675ad0286e8dcd29</id>
<content type='text'>
This adds the support for ISA extension smcntrpmf. When some inhibit flags
are set by a lower privilege mode for new CSRs added by smcntrpmf, OpenSBI
sets the appropriate values correspondingly.

Signed-off-by: Kaiwen Xue &lt;kaiwenx@andrew.cmu.edu&gt;
Signed-off-by: Kaiwen Xue &lt;kaiwenx@rivosinc.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
Reviewed-by: Atish Patra &lt;atishp@rivosinc.com&gt;
</content>
</entry>
<entry>
<title>include: sbi: fix CSR define of mseccfg</title>
<updated>2023-07-31T06:21:49Z</updated>
<author>
<name>Xiang W</name>
<email>wxjstz@126.com</email>
</author>
<published>2023-07-14T10:08:34Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=5e20d25f19472e98e53f24fe9183ded6de04bce9'/>
<id>urn:sha1:5e20d25f19472e98e53f24fe9183ded6de04bce9</id>
<content type='text'>
Because the CSR names in the spec are mseccfg and mseccfgh. Remove
CSR_MSECCFG_LOWER and CSR_MSECCFG_UPPER and directly define
CSR_MSECCFG and CSR_MSECCFGH.

Signed-off-by: Xiang W &lt;wxjstz@126.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>include: sbi: Add macro definitions for mseccfg CSR</title>
<updated>2023-07-13T06:39:34Z</updated>
<author>
<name>Himanshu Chauhan</name>
<email>hchauhan@ventanamicro.com</email>
</author>
<published>2023-07-12T04:34:27Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=c3b98c610b63ebb75b023135e392b4f48080f380'/>
<id>urn:sha1:c3b98c610b63ebb75b023135e392b4f48080f380</id>
<content type='text'>
- Add macros for Machine Security Configuration (mseccfg) CSR
- Add macros to access/manipulate bits in msecfg CSR

Signed-off-by: Himanshu Chauhan &lt;hchauhan@ventanamicro.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>lib: sbi_hart: Enable hcontext and scontext</title>
<updated>2023-02-27T05:52:11Z</updated>
<author>
<name>Nylon Chen</name>
<email>nylon.chen@sifive.com</email>
</author>
<published>2023-02-10T08:52:38Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=30ea8069f4c704e67017215f90f74b8588ee9bdf'/>
<id>urn:sha1:30ea8069f4c704e67017215f90f74b8588ee9bdf</id>
<content type='text'>
According to the description in "riscv-state-enable[0]", to access
h/scontext in S-Mode, we need to enable the 57th bit.

If it is not enabled, an "illegal instruction" error will occur.

Link: https://github.com/riscv/riscv-state-enable/blob/a28bfae443f350d5b4c42874f428367d5b322ffe/content.adoc [0]

Signed-off-by: Nylon Chen &lt;nylon.chen@sifive.com&gt;
Reviewed-by: Zong Li &lt;zong.li@sifive.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>include: Remove sideleg and sedeleg</title>
<updated>2022-09-01T10:07:22Z</updated>
<author>
<name>Rahul Pathak</name>
<email>rpathak@ventanamicro.com</email>
</author>
<published>2022-08-24T14:54:37Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=622cc5f014eb983348aa0dc7fb5fbde43d074782'/>
<id>urn:sha1:622cc5f014eb983348aa0dc7fb5fbde43d074782</id>
<content type='text'>
sideleg and sedeleg csrs are not part of riscv isa spec
anymore, these csrs were part of N extension which
is removed from the riscv isa specification.

These commits removed all traces of these csrs from
riscv spec (https://github.com/riscv/riscv-isa-manual) -

commit f8d27f805b65 ("Remove or downgrade more references to N extension (#674)")
commit b6cade07034d ("Remove N extension chapter for now")

Signed-off-by: Rahul Pathak &lt;rpathak@ventanamicro.com&gt;
Reviewed-by: Andrew Jones &lt;ajones@ventanamicro.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>include: Add mstatus[h].GVA encodings</title>
<updated>2022-08-22T03:19:29Z</updated>
<author>
<name>Vivian Wang</name>
<email>dramforever@live.com</email>
</author>
<published>2022-08-04T14:32:27Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=9529e360dfca40feeb2471bdde990207d44d68e1'/>
<id>urn:sha1:9529e360dfca40feeb2471bdde990207d44d68e1</id>
<content type='text'>
The machine mode GVA field is in mstatus for RV64 and mstatush for RV32,
and is available if the hypervisor extension is available. If an
exception occurs, we may need to redirect the trap to HS-mode, in which
case, hstatus.GVA should be set to same as the machine mode GVA bit.

Add MSTATUS_GVA for RV64, MSTATUSH_GVA for RV32, and their SHIFT
encodings. The SHIFT index is helpful in assembly code, since field
extraction can be implemented in only one register. In pseudocode:

- For RV32: gva = (mstatus &gt;&gt; MSTATUS_GVA_SHIFT) &amp; 1;
- For RV64: gva = (mstatush &gt;&gt; MSTATUSH_GVA_SHIFT) &amp; 1;

Signed-off-by: Vivian Wang &lt;dramforever@live.com&gt;
Reviewed-by: Andrew Jones &lt;ajones@ventanamicro.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>lib: utils: Remove CSRs that set/clear an IMSIC interrupt file bits</title>
<updated>2022-06-21T03:14:45Z</updated>
<author>
<name>Anup Patel</name>
<email>apatel@ventanamicro.com</email>
</author>
<published>2022-06-16T11:58:56Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=c6530012d46ed9c9655c426450bfa3aabcc0eadd'/>
<id>urn:sha1:c6530012d46ed9c9655c426450bfa3aabcc0eadd</id>
<content type='text'>
Based on architecture review committee feedback, the [m|s|vs]seteienum,
[m|s|vs]clreienum, [m|s|vs]seteipnum, and [m|s|vs]clreipnum CSRs are
removed in the latest AIA draft v0.3.0 specification.
(Refer, https://github.com/riscv/riscv-aia/releases/tag/0.3.0-draft.31)

These CSRs were mostly for software convenience and software can always
use [m|s|vs]iselect and [m|s|vs]ireg CSRs to update the IMSIC interrupt
file bits.

We update the IMSIC programming as-per above to match the latest AIA
draft specification.

Signed-off-by: Anup Patel &lt;apatel@ventanamicro.com&gt;
Reviewed-by: Atish Patra &lt;atishp@rivosinc.com&gt;
</content>
</entry>
</feed>
