<feed xmlns='http://www.w3.org/2005/Atom'>
<title>opensbi.git/include/sbi/riscv_fp.h, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/opensbi.git/atom/include/sbi/riscv_fp.h?h=master</id>
<link rel='self' href='http://cgit.235523.xyz/opensbi.git/atom/include/sbi/riscv_fp.h?h=master'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/'/>
<updated>2026-06-16T07:01:01Z</updated>
<entry>
<title>include: sbi: set FS dirty in vsstatus when V=1</title>
<updated>2026-06-16T07:01:01Z</updated>
<author>
<name>Bo Gan</name>
<email>ganboing@gmail.com</email>
</author>
<published>2026-06-05T11:32:10Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=7dfaa4678213521e714a8a7cecb7f7a722dcd18a'/>
<id>urn:sha1:7dfaa4678213521e714a8a7cecb7f7a722dcd18a</id>
<content type='text'>
According to Privileged ISA 19.2.11:

Modifying the floating-point state when V=1 causes both fields
(vsstatus.FS and the HS-level sstatus.FS) to be set to 3 (Dirty)

Fixes: 130e65dd9d44 ("lib: sbi: Implement SET_FS_DIRTY() to make sure the mstatus FS dirty is set")
Signed-off-by: Bo Gan &lt;ganboing@gmail.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
Tested-by: Anirudh Srinivasan &lt;asrinivasan@oss.tenstorrent.com&gt;
Link: https://lore.kernel.org/r/20260605113214.242-5-ganboing@gmail.com
Signed-off-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>include: sbi: Add GET_RDS_NUM/SET(_FP32/_FP64)_RDS macros</title>
<updated>2026-06-16T07:00:22Z</updated>
<author>
<name>Bo Gan</name>
<email>ganboing@gmail.com</email>
</author>
<published>2026-06-05T11:32:09Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=1b3424d5c0901dcea24ca3427009b299662949a0'/>
<id>urn:sha1:1b3424d5c0901dcea24ca3427009b299662949a0</id>
<content type='text'>
These macros can be used to decode rd' and set rd' in RVC instructions

Signed-off-by: Bo Gan &lt;ganboing@gmail.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
Tested-by: Anirudh Srinivasan &lt;asrinivasan@oss.tenstorrent.com&gt;
Link: https://lore.kernel.org/r/20260605113214.242-4-ganboing@gmail.com
Signed-off-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Enhance CSR Handling in system_opcode_insn</title>
<updated>2024-08-23T08:06:49Z</updated>
<author>
<name>Dongdong Zhang</name>
<email>zhangdongdong@eswincomputing.com</email>
</author>
<published>2024-07-18T05:43:57Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=d4322eebd0ce129c3230fd150bc802b19ff0c0f8'/>
<id>urn:sha1:d4322eebd0ce129c3230fd150bc802b19ff0c0f8</id>
<content type='text'>
- Completed TODO in `system_opcode_insn` to ensure CSR read/write
  instruction handling.
- Refactored to use new macros `GET_RS1_NUM` and `GET_CSR_NUM`.
- Updated `GET_RM` macro and replaced hardcoded funct3 values with
  constants (`CSRRW`, `CSRRS`, `CSRRC`, etc.).
- Removed redundant `GET_RM` from `riscv_fp.h`.
- Improved validation and error handling for CSR instructions.

This patch enhances the clarity and correctness of CSR handling
in `system_opcode_insn`.

Signed-off-by: Dongdong Zhang &lt;zhangdongdong@eswincomputing.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Implement SET_FS_DIRTY() to make sure the mstatus FS dirty is set</title>
<updated>2023-09-22T05:47:26Z</updated>
<author>
<name>Greentime Hu</name>
<email>greentime.hu@sifive.com</email>
</author>
<published>2023-09-06T09:01:14Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=130e65dd9d44c11ef3a3048eb9a491d33e5f14b8'/>
<id>urn:sha1:130e65dd9d44c11ef3a3048eb9a491d33e5f14b8</id>
<content type='text'>
We found the mstatus.FS status is not set correctly after the SET_F64_REG()
and SET_F32_REG(). We should set mstatus.FS dirty after we emulate the FPU
instructions.

Co-developed-by: Roy Lin &lt;roy.lin@sifive.com&gt;
Signed-off-by: Roy Lin &lt;roy.lin@sifive.com&gt;
Signed-off-by: Greentime Hu &lt;greentime.hu@sifive.com&gt;
Reviewed-by: Anup Patel &lt;anup@brainfault.org&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Fix GET_F64_REG inline assembly</title>
<updated>2021-06-12T04:23:33Z</updated>
<author>
<name>Charles Papon</name>
<email>charles.papon.90@gmail.com</email>
</author>
<published>2021-06-12T04:23:33Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=79f9b4220ffa7f74356054be25d450d7958bf16c'/>
<id>urn:sha1:79f9b4220ffa7f74356054be25d450d7958bf16c</id>
<content type='text'>
Current, GET_F64_REG() macro does not generate correct inline
assembly for the RV32 systems. This patch provides separate
definitions of GET_F64_REG() macro for RV32 and RV64 systems.

Signed-off-by: Charles Papon &lt;charles.papon.90@gmail.com&gt;
Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: Allow compiling without FP support</title>
<updated>2019-07-26T10:19:49Z</updated>
<author>
<name>Anup Patel</name>
<email>Anup.Patel@wdc.com</email>
</author>
<published>2019-07-25T05:05:03Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=0f18b3fe0adda745b3ac80f7b79ce2b8512e2e95'/>
<id>urn:sha1:0f18b3fe0adda745b3ac80f7b79ce2b8512e2e95</id>
<content type='text'>
Currently, we mandate 'F' and 'D' extension in riscv_fp.h so that
misaligned load/store emulation has access to FP registers.

The above is too restrictive and we should certainly allow compilation
for soft-FP toolchains and explicit PLATFORM_RISCV_ISA not having 'F'
and 'D' extensions.

This patch extends riscv_fp.h and misaligned load/store emulation to
allow compiling OpenSBI without FP support.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Reviewed-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
</content>
</entry>
<entry>
<title>all: run clang-format and update checked-in files</title>
<updated>2019-04-24T04:19:46Z</updated>
<author>
<name>Olof Johansson</name>
<email>olof@lixom.net</email>
</author>
<published>2019-04-11T00:41:52Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=10baa64c02f6746fd506136e0693aa2d592574fb'/>
<id>urn:sha1:10baa64c02f6746fd506136e0693aa2d592574fb</id>
<content type='text'>
Noisy commit, no functional changes.

Generated with an current upstream clang-format and:

clang-format -i $(find . -name \*.[ch])

Signed-off-by: Olof Johansson &lt;olof@lixom.net&gt;
</content>
</entry>
<entry>
<title>lib: Use CSR_&lt;FOO&gt; instead of &lt;foo&gt; for csr_*()</title>
<updated>2019-02-14T04:01:18Z</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2019-02-13T02:32:06Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=70a474d2c24dc3e0c8841e6ef5cc96797deadbf5'/>
<id>urn:sha1:70a474d2c24dc3e0c8841e6ef5cc96797deadbf5</id>
<content type='text'>
Some older toolchains may not have all the csr's defined. Update all
the csr functions to use the CSR_ #define values instead of the
toolchain defined values.

Suggested-by: Olof Johansson &lt;olof@lixom.net&gt;
Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
</content>
</entry>
<entry>
<title>all: Update copyright header in all files</title>
<updated>2019-01-24T08:37:47Z</updated>
<author>
<name>Anup patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-01-24T06:11:10Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=20990ee0abaf286917b6e2aae992d4183ff695f6'/>
<id>urn:sha1:20990ee0abaf286917b6e2aae992d4183ff695f6</id>
<content type='text'>
This patch updates copyright header in all files as follows:
1. Makes "SPDX-License-Identifier: BSD-2-Clause" as first line
2. Change copyright year to 2019 for Western Digital

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>include: Add hard FP access macros and defines</title>
<updated>2019-01-03T22:21:08Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-01-03T05:07:43Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=4d1eccc41d96413fae25cea5f941f7860429340b'/>
<id>urn:sha1:4d1eccc41d96413fae25cea5f941f7860429340b</id>
<content type='text'>
This patch adds hardware floating-point (hard FP) access
macros and defines.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
</feed>
