Chris Copeland
867a80fc04
remove tls example from test script
2024-04-29 09:39:41 -07:00
Chris Copeland
e23d0759fe
only build tls example if enabled
2024-04-29 09:31:29 -07:00
Chris Copeland
57d472447b
fix rt_logf call in src/mutex.c
2024-04-29 09:22:46 -07:00
Chris Copeland
7aabd1f3b4
update comment in arch/arm/ar/syscall.S
2024-04-27 15:46:14 -07:00
Chris Copeland
06cacd01ee
add thread-local storage support for arm
2024-04-27 01:23:37 -07:00
Chris Copeland
83223ffcd7
remove unused ... from RT_TASK_INIT
2024-04-22 23:30:43 -07:00
Chris Copeland
b1652ca4d6
add #[repr(transparent)] where applicable
2024-04-20 00:29:31 -07:00
Chris Copeland
15a2acf2c9
add RT_QUEUE for non-static queues
2024-04-20 00:26:15 -07:00
Chris Copeland
8170a8484c
only look at rust arm/ar features if the target is arm
2024-04-19 23:33:09 -07:00
Chris Copeland
ba7db06ccd
remove outdated comment from arch/arm/ar/syscall.S
2024-04-19 23:04:06 -07:00
Chris Copeland
b0426a0d68
add rt_tick_elapse and use it in cond.c and rwlock.c
2024-04-19 06:32:46 -07:00
Chris Copeland
c2bab5d767
add vim syntax comment to rt/arch/pseudo.S
2024-04-18 23:53:01 -07:00
Chris Copeland
6d6f9722b7
use rt/arch/profile.h in arch/arm/syscall.S
2024-04-18 23:50:56 -07:00
Chris Copeland
9ac6a3f33e
add rt/arch/cpsr.h
2024-04-18 23:42:51 -07:00
Chris Copeland
6d981b2b79
avoid extra load and eliminate stack usage in rt_task_sleep_periodic
2024-04-18 21:12:16 -07:00
Chris Copeland
53c48701dd
fix rt_mutex_timedlock and rt_sem_timedwait with 0 timeout
2024-04-18 21:06:08 -07:00
Chris Copeland
bfb77a07b3
add clang-tidy to Dockerfiles
2024-04-16 06:46:25 -07:00
Chris Copeland
1ca0a83ebb
bump rust package version to 0.2.0
2024-04-14 17:17:24 -07:00
Chris Copeland
4b18d53d7a
rename rust rt::sync::Semaphore to rt::sync::Sem
2024-04-14 17:16:53 -07:00
Chris Copeland
9ba2ebb196
add task stack testing with ldrt to supported arm configs
2024-04-14 01:09:02 -07:00
Chris Copeland
0f29c9ae9a
clean up type conversion/limits issues in armv7 mpu
2024-04-14 00:46:56 -07:00
Chris Copeland
634a007749
rustfmt
2024-04-01 00:07:32 -07:00
Chris Copeland
0c741c117c
bump rust package version to 0.1.2
2024-04-01 00:02:07 -07:00
Chris Copeland
7e225ba2df
fix clippy lints
2024-04-01 00:02:07 -07:00
Chris Copeland
b9957f0957
remove rt_mutex_holder, avoid priority donation to an interrupt
2024-03-31 22:42:54 -07:00
Chris Copeland
5d9816bd4a
simplify LOCK and TIMEDLOCK syscalls to not also call wake_mutex_waiter
...
make interrupts use a specific holder value when acquiring a mutex
2024-03-31 18:36:20 -07:00
Chris Copeland
b08e976788
change rust condvar sem max value to match C
2024-03-31 18:36:20 -07:00
Chris Copeland
0140bb11f3
remove bool combinators from queue.rs
2024-03-31 18:36:20 -07:00
Chris Copeland
33ca1b7e83
fix rust mutex guards in fallible acquire functions
2024-03-31 18:36:20 -07:00
Chris Copeland
ec1e67c984
word wrap rust/test.bash
2024-03-28 22:55:48 -07:00
Chris Copeland
20b9d8859b
remove extraneous brackets in TEST_INIT.call_once
2024-03-28 22:54:08 -07:00
Chris Copeland
3814e430bc
remove extraneous export of bindings::rt_syscall_record
2024-03-28 20:44:05 -07:00
Chris Copeland
09c03229c7
bump rust package version to 0.1.1
2024-03-27 02:07:21 -07:00
Chris Copeland
35a58297dd
add cargo features for each of the arm/ar interrupt controllers
2024-03-27 01:49:49 -07:00
Chris Copeland
1a2e750313
reduce scope of unsafe in rust task constructor
2024-03-26 23:07:50 -07:00
Chris Copeland
4fb87ce26d
put rust task stacks in the .stack section on none targets
2024-03-26 22:40:41 -07:00
Chris Copeland
da97fc9bd8
make rust Task not a static mut anymore
2024-03-26 22:40:10 -07:00
Chris Copeland
98d60a504b
yield_ -> yield_now
2024-03-26 22:28:50 -07:00
Chris Copeland
46e42e468a
use cast, cast_const, and cast_mut instead of as *
2024-03-26 22:02:12 -07:00
Chris Copeland
91f347b05a
bump rust package version to 0.1.0
2024-03-26 09:52:30 -07:00
Chris Copeland
b9b6bcd6fc
update task.rs to remove references to static mut
2024-03-26 09:49:44 -07:00
Chris Copeland
6beea0defb
update queue.rs to remove references to static mut
2024-03-26 09:49:25 -07:00
Chris Copeland
e94e61acd8
update msrv to 1.76.0 and use core::ptr::from_ref where possible
2024-03-26 09:49:19 -07:00
Chris Copeland
b731a2e3f8
remove unnecessary barriers in hercules/vic.S, add comments
2024-03-25 09:39:48 -07:00
Chris Copeland
33b25314c9
literal -> imm
2024-03-23 05:53:34 -07:00
Chris Copeland
2198588dc1
use irqvec offset immediate in sitara/vim inline assembly
2024-03-23 05:52:48 -07:00
Chris Copeland
cb08c2e8e3
remove unnecessary barriers in sitara/vim/vic.S, add comments
2024-03-23 05:51:38 -07:00
Chris Copeland
43f6125f17
fix RT_SYSCALL_EXIT after ready list refactor
...
previously exit implicitly made the task not runnable just by changing
its state, but now that active tasks remain in the ready list, an
exiting task must be explicitly removed
2024-03-22 10:36:48 -07:00
Chris Copeland
da2682b51f
update vic.S to include isb and more detailed comments
...
remove dsb from hercules/vic.S for the syscall irq
2024-03-22 10:33:17 -07:00
Chris Copeland
24d9525447
run tests in parallel
2024-03-19 21:12:54 -07:00