<feed xmlns='http://www.w3.org/2005/Atom'>
<title>opensbi.git/include/sbi/riscv_asm.h, branch v0.5</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/opensbi.git/atom/include/sbi/riscv_asm.h?h=v0.5</id>
<link rel='self' href='http://cgit.235523.xyz/opensbi.git/atom/include/sbi/riscv_asm.h?h=v0.5'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/'/>
<updated>2019-05-24T02:52:47Z</updated>
<entry>
<title>lib: Factor-out TLB management from IPI management</title>
<updated>2019-05-24T02:52:47Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-05-24T02:28:05Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=95b7480ab4b438cf545afae200b40012e83f1dda'/>
<id>urn:sha1:95b7480ab4b438cf545afae200b40012e83f1dda</id>
<content type='text'>
This patch factor-out TLB management from IPI management to separate
sources sbi_tlb.c and sbi_tlb.h.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Reviewed-by: Atish Patra &lt;atish.patra@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: Flush everything when remote TLB flush range is too large</title>
<updated>2019-05-21T04:36:08Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-05-20T05:50:53Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=4e2cd478208531c47343290f15b577d40c82649c'/>
<id>urn:sha1:4e2cd478208531c47343290f15b577d40c82649c</id>
<content type='text'>
On latest Linux kernel (i.e. 5.2-rc1), we get large TLB flush
request for user space addresses (typically, start=x and end=-1).
This is caused by Linux kernel commit a21344dfc6 ("riscv: fix
sbi_remote_sfence_vma{,_asid}").

It's not practical to execute large number of sfence instructions
for a large TLB flush range because it takes too much time and
eventually causes CPU stall in Linux kernel.

This patch addresses above issue by upgrading TLB flush range to
TLB flush all whenever TLB flush range is greater than 1GB.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Reviewed-by: Atish Patra &lt;atish.patra@wdc.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>all: Annotate some tables to have clang-format leave them alone</title>
<updated>2019-04-24T04:19:46Z</updated>
<author>
<name>Olof Johansson</name>
<email>olof@lixom.net</email>
</author>
<published>2019-04-11T00:41:46Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=fbf986ac2a0b926ae97e6796b87e366610d7589e'/>
<id>urn:sha1:fbf986ac2a0b926ae97e6796b87e366610d7589e</id>
<content type='text'>
One of the shortcomings of clang-format is that it doesn't allow
for aligned define tables, which is used for a number of constants.

Add annotation to disable the automatic formatting where needed.

Signed-off-by: Olof Johansson &lt;olof@lixom.net&gt;
</content>
</entry>
<entry>
<title>lib: Implement sfence.vma correctly.</title>
<updated>2019-03-12T16:37:25Z</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2019-03-09T20:57:20Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=90cb4917b584b07df3e4037a3b660e9ac28e3384'/>
<id>urn:sha1:90cb4917b584b07df3e4037a3b660e9ac28e3384</id>
<content type='text'>
Currently, OpenSBI doesn't distinguish between sfence.vma
and sfence.vm asid calls. Moreover, it ignores the page
ranges and just flush entire TLB everytime.

Fix the sfence implementation by keeping all the tlb flush
info in scratch area.

The relevant Linux kernel code was added by
https://patchwork.kernel.org/project/linux-riscv/list/?series=89695

However, this patch is backward compatible with older version kernel
that doesn't have the above patches as well.

Fixes #87
Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
</content>
</entry>
<entry>
<title>riscv_asm.h: Use CSR_&lt;FOO&gt; instead of &lt;foo&gt; for csr_read()</title>
<updated>2019-02-05T13:23:09Z</updated>
<author>
<name>Olof Johansson</name>
<email>olof@lixom.net</email>
</author>
<published>2019-02-04T02:49:20Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=c0addfe751e51376a73df71336ce11826e68c939'/>
<id>urn:sha1:c0addfe751e51376a73df71336ce11826e68c939</id>
<content type='text'>
Some toolchains might not have all the CSRs available (as seen with
GCC 7.2). So, instead use the defined CSR_ values.

Signed-off-by: Olof Johansson &lt;olof@lixom.net&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>lib: Add atomic bit set/clear operations.</title>
<updated>2019-01-22T04:33:49Z</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2019-01-21T07:23:28Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=312b6bf32f51e530dd22746fe2a36d6459e29588'/>
<id>urn:sha1:312b6bf32f51e530dd22746fe2a36d6459e29588</id>
<content type='text'>
Add addtional functionlities for set/clear bits
atomically.

Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
</content>
</entry>
<entry>
<title>include: Move RISCV_TRAP_REGS_xyz defines to sbi_trap.h</title>
<updated>2019-01-02T04:27:12Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2018-12-31T07:07:28Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=dc7be34d523f93d2834f4aff49d640cdec16a509'/>
<id>urn:sha1:dc7be34d523f93d2834f4aff49d640cdec16a509</id>
<content type='text'>
The struct sbi_trap_regs related defines RISCV_TRAP_REGS_xyz should
be in sbi_trap.h so that we can keep these defines in-sync with changes
in struct sbi_trap_regs.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>include: Move RISCV_PLATFORM_xyz defines to sbi_platform.h</title>
<updated>2019-01-02T04:27:12Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2018-12-31T06:00:55Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=5ed3cf37073125a38ac839ad11de687f20286b33'/>
<id>urn:sha1:5ed3cf37073125a38ac839ad11de687f20286b33</id>
<content type='text'>
The struct sbi_platform related defines RISCV_PLATFORM_xyz should
be in sbi_platform.h so that we can keep these defines in-sync
with changes in struct sbi_platform.

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