<feed xmlns='http://www.w3.org/2005/Atom'>
<title>starfive-tech/opensbi.git/include/sbi, branch starfive-dubhe</title>
<subtitle>StarFive Tech OpenSBI for VisionFive (JH7110) boards (mirror)</subtitle>
<id>https://git.radix-linux.su/starfive-tech/opensbi.git/atom?h=starfive-dubhe</id>
<link rel='self' href='https://git.radix-linux.su/starfive-tech/opensbi.git/atom?h=starfive-dubhe'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/opensbi.git/'/>
<updated>2021-07-17T11:10:07+00:00</updated>
<entry>
<title>include: types: Use __builtin_offsetof when supported</title>
<updated>2021-07-17T11:10:07+00:00</updated>
<author>
<name>Alex Richardson</name>
<email>Alexander.Richardson@cl.cam.ac.uk</email>
</author>
<published>2021-07-12T12:39:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/opensbi.git/commit/?id=f3a8f603a702b10f13f0fad7c0c815b21fb2384a'/>
<id>urn:sha1:f3a8f603a702b10f13f0fad7c0c815b21fb2384a</id>
<content type='text'>
Clang provides a __builtin_offsetof which can be detected using
__has_builtin().

Signed-off-by: Alex Richardson &lt;Alexander.Richardson@cl.cam.ac.uk&gt;
Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>firmware: use __SIZEOF_LONG__ for field offsets in fw_dynamic.h</title>
<updated>2021-07-17T11:05:23+00:00</updated>
<author>
<name>Alex Richardson</name>
<email>Alexander.Richardson@cl.cam.ac.uk</email>
</author>
<published>2021-07-12T09:24:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/opensbi.git/commit/?id=7210e907858be23a207479e26fde947e968b7f29'/>
<id>urn:sha1:7210e907858be23a207479e26fde947e968b7f29</id>
<content type='text'>
The fields are of type unsigned long and are not pointers. While this
happens to be the same for RV32/RV64, it is not correct when compiling
for a CHERI-RISC-V system where pointers are twice the size of long.

Signed-off-by: Alex Richardson &lt;Alexander.Richardson@cl.cam.ac.uk&gt;
Reviewed-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>firmware: Define a macro for version of struct fw_dynamic_info</title>
<updated>2021-07-11T08:43:32+00:00</updated>
<author>
<name>Bin Meng</name>
<email>bmeng.cn@gmail.com</email>
</author>
<published>2021-07-07T08:22:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/opensbi.git/commit/?id=b88b3661d43760fbc06bc83de2c5b204a2bb03dd'/>
<id>urn:sha1:b88b3661d43760fbc06bc83de2c5b204a2bb03dd</id>
<content type='text'>
Avoid using a magic number, instead use a macro for the version of
struct fw_dynamic_info.

Signed-off-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
Reviewed-by: Xiang W &lt;wxjstz@126.com&gt;
Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Implement SBI PMU extension</title>
<updated>2021-07-11T05:08:02+00:00</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2021-07-10T16:18:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/opensbi.git/commit/?id=37f9b0f2f265b2f312d974fb8d100b85b3faf94f'/>
<id>urn:sha1:37f9b0f2f265b2f312d974fb8d100b85b3faf94f</id>
<content type='text'>
RISC-V SBI specfication 0.3 defines a PMU extension that allows supervisor
mode to start/stop/configure pmu related events. This patch implements
all of the functionality defined in the specification.

Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Add PMU support</title>
<updated>2021-07-11T04:53:18+00:00</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2021-07-10T16:18:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/opensbi.git/commit/?id=13d40f21d588e17a31624ed415f114987b6bd3d0'/>
<id>urn:sha1:13d40f21d588e17a31624ed415f114987b6bd3d0</id>
<content type='text'>
RISC-V SBI v0.3 specification defined a PMU extension to configure/start/stop
the hardware/firmware pmu events.

Implement PMU support in OpenSBI library. The implementation is agnostic of
event to counter mapping &amp; mhpmevent value configuration. That means, it
expects platform hooks will be used to set up the mapping and provide
the mhpmevent value at runtime.

Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Add PMU specific platform hooks</title>
<updated>2021-07-11T04:51:38+00:00</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2021-07-10T16:18:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/opensbi.git/commit/?id=e7cc7a3ab2770b9f40569a84c417afdad59531bc'/>
<id>urn:sha1:e7cc7a3ab2770b9f40569a84c417afdad59531bc</id>
<content type='text'>
A platform hook to initialize PMU allows platform vendors to provide
their own mechanism to define pmu event-counter mappings in addition
to the DT based approach.

Another platform hook that allows platform vendors customize the
final mhpmevent value configuration.

Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
</content>
</entry>
<entry>
<title>include: Add a list empty check function</title>
<updated>2021-07-11T04:45:29+00:00</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2021-07-10T16:18:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/opensbi.git/commit/?id=41ae63cd0a75474ce380a944d5b4f1fb9b6fd2e0'/>
<id>urn:sha1:41ae63cd0a75474ce380a944d5b4f1fb9b6fd2e0</id>
<content type='text'>
Implement a list helper function that checks for empty lists.

Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Reviewed-by: Xiang W &lt;wxjstz@126.com&gt;
Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Detect number of bits implemented in mhpmcounter</title>
<updated>2021-07-11T04:43:04+00:00</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2021-07-10T16:18:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/opensbi.git/commit/?id=0829f2bc284c07576a0dc9a569beea2a2d68dc3d'/>
<id>urn:sha1:0829f2bc284c07576a0dc9a569beea2a2d68dc3d</id>
<content type='text'>
RISC-V privilege specification allows the implementation to have less
than 64 bits.

Add a function to detect the number of implemented bits in mhpmcounter
dynamically at runtime.

Reviewed-by: Xiang W &lt;wxjstz@126.com&gt;
Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Detect mcountinihibit support at runtime</title>
<updated>2021-07-11T04:41:10+00:00</updated>
<author>
<name>Atish Patra</name>
<email>atish.patra@wdc.com</email>
</author>
<published>2021-07-10T16:18:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/opensbi.git/commit/?id=fde28fadc2603c7c7a4afa7c2e7b96cc7b11d2e2'/>
<id>urn:sha1:fde28fadc2603c7c7a4afa7c2e7b96cc7b11d2e2</id>
<content type='text'>
RISC-V ISA specification v1.11 defined mcountinhibit CSR that allows
software to stop any counter from incrementing. The SBI PMU extension
depends on this CSR support in hardware.

Define mcountinhibit as a hart specific feature and detect it at runtime.

Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Signed-off-by: Atish Patra &lt;atish.patra@wdc.com&gt;
</content>
</entry>
<entry>
<title>lib: sbi: Fix GET_F64_REG inline assembly</title>
<updated>2021-06-12T04:23:33+00:00</updated>
<author>
<name>Charles Papon</name>
<email>charles.papon.90@gmail.com</email>
</author>
<published>2021-06-12T04:23:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/starfive-tech/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>
</feed>
