Commit Graph

764 Commits

Author SHA1 Message Date
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