<feed xmlns='http://www.w3.org/2005/Atom'>
<title>opensbi.git/firmware, branch v0.4</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/opensbi.git/atom/firmware?h=v0.4</id>
<link rel='self' href='http://cgit.235523.xyz/opensbi.git/atom/firmware?h=v0.4'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/'/>
<updated>2019-07-01T03:24:13Z</updated>
<entry>
<title>firmware: For no relocation skip two stage wait for secondary HARTs</title>
<updated>2019-07-01T03:24:13Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-07-01T03:24:13Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=bb3edd36afedc03903930380bef93ed77e83aef8'/>
<id>urn:sha1:bb3edd36afedc03903930380bef93ed77e83aef8</id>
<content type='text'>
When relocation is not required (i.e. _load_start == _link_start), we
can skip two stage wait for secondary HARTs. This means secondary HARTs
can skip the _wait_relocate_copy_done() loop and directly jump to the
_wait_for_boot_hart() loop when no relocation not required.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>firmware: Handle overlapping load and link addresses in relocation</title>
<updated>2019-06-24T04:09:18Z</updated>
<author>
<name>Xiang W</name>
<email>wxjstz@126.com</email>
</author>
<published>2019-06-20T07:01:10Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=65aa5873c377cfd01f4923e02871e401be644162'/>
<id>urn:sha1:65aa5873c377cfd01f4923e02871e401be644162</id>
<content type='text'>
The old code may corrupt the code of the waiting hart hence this patch
keeps waiting HART within relocation code range at time of relocation.

Signed-off-by: Xiang W &lt;wxjstz@126.com&gt;
Acked-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>firmware: Handle overlapping load and link addresses in relocation</title>
<updated>2019-06-17T06:23:42Z</updated>
<author>
<name>Xiang W</name>
<email>wxjstz@126.com</email>
</author>
<published>2019-06-13T07:23:12Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=a5b37bd7d275fc65d8fd0b19bd3a08edfe4e6096'/>
<id>urn:sha1:a5b37bd7d275fc65d8fd0b19bd3a08edfe4e6096</id>
<content type='text'>
This patch extends relocation to handle overlapping load and link
addresses.

The updated relocation will work fine in most cases except when the
relocate copy loop itself falls in overlapping load and link addresses.

Signed-off-by: Xiang W &lt;wxjstz@126.com&gt;
Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>firmware: Relocate when load address is not equal to link address</title>
<updated>2019-06-12T12:26:28Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-06-07T14:56:55Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=331f291e4cff8f0b7b35edded21132c2fa69fb97'/>
<id>urn:sha1:331f291e4cff8f0b7b35edded21132c2fa69fb97</id>
<content type='text'>
This patch extends fw_base to relocate to link address whenever
firmware load address is not equal to link address.

The relocation will not work when load start to load end overlap
link start to link end.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Tested-by: Lukas Auer &lt;lukas.auer@aisec.fraunhofer.de&gt;
</content>
</entry>
<entry>
<title>firmware: add missing linker sections to fw_base.ldS</title>
<updated>2019-06-12T12:13:47Z</updated>
<author>
<name>Lukas Auer</name>
<email>lukas.auer@aisec.fraunhofer.de</email>
</author>
<published>2019-06-11T11:11:48Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=6fec1c7e1118add3aa16707914ada8adca09bf1b'/>
<id>urn:sha1:6fec1c7e1118add3aa16707914ada8adca09bf1b</id>
<content type='text'>
The linker sections .sdata and .sbss are missing from the linker script
fw_base.ldS. Add them to the .data and .bss sections.

On current builds, most variables are in the .sbss section. They are not
correctly initialized to zero, because they are not within the
boundaries indicated by _bss_start and _bss_end. Currently, this does
not cause any issues, however with relocation support lock-ups may occur
due to incorrectly initialized lock variables.

Signed-off-by: Lukas Auer &lt;lukas.auer@aisec.fraunhofer.de&gt;
Acked-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>firmware: Add fw_dynamic firmware</title>
<updated>2019-05-10T06:56:22Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-04-29T06:25:19Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=bae54f764570f3fa5c592f313b45352d9f6f1d8a'/>
<id>urn:sha1:bae54f764570f3fa5c592f313b45352d9f6f1d8a</id>
<content type='text'>
This patch provides first-cut implementation of fw_dynamic firmware.

As compared to fw_jump and fw_payload, the fw_dynamic obtains next
address, next mode and OpenSBI options from struct fw_dynamic_info.

The previous booting stage can create struct fw_dynamic_info in memory
and pass address of struct fw_dynamic_info in 'a2' register. Also, the
struct fw_dynamic_info has versioning as well so changes to the struct
fw_dynamic_info can be done in a backward compatible manner.

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>firmware: Allow firmwares to provide next mode and options</title>
<updated>2019-05-10T06:56:22Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-04-29T05:14:15Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=25472de89ee3b98cd466f69d1f419f943dcbcb0f'/>
<id>urn:sha1:25472de89ee3b98cd466f69d1f419f943dcbcb0f</id>
<content type='text'>
This patch extends existing firmwares (i.e. fw_jump and fw_payload)
to explicitly provide next mode and options to fw_base.

We also introduce fw_save_info() which is called by fw_base very
early on boot HART. This function can be used by existing firmwares
(i.e. fw_jump and fw_payload) to save information passed by previous
booting stage.

Overall, this is a preparatory patch for implementing fw_dynamic.

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Reviewed-by: Alistair Francis &lt;alistair.francis@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>TOP: Allow building platform out-of-tree</title>
<updated>2019-04-09T03:44:09Z</updated>
<author>
<name>Anup Patel</name>
<email>anup.patel@wdc.com</email>
</author>
<published>2019-04-04T06:19:43Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=54f31e82093969eaca9f7ebab06c92fa044dd076'/>
<id>urn:sha1:54f31e82093969eaca9f7ebab06c92fa044dd076</id>
<content type='text'>
This patch extends our current build-system for building platform
sources which are not part of OpenSBI sources.

For example:

Let's say we have out-of-tree ABC platform sources. We place these
sources under &lt;XYZ&gt;/ABC directory along with its config.mk and
objects.mk.

To build out-of-tree ABC platform from OpenSBI directory:
$ make PLATFORM_DIR=&lt;XYZ&gt;/ABC
OR
$ make PLATFORM_DIR=&lt;XYZ&gt; PLATFORM=ABC

To build out-of-tree ABC platform from &lt;XYZ&gt;/ABC directory:
$ make PLATFORM_DIR=&lt;XYZ&gt;/ABC -C &lt;path_to_opensbi&gt;
OR
$ make PLATFORM_DIR=&lt;XYZ&gt; PLATFORM=ABC -C &lt;path_to_opensbi&gt;

Signed-off-by: Anup Patel &lt;anup.patel@wdc.com&gt;
Reviewed-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
</content>
</entry>
<entry>
<title>firmware: Fix source fdt alignment</title>
<updated>2019-04-04T03:40:28Z</updated>
<author>
<name>Xiang Wang</name>
<email>wxjstz@126.com</email>
</author>
<published>2019-04-02T08:57:22Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/opensbi.git/commit/?id=09f976802bcd291c80b8260746bdcf5b530179ae'/>
<id>urn:sha1:09f976802bcd291c80b8260746bdcf5b530179ae</id>
<content type='text'>
When I tried to start opensbi with coreboot, I found that aligning to a 16-byte
boundary would make a copy error.

Corrected to align to an machine word length boundary.

Signed-off-by: Xiang Wang &lt;wxjstz@126.com&gt;
</content>
</entry>
</feed>
