<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/arch/riscv/cpu, branch v2020.01</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/u-boot.git/atom/arch/riscv/cpu?h=v2020.01</id>
<link rel='self' href='http://cgit.235523.xyz/u-boot.git/atom/arch/riscv/cpu?h=v2020.01'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<updated>2019-12-10T00:23:10Z</updated>
<entry>
<title>riscv: add option to wait for ack from secondary harts in smp functions</title>
<updated>2019-12-10T00:23:10Z</updated>
<author>
<name>Lukas Auer</name>
<email>lukas.auer@aisec.fraunhofer.de</email>
</author>
<published>2019-12-08T22:28:51Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=90ae28143700bae4edd23930a7772899ad259058'/>
<id>urn:sha1:90ae28143700bae4edd23930a7772899ad259058</id>
<content type='text'>
Add a wait option to smp_call_function() to wait for the secondary harts
to acknowledge the call-function request. The request is considered to
be acknowledged once each secondary hart has cleared the corresponding
IPI.

As part of the call-function request, the secondary harts invalidate the
instruction cache after clearing the IPI. This adds a delay between
acknowledgment (clear IPI) and fulfillment (call function) of the
request. We want to use the acknowledgment to be able to judge when the
request has been completed. Remove the delay by clearing the IPI after
cache invalidation and just before calling the function from the
request.

Signed-off-by: Lukas Auer &lt;lukas.auer@aisec.fraunhofer.de&gt;
Reviewed-by: Rick Chen &lt;rick@andestech.com&gt;
Tested-by: Rick Chen &lt;rick@andestech.com&gt;
Reviewed-by: Anup Patel &lt;anup.patel@wdc.com&gt;
</content>
</entry>
<entry>
<title>riscv: Fix clear bss loop in the start-up code</title>
<updated>2019-12-10T00:23:10Z</updated>
<author>
<name>Rick Chen</name>
<email>rick@andestech.com</email>
</author>
<published>2019-11-14T05:52:27Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=444c46413fb691c7abbb2bec3ed498ab08fa36f8'/>
<id>urn:sha1:444c46413fb691c7abbb2bec3ed498ab08fa36f8</id>
<content type='text'>
For RV64, it will use sd instruction to clear t0
register, and the increament will be 8 bytes. So
if the difference between__bss_strat and __bss_end
was not 8 bytes aligned, the clear bss loop will
overflow and acks like system hang.

Signed-off-by: Rick Chen &lt;rick@andestech.com&gt;
Cc: KC Lin &lt;kclin@andestech.com&gt;
Cc: Alan Kao &lt;alankao@andestech.com&gt;
</content>
</entry>
<entry>
<title>riscv: ax25: cache: Add SPL_RISCV_MMODE for SPL</title>
<updated>2019-12-10T00:23:10Z</updated>
<author>
<name>Rick Chen</name>
<email>rick@andestech.com</email>
</author>
<published>2019-11-14T05:52:25Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=8ba595b6bda56eac15d721554ea0ab8fc6a48f73'/>
<id>urn:sha1:8ba595b6bda56eac15d721554ea0ab8fc6a48f73</id>
<content type='text'>
The mcache_ctl csr only can be manipulated in M mode.
Add SPL_RISCV_MMODE for U-Boot SPL to control cache
operation.

Signed-off-by: Rick Chen &lt;rick@andestech.com&gt;
Cc: KC Lin &lt;kclin@andestech.com&gt;
Cc: Alan Kao &lt;alankao@andestech.com&gt;
</content>
</entry>
<entry>
<title>riscv: ax25: add SPL support</title>
<updated>2019-12-10T00:23:10Z</updated>
<author>
<name>Rick Chen</name>
<email>rick@andestech.com</email>
</author>
<published>2019-11-14T05:52:21Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=ca06444aac2c643db3a3f2eb37afc60fae15177e'/>
<id>urn:sha1:ca06444aac2c643db3a3f2eb37afc60fae15177e</id>
<content type='text'>
The U-Boot SPL will boot in M mode and load the FIT image which
include OpenSBI and U-Boot proper images. After loading progress,
it will jump to OpenSBI first and then U-Boot proper which will
run in S mode.

Also remove V5L2_CACHE due to U-Boot SPL code size consideration.
Without this concern, it can be enable manually for performance.

Signed-off-by: Rick Chen &lt;rick@andestech.com&gt;
Cc: KC Lin &lt;kclin@andestech.com&gt;
Cc: Alan Kao &lt;alankao@andestech.com&gt;
</content>
</entry>
<entry>
<title>common: Move board_get_usable_ram_top() out of common.h</title>
<updated>2019-12-02T23:25:04Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2019-11-14T19:57:45Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=67c4e9f815eb75ba5c1f86213eded93c4e06e64b'/>
<id>urn:sha1:67c4e9f815eb75ba5c1f86213eded93c4e06e64b</id>
<content type='text'>
Move this function into init.h which seems to be designed for this sort
of thing. Also update the header to declare struct global_data so that it
can be included without global_data.h being needed.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
Reviewed-by: Tom Rini &lt;trini@konsulko.com&gt;
</content>
</entry>
<entry>
<title>common: Move enable/disable_interrupts out of common.h</title>
<updated>2019-12-02T23:25:01Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2019-11-14T19:57:42Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=36bf446b642d5759981f5adf547b4a7aeb15eee3'/>
<id>urn:sha1:36bf446b642d5759981f5adf547b4a7aeb15eee3</id>
<content type='text'>
Move these two functions into the irq_funcs.h header file. Also move
interrupt_handler_t as this is used by the irq_install_handler() function.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
Reviewed-by: Tom Rini &lt;trini@konsulko.com&gt;
</content>
</entry>
<entry>
<title>common: Move ARM cache operations out of common.h</title>
<updated>2019-12-02T23:24:58Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2019-11-14T19:57:39Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=1eb69ae498567bb0b62ee554647204e8245cdacc'/>
<id>urn:sha1:1eb69ae498567bb0b62ee554647204e8245cdacc</id>
<content type='text'>
These functions are CPU-related and do not use driver model. Move them to
cpu_func.h

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
Reviewed-by: Daniel Schwierzeck &lt;daniel.schwierzeck@gmail.com&gt;
Reviewed-by: Tom Rini &lt;trini@konsulko.com&gt;
</content>
</entry>
<entry>
<title>common: Move some cache and MMU functions out of common.h</title>
<updated>2019-12-02T23:23:55Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2019-11-14T19:57:37Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=9edefc27760b00309d482d94fdc23bf5d2ea2c42'/>
<id>urn:sha1:9edefc27760b00309d482d94fdc23bf5d2ea2c42</id>
<content type='text'>
These functions belong in cpu_func.h. Another option would be cache.h
but that code uses driver model and we have not moved these cache
functions to use driver model. Since they are CPU-related it seems
reasonable to put them here.

Move them over.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
Reviewed-by: Tom Rini &lt;trini@konsulko.com&gt;
</content>
</entry>
<entry>
<title>riscv: cache: use CCTL to flush d-cache</title>
<updated>2019-09-03T01:31:03Z</updated>
<author>
<name>Rick Chen</name>
<email>rick@andestech.com</email>
</author>
<published>2019-08-28T10:46:11Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=61ce84b2cf1a6672c8e402ce8174554b25629692'/>
<id>urn:sha1:61ce84b2cf1a6672c8e402ce8174554b25629692</id>
<content type='text'>
Use CCTL command to do d-cache write back
and invalidate instead of fence.

Signed-off-by: Rick Chen &lt;rick@andestech.com&gt;
Cc: KC Lin &lt;kclin@andestech.com&gt;
Reviewed-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
</content>
</entry>
<entry>
<title>riscv: cache: Flush L2 cache before jump to linux</title>
<updated>2019-09-03T01:31:03Z</updated>
<author>
<name>Rick Chen</name>
<email>rick@andestech.com</email>
</author>
<published>2019-08-28T10:46:09Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=7045ed9f1ad9bb2b8d19f3b5d39d7e1be8da36a6'/>
<id>urn:sha1:7045ed9f1ad9bb2b8d19f3b5d39d7e1be8da36a6</id>
<content type='text'>
Flush and disable L2 cache in dcache_disable()
which will be called in cleanup_before_linux()
before jump to linux.

The sequence will be preferred as below:
L1 flush -&gt; L1 disable -&gt; L2 flush -&gt; L2 disable

Signed-off-by: Rick Chen &lt;rick@andestech.com&gt;
Cc: KC Lin &lt;kclin@andestech.com&gt;
Reviewed-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
</content>
</entry>
</feed>
