summary refs log tree commit diff
path: root/library/std/src/sys/xous/mod.rs
AgeCommit message (Collapse)AuthorLines
2023-10-18std: implement thread parking for xousjoboet-1/+0
2023-08-22std: xous: add support for locksSean Cross-1/+0
Add support for Condvar, Mutex, and RWLock. These are all backed by the ticktimer server. Signed-off-by: Sean Cross <sean@xobs.io>
2023-08-22std: xous: add thread_local_keySean Cross-1/+0
Add an implementation of thread local storage. This uses a container that is pointed to by the otherwise-unsed `$tp` register. This container is allocated on-demand, so threads that use no TLS will not allocate this extra memory. Signed-off-by: Sean Cross <sean@xobs.io>
2023-08-22std: xous: add thread supportSean Cross-1/+0
Add initial support for threads on Xous. This includes thread creation and joining. Signed-off-by: Sean Cross <sean@xobs.io>
2023-08-22std: xous: add support for timeSean Cross-1/+0
Add support for determining the current time. This connects to the ticktimer server in order to get the system uptime. Signed-off-by: Sean Cross <sean@xobs.io>
2023-08-22std: xous: add output support for stdioSean Cross-1/+0
Add support for stdout. This enables basic console printing via `println!()`. Output is written to the log server. Signed-off-by: Sean Cross <sean@xobs.io>
2023-08-22std: xous: add alloc supportSean Cross-1/+0
Basic alloc support on Xous is supported by the `dlmalloc` crate. This necessitates bumping the dlmalloc version to 0.2.4. Signed-off-by: Sean Cross <sean@xobs.io>
2023-08-22std: xous: the basics of `os`Sean Cross-1/+0
Add the basics to get the operating system running, including how to exit the operating system. Since Xous has no libc, there is no default entrypoint. Add a `_start` entrypoint to the system-specific os module. Signed-off-by: Sean Cross <sean@xobs.io>
2023-08-22libstd: add xous to libstdSean Cross-0/+44
Add the `xous` target to libstd. Currently this defers everything to the `unsupported` target. Signed-off-by: Sean Cross <sean@xobs.io>