Sean Cross
ffcccab513
emulation: add ticktimer and serial uarts
...
This updates renode's emulation to match the current system design.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-15 11:56:41 +08:00
bunnie
9ee43a7acc
some more attempts to get log strings working...
2020-10-15 00:01:02 +08:00
bunnie
c8a2f34998
add debug output to log_string
2020-10-14 23:15:33 +08:00
bunnie
9a8c402cc2
add hosted mode bits back in
2020-10-14 23:04:54 +08:00
bunnie
6ff8c8518c
Merge branch 'master' of github.com:betrusted-io/xous-core
2020-10-14 23:02:14 +08:00
bunnie
ac4d79ea68
logging server bringup
2020-10-14 23:01:57 +08:00
Sean Cross
4ca97125ad
xous: hosted: retry when WouldBlock is received
...
Retry a message when we receive a WouldBlock response.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 19:26:33 +08:00
Sean Cross
2b66378556
xous: definitions: add WouldBlock
...
This opcode indicates a command would block and should be retried.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 19:26:13 +08:00
Sean Cross
30ac202e65
Merge branch 'master' of github.com:betrusted-io/xous-core into master
2020-10-14 19:25:02 +08:00
Sean Cross
797d622cc7
kernel: use connect() for some kernel tests
...
Now that `connect()` works, use that for some tests rather than
exclusively using `try_connect()`.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 19:19:01 +08:00
Sean Cross
80a003c839
kernel: syscall: implement connect()
...
This implements the `connect()` syscall as a blocking version of
`try_connect()`.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 19:18:16 +08:00
bunnie
88f0ad0056
update example soc.svd so CI doesn't break
2020-10-14 19:03:00 +08:00
bunnie
5cf8e9e3bc
Merge remote-tracking branch 'origin/master' into ticktimer
2020-10-14 15:30:47 +08:00
Sean Cross
3bb9b55bb4
graphics-server: use send_message() instead of try_send_message()
...
This function is now implemented, and should give us better performance.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 11:18:31 +08:00
Sean Cross
ac321be7e9
xous: implement send_message()
...
This fixes `send_message()` so it works as expected.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 11:18:02 +08:00
Sean Cross
54a8de2776
kernel: fix return_scalar and return_scalar2
...
These didn't correctly set the thread status in the server when
returning a value. Instead of marking a server as runnable, it remained
in an idle state.
This correctly sets the thread status in the server, and resumes the
client.
This has been tested in Renode as well as using `cargo test`.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 11:16:21 +08:00
Sean Cross
ecd2d00f47
kernel: fix return_scalar2
...
This call did not work, because it wasn't properly returning control to
the parent process.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 10:54:23 +08:00
Sean Cross
61fdd5be15
kernel: hosted: add current_tid() to Process
...
This allows us to mock the current TID for debugging purposes on hosted
environments.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 10:54:19 +08:00
Sean Cross
e5100bcb33
kernel: syscall: implement SendMessage
...
SendMessage is a blocking version of TrySendMessage, except this call
will block if the server queue is full.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 10:14:43 +08:00
Sean Cross
0c344efb60
kernel: syscall: move do_yield() to its own function
...
This will allow us to call `Yield` for other operations that need to be
blocking.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 10:14:43 +08:00
Sean Cross
585e55e8b7
kernel: implement retry_instruction()
...
This function is used to decrement the program counter to re-run a given
instruction. This can be used as a cheap way to implement blocking
calls.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 10:04:36 +08:00
Sean Cross
a0a90cc3ab
emulation: rename example.svd to renode.svd
...
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-14 10:04:20 +08:00
bunnie
49f15e547f
upgrade to work with multi-UART API
2020-10-14 04:35:15 +08:00
bunnie
5b51048774
add debugprint template to other servers
2020-10-14 03:41:53 +08:00
bunnie
1d23d2c1f7
unify debug.rs and move to UTRA format
2020-10-14 03:40:44 +08:00
bunnie
62b625ec60
convert kernel debug to utra
2020-10-14 03:04:33 +08:00
bunnie
67c49ddbce
clean up a warning
2020-10-14 03:04:25 +08:00
bunnie
30042b460c
no need to mutably borrow for reads
2020-10-14 03:04:09 +08:00
bunnie
523d18f5ab
refactor "examples" -> "services"
2020-10-14 02:04:21 +08:00
bunnie
a8ea46f6cd
forgot to add debug.rs for graphics-server
2020-10-14 01:56:40 +08:00
bunnie
f863cb55cd
update logo screen
2020-10-14 01:56:31 +08:00
bunnie
4d21f2d868
intermediate progress on debugging return messages
2020-10-14 01:28:10 +08:00
Sean Cross
84b39c931a
kernel: services: switch address space prior to passing messages
...
Switch address spaces to pass messages to the new process, and switch
backafterwards.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-13 22:56:04 +08:00
Sean Cross
39c7dced01
kernel: services: switch address space prior to passing messages
...
Switch address spaces to pass messages to the new process, and switch
backafterwards.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-13 22:54:43 +08:00
Sean Cross
53f1b3c416
kernel: main: make utralib incusion conditional
...
Only include utralib when running on baremetal.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-13 22:54:12 +08:00
bunnie
6e6a8a4b08
debugging ticktimer
2020-10-13 22:49:12 +08:00
bunnie
1bb674f6b5
fix dangling hard-coded references
2020-10-13 16:15:41 +08:00
bunnie
154384e3bb
output hex for kernel debug
...
makes it much easier to read memory allocation requests
2020-10-13 16:15:15 +08:00
Sean Cross
a2ede7adf6
utralib: fix build dependency on svd file
...
Previously, the svd file was treated as an environment variable to
watch. Naturally this never changed, so an updated svd file never
triggered a rebuild.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-13 14:18:00 +08:00
Sean Cross
bb0db65e58
utralib: fix build dependency on svd file
...
Previously, the svd file was treated as an environment variable to
watch. Naturally this never changed, so an updated svd file never
triggered a rebuild.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-13 08:32:39 +08:00
bunnie
cab4c7d4a9
fix more UTRA issues; migrate to dual-UART for kernel/console messages
2020-10-13 05:22:19 +08:00
bunnie
10aacd76c4
move to utra
2020-10-13 04:38:21 +08:00
bunnie
d5668be9b6
Merge branch 'master' of https://github.com/betrusted-io/xous-core into ticktimer
2020-10-13 04:15:01 +08:00
Sean Cross
5e4c702c02
xtask: fix renode build
...
This properly sets the environment variable required for UTRA.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-12 22:25:55 +08:00
bunnie
98f648f30f
attempt to add a ticktimer server
2020-10-12 19:08:16 +08:00
bunnie
2fdc83b588
convert to UTRA abstraction
2020-10-12 17:26:34 +08:00
bunnie
fc02a3e4e1
add 32-bit field width option
2020-10-12 16:54:03 +08:00
bunnie
d36a2f2327
tweak API for better/unambiguous path resolution in page allocations
2020-10-12 04:12:21 +08:00
bunnie
9a50de8b4e
refactor: utra -> utralib naming
...
this cleans up some namespace issues when including
the utra crate which also refers to utra::generated::utra,
and there are CONST at the crate-level, and also functions
at the module-level which need disambiguation. By naming
the crate utra-lib this saves a bit of syntatic wrangling
at the top of every file.
2020-10-12 03:56:10 +08:00
bunnie
cb6fcb60e8
add doc pointer
2020-10-12 03:25:11 +08:00