Commit graph

8468 commits

Author SHA1 Message Date
bunnie
a4e86eead5 cleanup some gen1/gen2 differences 2025-05-06 01:49:42 +08:00
bunnie
5aece73f3c add pddbtest to the emulation target 2025-05-06 01:49:13 +08:00
bunnie
095939ee53 allow multiple listeners in gen2 targets
this simplifies a bunch of stuff when we can trust the internal
code base
2025-05-06 01:48:37 +08:00
bunnie
30fcc3016f use bao-video to route the acquire/release of the modals focus
it has to route through here anyways, so this is the sensible
place to also forward on the keyboard release/acquire messages
2025-05-06 01:47:55 +08:00
bunnie
3faad803d3 add catch-all operand for keystore 2025-05-06 01:47:30 +08:00
bunnie
8a2651e9cb add no-gam coordination of keyboard hits based on focus of keys
modals has to be able to acquire/release focus without the
assistance of the GAM in a no-gam model.
2025-05-06 01:46:56 +08:00
bunnie
8d896b4dba add pddb command to bao-console 2025-05-06 01:46:34 +08:00
bunnie
b2f32b7b6f add an emulated keystore for hosted mode
this is a dummy keystore so we can test other UX operations.
the full keystore will be a lot harder to write.
2025-05-06 01:45:53 +08:00
bunnie
1ee1239494 fix hosted mode lifetime issue 2025-05-05 01:52:43 +08:00
bunnie
73467417c3 lockfile updates 2025-05-05 01:50:08 +08:00
bunnie
34e9a1f1ce gen2 apis now compiling clean
system doesn't work yet because none of the keystore is there, but
at least we don't have conflicting/missing APIs
2025-05-05 01:49:39 +08:00
bunnie
86b079f2f4 add spinor defs to cramium-emu
this is a shim that reps both boards and "chips" for hosted mode
so it's OK to mash them together as a synthetic target
2025-05-05 01:49:05 +08:00
bunnie
e3cb5e495c remove spinor defs from the swapper
should be defined in the board, not in the swapper
2025-05-05 01:48:46 +08:00
bunnie
71f444ff3d API framework for the keystore 2025-05-05 01:48:28 +08:00
bunnie
868a1f280b move SPINOR params into board definition
this makes a lot more sense that defining it at the chip level
2025-05-05 01:47:50 +08:00
bunnie
46f4112f1a add keystore to baosec server list 2025-05-05 01:47:37 +08:00
bunnie
05720032cf flesh out keystore api 2025-05-05 01:47:17 +08:00
bunnie
87140a2024 cleanup the api a bit more
realized it was dumb to have separate file paths for the
orthogonal implementations
2025-05-04 19:12:51 +08:00
bunnie
c8db01c563 re-org rootkeys-api into common and generation-specific libraries 2025-05-04 19:05:58 +08:00
bunnie
5ae0761413 lockfile impacts for keystore-api 2025-05-04 18:34:49 +08:00
bunnie
9d6223d0b2 pddb migrations for keystore-api 2025-05-04 18:34:33 +08:00
bunnie
2c47db081d other crates affected by api migration 2025-05-04 18:34:17 +08:00
bunnie
7c6ecf308e migrate rootkeys api to keystore-api 2025-05-04 18:34:01 +08:00
bunnie
f3fa5f6c68 migrate rootkeys API to a neutral third party crate
this will allow for bridging APIs between generations
2025-05-04 18:30:39 +08:00
bunnie
90aab45376 lockfile changes related to the few immediate prior commits 2025-05-04 17:03:40 +08:00
bunnie
22433fa25c reconfigure toml files for pddb target testing
OK, i think this gets us to the starting point of shaving down
the PDDB crate from the restored baseline
2025-05-04 17:03:00 +08:00
bunnie
8e52d4ca5d minor cleanup on swapper crate
still a lot of warnings but the code is all stubs so that's normal
2025-05-04 17:02:15 +08:00
bunnie
48c6ce7232 cleanup non-spinor config for xous-swapper
this allows us to build configs that aren't in the dev path
without errors
2025-05-04 17:00:08 +08:00
bunnie
f9c42f6176 rollback pddb to previous known good state
restart the refactor process now that the modals arc is finished.
2025-05-04 16:40:13 +08:00
bunnie
142d55a2b7 this was meant to be committed with the previous commit 2025-05-04 16:34:12 +08:00
bunnie
ae23121d6a checkin work state before we rollback the pddb area
i have decided that the current approach sucks, and i'm going
to abort the work in the pddb area. however, the stuff in
the rest of the branch is pretty useful, so we'll just revert
the stuff inside the pddb directory.
2025-05-04 16:33:12 +08:00
bunnie
34a6b5a8a7 keystore to lockfile 2025-05-04 03:35:03 +08:00
bunnie
12a9511ae3 add keystore to the workspace 2025-05-04 03:34:44 +08:00
bunnie
abbffaaf20 more restructuring of pddb codebase
in particular, spinor driver stub does not belong in this crate
2025-05-04 03:34:01 +08:00
bunnie
9ca7b38222 add pddb into the hw config 2025-05-04 03:33:37 +08:00
bunnie
0b4ff70798 remove modal testing as it's not needed in this branch 2025-05-04 03:33:09 +08:00
bunnie
d985491c7f add block erase routines 2025-05-04 03:32:52 +08:00
bunnie
b2098916c7 start to add a spinor driver into xous-swapper
the hardware interface for SPIM is shared between both
RAM and FLASH, therefore, the drivers need to be co-located
in the same crate.
2025-05-04 03:31:15 +08:00
bunnie
c6123f1aec add a placeholder for keystore 2025-05-04 03:29:53 +08:00
bunnie
32ed73b4f8
Merge pull request #638 from betrusted-io/gc2145
GC2145
2025-05-01 16:46:30 +08:00
bunnie
2c534b6d4d add cam-test option to xtask loader as a comment 2025-05-01 16:44:51 +08:00
bunnie
51b103d674 add cam-test target to the loader 2025-05-01 16:44:43 +08:00
bunnie
3f2c4e396a cleanup the camera/QR testing loop in bootloader
This loop was useful in bringing up the GC2145 camera, so
we should keep this code around. had to be refactored/shuffled
around a bit to compensate for e.g. bitrot.
2025-05-01 16:43:53 +08:00
bunnie
2699146d62 integrate gc2145 into userspace
couple of notes:

- bw threshold is now dynamic, based on the average of the previous frame
- performance is a bit slower than ideal, because of the SPI back pressure
bug preventing us from reading out the video at full speed. This should
be better on NTO.
- rotation introduced so that the preview image should align up
with what we'll have in the final camera v. display orientation in
the baosec product
- tested against the TOTP test suite (edent.codeberg.page/TOTP_Test_Suite/)
and it can quickly capture all of the basic valid tests.
2025-05-01 16:41:03 +08:00
bunnie
7ee15b874d cleanup on the gc2145 driver 2025-05-01 16:40:46 +08:00
bunnie
535153e0cb switch cameras and move YUV setting into driver 2025-05-01 04:09:52 +08:00
bunnie
6fdf868b44 make camera pins generic 2025-05-01 04:09:36 +08:00
bunnie
6d1a362735 add gc2145 to cargo file 2025-05-01 04:09:17 +08:00
bunnie
0ca3caf917 add gc2145 module 2025-05-01 04:09:00 +08:00
bunnie
d7aafc6c50 put yuv mode into the ov2640 driver directly 2025-05-01 04:08:37 +08:00