<feed xmlns='http://www.w3.org/2005/Atom'>
<title>opensbi.git/lib, branch v0.5</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/opensbi.git/atom/lib?h=v0.5</id>
<link rel='self' href='http://cgit.235523.xyz/opensbi.git/atom/lib?h=v0.5'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/'/>
<updated>2019-10-03T03:28:51Z</updated>
<entry>
<title>lib: Provide a platform hook to implement vendor specific SBI extensions.</title>
<updated>2019-10-03T03:28:51Z</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2019-10-02T20:59:40Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=30f09fbfd1ec0269dafb1dbb3c9c07f1b5c0ec81'/>
<id>urn:sha1:30f09fbfd1ec0269dafb1dbb3c9c07f1b5c0ec81</id>
<content type='text'>
SBI v0.2 specification allows vendor extensions and it should be
implemented in a independent of the core sbi library.

Introduce a single platform callback that will let platforms handle
all vendor extensions in platform specific code if they want.

Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: Implement SBI v0.2</title>
<updated>2019-10-03T03:26:55Z</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2019-10-02T20:59:39Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=0790be0f2c932f66ab0717661f9adb919c1b01e8'/>
<id>urn:sha1:0790be0f2c932f66ab0717661f9adb919c1b01e8</id>
<content type='text'>
SBI v0.2 introduces a base specification which is mandatory to
implement for any SBI implementations that is not legacy.

Add support for the base extension.

Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: Remove redundant variable assignment</title>
<updated>2019-10-03T03:25:25Z</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2019-10-02T20:59:38Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=848ed4f644097d1c9ba44bef3307fa2538c84bd4'/>
<id>urn:sha1:848ed4f644097d1c9ba44bef3307fa2538c84bd4</id>
<content type='text'>
An ecall handler should only return error if valid SBI function
fails. Otherwise, it should succeed with appropriate error in a0.

Get rid of unnecessary setting of the temporary return variable to
zero for the cases where errors are not expected.

Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: Rename existing SBI implementation as 0.1.</title>
<updated>2019-10-03T03:23:52Z</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2019-10-02T20:59:37Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=26aec6afed528518dbd633a6e0d951b7646d95c5'/>
<id>urn:sha1:26aec6afed528518dbd633a6e0d951b7646d95c5</id>
<content type='text'>
Current SBI implementation is now considered as version 0.1 and will be
removed/replaced with newer extension/functions in future.

Rename the existing implementations accordingly to be in sync with the
specification.

Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Reviewed-by: Zong Li &lt;zong.li@sifive.com&gt;
</content>
</entry>
<entry>
<title>lib: Fix coldboot race condition observed on emulators/simulators</title>
<updated>2019-10-02T11:33:58Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-09-26T04:25:25Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=e561c6303639ed510183da25d3d54555a53371c9'/>
<id>urn:sha1:e561c6303639ed510183da25d3d54555a53371c9</id>
<content type='text'>
If we are running on RISC-V emulator/simulator with large number of
HARTs where each HART is a regular thread under UNIX host then it is
possible that some of the secondary HARTs don't get chance to run and
sbi_hart_wake_coldboot_harts() is called before secondary HARTs call
sbi_hart_wait_for_coldboot(). In this situation, some of the secondary
HARTs will never come-out of coldboot wait loop.

To tackle this, we introduce a global flag coldboot_done which will
be protected by coldboot lock and it will be set by primary HART from
sbi_hart_wake_coldboot_harts() before waking-up secondary HARTs. We
also re-arrange acquire/release of coldboot lock to reduce further
chances of race-condition.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Reviewed-by: Atish Patra &lt;atish.patra@wdc.com&gt;
Reviewed-by: Zong Li &lt;zong.li@sifive.com&gt;
Reviewed-by: Nylon Chen&lt;nylon7@andestech.com&gt;
</content>
</entry>
<entry>
<title>lib: Emulate HTIMEDELTA CSR for platforms not having TIME CSR</title>
<updated>2019-09-30T10:06:14Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-08-18T07:44:44Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=1e9f88889f8b7c66dd229299715eed87e734aafa'/>
<id>urn:sha1:1e9f88889f8b7c66dd229299715eed87e734aafa</id>
<content type='text'>
For platforms not having TIME CSR, we trap-n-emulate TIME CSR
read/write in OpenSBI. Same rationale applies to HTIMEDELTA CSR
as well so we trap-n-emulate HTIMEDELTA CSR for platforms not
having TIME CSR.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>include: Extend get_insn() to read instruction from VS/VU mode</title>
<updated>2019-09-30T10:05:43Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-08-17T15:24:40Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=7d4420bd6929ef3f2c761c262dbc3f7f2ae150c2'/>
<id>urn:sha1:7d4420bd6929ef3f2c761c262dbc3f7f2ae150c2</id>
<content type='text'>
Current implementation of get_insn() is not suitable for reading
instruction from VS/VU mode because we have to set SSTATUS_MXR bit
in VSSTATUS CSR for reading instruction from VS/VU mode.

This patch extends get_insn() to read instruction from VS/VU mode.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Signed-off-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: Redirect WFI trapped from VS/VU mode to HS-mode</title>
<updated>2019-09-30T10:02:00Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-04-05T12:47:11Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=a14e7ee82c2723f18cf2d1c7f1a88d88766a6018'/>
<id>urn:sha1:a14e7ee82c2723f18cf2d1c7f1a88d88766a6018</id>
<content type='text'>
The WFI will trap as illegal instruction trap when executed
in VS/VU mode so we just forward/redirect it to HS-mode so
that hypervisor can deal with it appropriately.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: Extend sbi_trap_redirect() for hypervisor extension</title>
<updated>2019-09-30T09:59:37Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-04-15T06:23:31Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=bbeb8e619d1cc528d2d56531512d6ea406f9738b'/>
<id>urn:sha1:bbeb8e619d1cc528d2d56531512d6ea406f9738b</id>
<content type='text'>
When hypervisor extension is available, we can get traps from VS/VU
modes. We should be able to force redirect some of these traps to
HS-mode. In other words, we should be able forward traps from VS/VU
mode to HS-mode using sbi_trap_redirect() hence this patch.

Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Signed-off-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: Extend sbi_hart_switch_mode() to support hypervisor extension</title>
<updated>2019-09-30T09:48:06Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-04-05T08:38:57Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=1a5614e971cf44e08342c2b1639fa3be544b0202'/>
<id>urn:sha1:1a5614e971cf44e08342c2b1639fa3be544b0202</id>
<content type='text'>
This patch extends sbi_hart_switch_mode() to support entering
VS/VU modes when hypervisor extension is available.

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