bunnie
337afbbe47
bump loader version number
2021-11-02 03:26:16 +08:00
bunnie
8d501cfcc6
add a check that the detached signature metadata matches signed data
...
the unsigned metadata in the signature header is used to compute
the signature, which contains a copy of the key metadata. We forgot
to make sure these match, which means the signed copy was worthless.
Until now.
2021-11-02 03:16:40 +08:00
bunnie
010856406d
fix permissions
2021-10-27 23:06:13 +08:00
bunnie
3a4bbdd71a
fix permissions. windows likes to make all files executable! world writeable!
2021-10-23 18:37:39 +08:00
bunnie
dc527a3619
Rust 1.56 results in a bigger loader. Presumably because "optimization".
...
This causes the font maps to shift down. Allocate some "room to grow"
as Rust gets more "optimal".
2021-10-23 18:36:31 +08:00
bunnie
16fdd25839
fix new compiler warnings since rust 1.55 re: workspace issues
2021-09-10 22:54:01 +08:00
bunnie
e2ce3cad2c
make sure that the power states get set correctly early in the resume process
2021-08-27 15:47:27 +08:00
bunnie
98afa19264
fix kernel uart going dead after suspend/resume
2021-08-24 03:46:02 +08:00
bunnie
abd8eadfd8
modify the console behavior to better capture panics on resume
...
switches to kernel console on suspend, keeps it in kernel
console on resume for a few hundred ms before switching back
to our original setting
2021-08-22 14:28:06 +08:00
bunnie
c0ce66ee51
fix permissions. windows is sort of stupid and makes everything +x
2021-08-19 23:34:29 +08:00
Sean Cross
f5de6551bc
loader: cargo: load packages that work with xous target
...
Load versions of the dalek crates that support the xous target.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-18 18:19:41 +08:00
Sean Cross
c9c02b5d93
loader: initial riscv32imac-unknown-xous compat
...
Initial changes required to get the loader building for the
`riscv32imac-unknown-xous-elf` target.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-18 18:18:56 +08:00
Sean Cross
f952d0d9fe
loader: cargo: add support for -xous- target_os
...
Add link commands to the cargo config so that the loader can be built
for the `riscv32imac-unknown-xous-elf` target.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-18 18:17:53 +08:00
Sean Cross
0c372263ff
loader: mark sections as +X
...
It is unclear why this is required. More investigation
is needed.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-15 21:59:19 +08:00
Sean Cross
4700275b93
loader: handle sections on page boundaries
...
Handle a section that ends exactly at a page boundary.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-15 21:54:59 +08:00
bunnie
a59e4f995c
initial take at converting loader to do fallback instead of fail-hard
2021-08-12 03:48:11 +08:00
Sean Cross
6d7660b76a
loader: debug: fix minor clippy warning
...
Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-06 11:55:56 +08:00
Sean Cross
f7f7ac2ee0
loader: add small comment
...
Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-04 12:50:20 +08:00
Sean Cross
c5445da5d2
loader: only pre-allocate the first stack page
...
For each program, only allocate the first stack page. This will ensure
we don't use too much stack.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-04 12:48:14 +08:00
Sean Cross
e93929e04b
loader: use vendered version of utralib
...
By vendoring this package, we can avoid causing a rebuild unnecessarily.
This will be removed when Rust 1.55 is released and we can bring the
`loader` package back into the main workspace.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-04 12:20:05 +08:00
bunnie
4c777976ac
clear RAM on a cold boot
...
since the RAM is battery backed and persistent, it's probably
a good idea just to zero-ize it before using it on a cold boot.
2021-07-22 03:03:27 +08:00
bunnie
78394b869a
Merge branch 'main' of github.com:betrusted-io/xous-core into main
2021-07-13 22:42:57 +08:00
bunnie
b8b034086c
actually use the curve25519 engine in the loader
...
forgot to apply a patch.crates-io in the Cargo.toml file
for the loader, so we were using u32 software backend emulation.
2021-07-13 22:40:57 +08:00
Sean Cross
7c0e6ba81d
loader: print an error on invalid public key
...
Instead of silently panicking, print an error to the screen and /then/
panic.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-07-13 20:07:11 +08:00
bunnie
a4f8346c34
reflect the latest fixes to the secure boot process
...
also patch up some issues with sha512 reset and loose
ends on docs and updates
2021-07-13 00:46:31 +08:00
bunnie
5d62af49a5
simple signature checks in the bootloader now
...
checks xous.img as a single blob before accepting it.
2021-07-12 17:16:22 +08:00
bunnie
2b19f31da9
set the stage for simple signature validation on the kernel
2021-07-12 02:26:50 +08:00
bunnie
84a2e9f768
fix status bar so that it redraws out of suspend/resume
...
the bootloader modifies the screen, so all elements must
be redrawn regardless of the pervious state change!
2021-07-11 18:47:19 +08:00
bunnie
8007eabd54
Merge branch 'main' of github.com:betrusted-io/xous-core into main
2021-07-11 04:15:26 +08:00
bunnie
1949c1bbc9
a semblance of sanity, finally
2021-07-09 23:01:50 +08:00
Sean Cross
d96b6c15c8
loader: ensure stack is 16-byte aligned
...
The stack must be 16-byte aligned in order for `u32` to work properly,
as the compiler assumes these values are aligned.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-07-07 14:32:08 +08:00
bunnie
6c697de512
add l2 cache support (suspend/resume flushing)
...
also noted some performance benchmark improvements
2021-07-05 17:05:10 +08:00
bunnie
a70b858812
convert to using the urandom interface
2021-06-11 16:29:25 +08:00
Sean Cross
ff46015127
loader: increase stack size to main process
...
The graphics server has been observed to explode stack. This increases
the start size of the stack to prevent this from happening.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-05-10 15:08:46 +08:00
Sean Cross
e43f333faa
loader: don't map the stack into the kernel
...
This prevents the stack from getting claimed by the kernel, or handed
out to another process.
Signed-off-by: Sean Cross <sean@xobs.io>
2021-05-10 14:37:33 +08:00
bunnie
46fe3885dc
cleanup more turds left over during the bringup of suspend/resume
2021-05-01 00:35:32 +08:00
bunnie
260b154741
clean up some boot process holdovers
2021-04-30 23:28:31 +08:00
bunnie
640ddb48e8
suspend/resume now works to hardware
2021-04-30 19:29:36 +08:00
bunnie
7053c2b7c6
able to detect the clean suspend, now figuring out how to resume
2021-04-30 05:00:03 +08:00
bunnie
0e2d57c9fb
retrofit the kernel and loader to handle resume
...
and now the even harder debuggening begins...zomg o_O
2021-04-30 01:55:38 +08:00
bunnie
bbcf698ff3
flesh out a simple touch-and-go suspend/resume demo loop
...
now the debuggening begins. lord help us.
2021-04-29 02:56:53 +08:00
bunnie
805d7c79a2
add some preliminary bits for the loader to detect suspend/resume
2021-04-29 00:22:38 +08:00
bunnie
f76358e716
Merge branch 'bunnie-dev'
2021-04-27 18:55:57 +08:00
bunnie
d2e9d35d37
modify loader to block out suspend resume pages per Xobs review
2021-04-27 18:47:55 +08:00
bunnie
8f679ce41f
revert the loader assembly artifacts
2021-04-27 18:17:07 +08:00
bunnie
7f6abaea6a
Revert "relocate top of kernel memory to save two pages for suspend/resume"
...
This reverts commit 36429de62f .
Turns out there is a better way to do this.
2021-04-27 18:16:33 +08:00
bunnie
07d6055b4e
new loader artifacts, change +x mode on script
2021-04-27 03:52:34 +08:00
bunnie
36429de62f
relocate top of kernel memory to save two pages for suspend/resume
2021-04-27 03:51:38 +08:00
bunnie
8ae1a7ff8c
Update README.md
2021-04-27 03:47:32 +08:00
bunnie
85211bb57d
add susres server skeleton
2021-04-27 00:38:51 +08:00