<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rt-thread.git/libcpu/aarch64/common/context_gcc.S, branch copilot/remove-vbus-code-implementation</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/rt-thread.git/atom/libcpu/aarch64/common/context_gcc.S?h=copilot%2Fremove-vbus-code-implementation</id>
<link rel='self' href='http://cgit.235523.xyz/rt-thread.git/atom/libcpu/aarch64/common/context_gcc.S?h=copilot%2Fremove-vbus-code-implementation'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/'/>
<updated>2024-06-27T16:23:09Z</updated>
<entry>
<title>[format] cleanup libcpu/aarch64 (#8950)</title>
<updated>2024-06-27T16:23:09Z</updated>
<author>
<name>Shell</name>
<email>smokewood@qq.com</email>
</author>
<published>2024-06-27T16:23:09Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=90917cc75af9406834c14fd25140405ba6f72d6d'/>
<id>urn:sha1:90917cc75af9406834c14fd25140405ba6f72d6d</id>
<content type='text'>
* [dfs] fixup compiler warning

Signed-off-by: Shell &lt;smokewood@qq.com&gt;

* [format] libcpu/arm64: separate context switching codes

Signed-off-by: Shell &lt;smokewood@qq.com&gt;

* [format] libcpu/arm64: separate vector

Signed-off-by: Shell &lt;smokewood@qq.com&gt;

* [format] libcpu/arm64: separate context_gcc.S

Signed-off-by: Shell &lt;smokewood@qq.com&gt;

* [format] libcpu/arm64: moving headers to include directory

Signed-off-by: Shell &lt;smokewood@qq.com&gt;

* style: replace tab with space

---------

Signed-off-by: Shell &lt;smokewood@qq.com&gt;</content>
</entry>
<entry>
<title>[libcpu] arm64: implement cpuid get by assembly (#9052)</title>
<updated>2024-06-11T09:21:47Z</updated>
<author>
<name>Shell</name>
<email>smokewood@qq.com</email>
</author>
<published>2024-06-11T09:21:47Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=a12736e4c8e81178ac0cb8639f820028b0d23230'/>
<id>urn:sha1:a12736e4c8e81178ac0cb8639f820028b0d23230</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[arm64] add hw thread self (#8942)</title>
<updated>2024-05-28T06:27:55Z</updated>
<author>
<name>Shell</name>
<email>smokewood@qq.com</email>
</author>
<published>2024-05-28T06:27:55Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=f17f994f8c85a0ca58d42c81a14f1134af6ada91'/>
<id>urn:sha1:f17f994f8c85a0ca58d42c81a14f1134af6ada91</id>
<content type='text'>
* [libcpu] arm64: Add hardware thread_self support

This patch introduces hardware-based thread self-identification
for the AArch64 architecture. It optimizes thread management by
using hardware registers to store and access the current thread's
pointer, reducing overhead and improving overall performance.

Changes include:
- Added `ARCH_USING_HW_THREAD_SELF` configuration option.
- Modified `rtdef.h`, `rtsched.h` to conditionally include
  `critical_switch_flag` based on the new config.
- Updated context management in `context_gcc.S`, `cpuport.h`
  to support hardware-based thread self.
- Enhanced `scheduler_mp.c` and `thread.c` to leverage the new
  hardware thread self feature.

These modifications ensure better scheduling and thread handling,
particularly in multi-core environments, by minimizing the
software overhead associated with thread management.

Signed-off-by: Shell &lt;smokewood@qq.com&gt;

* fixup: address suggestion

* fixup: rt_current_thread as global

* scheduler: add cpu object for UP scheduler

Also, maintain the rt_current_thread in cpu object on UP scheduler.

---------

Signed-off-by: Shell &lt;smokewood@qq.com&gt;</content>
</entry>
<entry>
<title>[libcpu/arm64] add C11 atomic ticket spinlock (#8882)</title>
<updated>2024-05-16T07:45:12Z</updated>
<author>
<name>Shell</name>
<email>smokewood@qq.com</email>
</author>
<published>2024-05-16T07:45:12Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=e25fc8b5118fba87acd5bc677641926a913bb3a5'/>
<id>urn:sha1:e25fc8b5118fba87acd5bc677641926a913bb3a5</id>
<content type='text'>
* [libcpu/arm64] add C11 atomic ticket spinlock

Replace the former implementation of flag-based spinlock which is unfair

Besides, C11 atomic implementation is more readable (it's C anyway),
and maintainable. Cause toolchain can use their builtin optimization and
tune for different micro-architectures. For example armv8.5 introduces a
better instruction. The compiler can help with that when it knows your
target platform in support of it.

Signed-off-by: Shell &lt;smokewood@qq.com&gt;

* fixup: RT_CPUS_NR

---------

Signed-off-by: Shell &lt;smokewood@qq.com&gt;</content>
</entry>
<entry>
<title>[smart] fixup arm64 aspace switch (#8925)</title>
<updated>2024-05-10T01:17:19Z</updated>
<author>
<name>Shell</name>
<email>smokewood@qq.com</email>
</author>
<published>2024-05-10T01:17:19Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=017b2a5a4461f349958e4b7c629679df3b1f9d7f'/>
<id>urn:sha1:017b2a5a4461f349958e4b7c629679df3b1f9d7f</id>
<content type='text'>
* [smart] fixup arm64 aspace switch

Signed-off-by: Shell &lt;smokewood@qq.com&gt;

* fixup: arm add arch_kernel_mmu_table_get

---------

Signed-off-by: Shell &lt;smokewood@qq.com&gt;</content>
</entry>
<entry>
<title>fix: code format of serial.c and compile error in aarch64 context_gcc</title>
<updated>2024-04-02T12:07:21Z</updated>
<author>
<name>zhao maosheng</name>
<email>zmshahaha@gmail.com</email>
</author>
<published>2024-04-02T07:43:50Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=687eb87a2bcdea48b8e50f8b4db23c24bba657c8'/>
<id>urn:sha1:687eb87a2bcdea48b8e50f8b4db23c24bba657c8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[components][drivers] fix posix tty, and add more baudrate (#8683)</title>
<updated>2024-04-01T13:23:04Z</updated>
<author>
<name>zms123456</name>
<email>85141075+zmshahaha@users.noreply.github.com</email>
</author>
<published>2024-04-01T13:23:04Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=d856f77a554dc89c18c598fad53eea97857c7214'/>
<id>urn:sha1:d856f77a554dc89c18c598fad53eea97857c7214</id>
<content type='text'>
* serial-tty fix

* v2</content>
</entry>
<entry>
<title>[libcpu/aarch64] improve performance of IRQ dis/en-able (#8687)</title>
<updated>2024-03-28T15:32:05Z</updated>
<author>
<name>Shell</name>
<email>smokewood@qq.com</email>
</author>
<published>2024-03-28T15:32:05Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=751c2ada4362db4f80ef48c8cf5d4ed4c7472c51'/>
<id>urn:sha1:751c2ada4362db4f80ef48c8cf5d4ed4c7472c51</id>
<content type='text'>
Signed-off-by: Shell &lt;smokewood@qq.com&gt;</content>
</entry>
<entry>
<title>[kernel] fixup of data racing accessing percpu objects (#8475)</title>
<updated>2024-01-09T15:09:49Z</updated>
<author>
<name>Shell</name>
<email>smokewood@qq.com</email>
</author>
<published>2024-01-09T15:09:49Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=cc157baf23b3757b1741ca06da4bad45b5ff8ddc'/>
<id>urn:sha1:cc157baf23b3757b1741ca06da4bad45b5ff8ddc</id>
<content type='text'>
Signed-off-by: Shell &lt;smokewood@qq.com&gt;</content>
</entry>
<entry>
<title>🎈 perf: perf rt_hw_interrupt_disable/enable (#8042)</title>
<updated>2023-10-25T12:31:25Z</updated>
<author>
<name>xqyjlj</name>
<email>xqyjlj@126.com</email>
</author>
<published>2023-10-25T12:31:25Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=3283f54c7a0444b2e51ec79a4da57e7871528f05'/>
<id>urn:sha1:3283f54c7a0444b2e51ec79a4da57e7871528f05</id>
<content type='text'>
Signed-off-by: Shell &lt;smokewood@qq.com&gt;
Co-authored-by: Shell &lt;smokewood@qq.com&gt;</content>
</entry>
</feed>
