Commit graph

2122 commits

Author SHA1 Message Date
bunnie
97895fd9c9 fix cache coherence issue with FLASH
after updating a piece of FLASH memory, there is an inherent
cache coherence issue. This is because the write happens through
a side channel that is outside of the memory model of the system:
writes happen through a CSR that feed data to pages of FLASH.
Reads happen through direct-mapped memory regions that are unaware
of write mutations.

Thus, after writing a page of memory, if you try to access it,
sometimes you'll read the old cached value instead of the new
updated value.

This patch introduces a mandatory dcache flush after every
FLASH write, so that any cached FLASH regions are re-fetched.
2022-10-07 18:50:51 +08:00
bunnie
6418f8b54f add notes about making the cache flush loop more efficient on suspend 2022-10-07 18:46:59 +08:00
bunnie
97ccb67ff2 cleanup push artifacts 2022-10-06 00:03:27 +08:00
bunnie
e5704cef4e add for cargo push 2022-10-06 00:02:55 +08:00
bunnie
7a3a132780 bump other API levels 2022-10-05 23:58:46 +08:00
bunnie
3bca9de2a0 bump version numbers for xous-kernel patch
this fixes tests in CI
2022-10-05 23:51:35 +08:00
bunnie
86cc7de6b1 version.rs should not be cached 2022-10-05 21:20:01 +08:00
bunnie
5c0154f730 cleanup version comparison code
this should be "clean" and working. yowch, this is really strict...
i may need to loosen this checking to make development sustainable.
2022-10-05 18:53:09 +08:00
bunnie
969f93b001 cross-repo update versions from xous-rs bump 2022-10-05 18:32:44 +08:00
bunnie
eaa59348e7 oops meant 0.1.3 2022-10-05 18:03:07 +08:00
bunnie
edadcecebc bump susres to 0.1.2 2022-10-05 18:02:18 +08:00
bunnie
851cd0924c bump xous-names to 0.9.9 2022-10-05 18:01:22 +08:00
bunnie
a10520cdd4 bump log to 0.1.1 2022-10-05 18:00:17 +08:00
bunnie
ef4053586d fix typo 2022-10-05 17:59:17 +08:00
bunnie
161a4dbc5d now republish ticktimer with updated api refs (0.1.3) 2022-10-05 17:58:21 +08:00
bunnie
c31e050926 it helps to save teh file 2022-10-05 17:44:14 +08:00
bunnie
45d606c8f2 bump susres to 0.1.2 (xous-rs dependency) 2022-10-05 17:43:13 +08:00
bunnie
a12973a7ae bump ticktimer to 0.1.2 for new xous-rs dependencies 2022-10-05 17:41:45 +08:00
bunnie
bcee655dcb fix published package to reflect correct susres API 2022-10-05 17:08:03 +08:00
bunnie
4a8c4498ea fix inconsistency in Cargo.toml file 2022-10-05 17:00:18 +08:00
bunnie
9dcc0a3386 absorb ticktimer api bump, propagated from susres bump 2022-10-03 04:40:06 +08:00
bunnie
d2b2383d1a bump susres version 2022-10-03 04:36:32 +08:00
bunnie
e4c306d50a remove version from tracking when not packaging 2022-10-03 03:46:04 +08:00
bunnie
b184bfbe6a move ticktimer to remote api 2022-10-03 03:37:38 +08:00
bunnie
924c0fd802 fix more crates.io issues 2022-10-03 03:27:20 +08:00
bunnie
4fbfd0e686 commit an interim version for crating 2022-10-03 03:21:34 +08:00
bunnie
2b8b74003d set default for crates.io 2022-10-03 03:20:42 +08:00
bunnie
567a408c92 prep ticktimer crate for crates submission 2022-10-03 03:18:38 +08:00
bunnie
89ca75c4bf move over to remote susres api 2022-10-03 02:24:44 +08:00
bunnie
8f6880faf3 fix another default case 2022-10-03 02:20:55 +08:00
bunnie
35aa11bec9 add a default implementation for crates.io 2022-10-03 02:18:28 +08:00
bunnie
34fd38db92 prep susres for crates.io 2022-10-03 02:16:06 +08:00
bunnie
e52db91a73 bump tts to absorb new xous-names api 2022-10-03 02:05:08 +08:00
bunnie
47f1dc582d bump api rev for xous-names 2022-10-03 01:57:42 +08:00
bunnie
6123e8ff9b xous-names conversion to crates.io 2022-10-03 01:18:20 +08:00
bunnie
be87a92d7a select a default implmeentation for crates.io 2022-10-03 01:16:37 +08:00
bunnie
88af49eaa4 commit removoal of API features 2022-10-03 01:15:00 +08:00
bunnie
34020b4515 prep for push of xous-names implementation to crates.io 2022-10-03 01:14:28 +08:00
bunnie
de514ac66f rename packages in prep for upload to crates.io 2022-10-03 00:24:45 +08:00
bunnie
29ce54635b actually, make hosted the default implementation for crates.io 2022-10-03 00:03:10 +08:00
bunnie
88b059c560 add a default impl so packaging doesn't barf 2022-10-03 00:02:27 +08:00
bunnie
c0b6738b69 prep log server for upload to crates.io 2022-10-02 23:59:34 +08:00
bunnie
33940aceb2 remove false dependency 2022-10-02 21:46:24 +08:00
bunnie
b1c3a70f35 cleanup bitrot in usb-test 2022-10-02 14:51:02 +08:00
bunnie
4e40ae6c5d move from target selectors to feature selectors for back-ends
This will allow for e.g. xous on riscv32-imac but not a precursor
target, for example: by using feature selectors we get to have
a bigger range of targets that we support, such as for implementations
that haven't been upstreamed or have official target-triples.

The downsides are:

- patch override libraries don't absorb feature flags. so, for
example, the AES crate that is used to patch other crates won't
be aware of the target features without modifying the referencing
crates.

- features are normally meant to be additive, but target features
are mutually exclusive. The mutex is enforced by a check in
utralib that throws a panic on build if two targets are accidentally
selected at the same time.
2022-10-02 02:56:44 +08:00
bunnie
fb29c9b2c1 refactor utra target line to use explicit feature targets
still need to rework the crate feature selection
2022-10-02 02:20:03 +08:00
bunnie
884e19b9de clean up an error 2022-09-28 01:35:19 +08:00
bunnie
4f2506f009 some housekeeping; remove bit-rotted test targets
these targets are so old they would need to be completely
re-written to be relevant, so just cull them.
2022-09-27 17:50:32 +08:00
bunnie
ecab0ba045 fix default-features in services 2022-09-27 02:44:46 +08:00
bunnie
d667d7e1f5 bump xous-ipc version 2022-09-27 01:14:43 +08:00