bunnie
6ce2c50c02
add static sleep screen
2020-10-11 15:42:57 +08:00
Sean Cross
d0d687a239
utra: fix build on non-hardware release
...
This adds svd2utra, which enables building for non-embedded harware.
It also fixes some build issues, and paves the way for generating UTRA
at compile-time.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-05 10:13:51 +08:00
Sean Cross
8be5855ea3
examples: shell: remove Log Server stuff
...
We don't have a log server yet, so remove this dependency.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-04 19:07:53 +08:00
Sean Cross
2aa6d1298f
shell: timer: add timer function
...
We're now a preemptive kernel, yay!
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-04 19:07:34 +08:00
Sean Cross
18129d575b
shell: add utra to Cargo.toml
...
This is required in order to get the timer address.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-04 19:07:06 +08:00
Sean Cross
81ff6afd66
shell: disable debug output for now
...
We don't have a serial console yet, so disable this.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-04 19:06:13 +08:00
Sean Cross
e73fe08a3e
graphics-server: bounds-check for negative coords
...
This prevents us from drawing pixels off the screen.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-04 19:04:24 +08:00
bunnie
711e5ea910
slot in utra references
2020-10-02 04:52:03 +08:00
bunnie
44f1a6b307
Merge branch 'master' of https://github.com/betrusted-io/xous-core into dvt-hardware
2020-09-25 17:50:24 +08:00
bunnie
8cc85f4e11
mods for running on DVT hardware
2020-09-25 17:50:02 +08:00
Sean Cross
10526c6be9
examples: add blockingscalar to message types
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-09-23 10:59:12 +08:00
Sean Cross
4a8590d336
graphics-server: fix to change in send_message syntax
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-09-23 10:58:09 +08:00
Sean Cross
b6f1bf2079
log-server: use try_ calls
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-30 17:41:15 +08:00
Sean Cross
60e652bd51
shell: use try_ calls for messaging
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-30 17:41:02 +08:00
Sean Cross
8d438e4796
examples: graphics-server: use try_ calls for messaging
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-30 17:40:29 +08:00
Sean Cross
9862977523
graphics-server: add missing files
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-30 01:17:56 +08:00
Sean Cross
f2156b19bd
graphics-server: comment out println (for now)
...
When building for bare metal hardware, we don't yet have println.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-30 00:32:46 +08:00
Sean Cross
7d8f589830
examples: get three-process IPC working
...
The log, graphics, and shell processes now all talk to one another. This
illustrates how multiple processes can communicate regardless of what is
going on underneath.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-29 22:09:20 +08:00
Sean Cross
179623e083
examples: fix shell running on hardware
...
Previously, the `baremetal.rs` library was removed. This resulted in
this program no longer running on hardware.
Add this library back in.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-18 17:00:48 +08:00
Sean Cross
dfd11f846d
hosted: fix hosted builds
...
We can now run `cargo xtask run` and it will do the right thing.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-18 13:52:43 +08:00
Sean Cross
1da460cd41
examples: fix betrusted LCD under Renode
...
This gets the Betrusted LCD demo working within emulation, which means
it ought to work on real hardware.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-18 12:09:23 +08:00
Sean Cross
8920ab57cf
xtask: remove loader, kernel from workspace to fix rebuilds
...
These packages modify RUSTFLAGS, which causes some packages to be
rebuilt every time. Move them out of the workspace so as to ensure they
don't use the same `target` directory.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-18 10:51:29 +08:00
Sean Cross
d1f9b703fb
graphics-server: add betrusted backend
...
This backend should function identically to how the hosted server works.
Untested on hardware.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-17 19:43:00 +08:00
Sean Cross
82c9915ad6
examples: append -server to server names
...
This keeps server names such as "log" and "graphics" as unambiguous.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-17 19:41:50 +08:00
Sean Cross
89d6259819
graphics: correct the default color
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-14 18:51:15 +08:00
Sean Cross
dc3dc20bd3
graphics: add embedded-graphics
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-14 18:46:23 +08:00
Sean Cross
6abe2af34e
graphics: use dumb lfsr instead of rand crate
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-14 18:20:37 +08:00
Sean Cross
92a21a9fce
graphics: initial version
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-14 17:25:20 +08:00
Sean Cross
45bd670138
examples: shell: get shell working on baremetal
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-10 23:04:36 +08:00
Sean Cross
4b58e5108e
examples: log: remove unused addr field
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-10 22:47:18 +08:00
Sean Cross
1d23bc5aae
kernel: first multiple threads working
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-10 21:17:48 +08:00
Sean Cross
ea3a473c9f
reworking memory allocation
...
The kernel should run in a `no_std` environment, which means it must
currently run without `alloc`. We have our own allocation methods when
running on baremetal hardware.
Begin the work to break out the allocation method so that it will work
on both desktop and baremetal environments.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-03 17:40:57 +08:00
Sean Cross
21aa67b748
workspace: remove workspace
...
The kernel and userspace both need to use `xous`, but have different
requirements. If we use a workspace, then all instances of `xous-rs`
must have the same feature set.
This breaks them apart so the kernel can have one set of features and
programs can have another set.
As part of this change, tests are now integrated into the kernel, and a
new `create_process_as_thread()` and `wait_process_as_thread()` function
pair have been added.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-08-02 16:11:12 +08:00
Sean Cross
cece761ff1
xous: SID: convert to using newtype
...
Rather than simply casting a tuple as a type, create a new struct SID.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-07-29 20:03:21 +08:00
Sean Cross
c2ac69a752
shell: hack to get test working
...
THis can now connect to the log server.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-07-29 19:31:49 +08:00
Sean Cross
e7e8a2b748
kernel: get initial hosted non-test processes working
...
This now has the ability to fork off processes.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-07-29 17:52:01 +08:00
Sean Cross
88d8274a19
examples: log: begin refactoring for desktop
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-07-23 19:06:41 +08:00
Sean Cross
8f74159674
rename ImmutableBorrow -> Borrow
...
THis is more in-line with Rust conventions.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-07-13 19:19:25 +08:00
Sean Cross
723529ba20
wip: working on getting message passing working
...
The goal is to get a basic message passing engine working that will also
function as a device that works on real hardware.
This is still reworking it to function correctly on a desktop system.
Once that is working, it will be reworked to function once again on
hardware.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-06-15 18:13:10 +08:00
Sean Cross
6ad48ab062
examples: shell: adapt to new form of syscalls
...
We're not slinging raw pointers around anymore.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-06-03 15:39:48 +08:00
Sean Cross
8cc43d64b5
examples: log: get building cross-platform
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-06-03 15:39:38 +08:00
Sean Cross
0fae191651
examples: shell: get building in a hosted env
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-06-03 11:02:44 +08:00
Sean Cross
40d4483e4f
clippy: fix several clippy warnings
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-06-01 11:36:19 +08:00
Sean Cross
d4db20e516
kernel: add preemptive multitasking
...
This is still a work in progress, but we now can have multiple processes
running at once.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-06 15:52:07 +08:00
Sean Cross
8789203eb3
test mutable borrows
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-03 14:24:02 +08:00
Sean Cross
ed977fd564
kernel: initial work to support lending pages
...
This lays groundwork to support lending pages from one process to
another, and to restore permissions when pages are handed back.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-02 17:40:14 +08:00
Sean Cross
834c637783
examples: go to sleep when we panic
...
This prevents this process from constantly hogging the CPU.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-01 13:20:31 +08:00
Sean Cross
bdb8eac9ad
MemoryRange: move to using this struct for memory ranges
...
This is a combination of MemoryAddress and MemorySize. This is
guaranteed to be not null.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-01 10:28:36 +08:00
Sean Cross
94459c8d43
examples: add log strings
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-03-31 18:37:40 +08:00
Sean Cross
abce9eb0c1
message::move: implement movable messages
...
This is the first implementation of message passing with moving memory.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-03-31 18:03:19 +08:00