xous-core/libs
bunnie affe4e6c54 move APIs out of cramium-hal
So the organization of the code is now the following tiers:

libs/cramium-api: contains hardware-abstracted API code to the hardware
layers (traits, some constants, enums, etc.). For example, "here is
an IO trait that lets you configure and set GPIO pins", which could
then be implemented in hardware or emulation. The APIs aren't entirely
generic across all SoCs because they are tweaked to accommodate
quirks of the cramium SoC.

libs/cramium-hal: contains board-specific driver codes that do not
require persistent services to be started. Possibly misnamed because
it also includes not just cramium-chip items, but also e.g. peripherals
to the cramium SoC, such as the PMIC and camera.

services/cramium-hal-service: contains the `main` process that manages
shared resources, such as UDMA, IO pins, IFRAM. These drivers cannot
be delegated to a `lib` crate because there can be only one instance
of these resources, and instead we have to dynamically allocate
access to these through IPC messaging.

services/cramium-emu: hosted mode emulation of things in
cramium-hal-service.

services/bao-video: contains a `main` process that integrates
the camera and OLED driver. This means that all graphic drawing
primitives also interface with this crate. These are condensed
into a single process space to speed up execution, and kept
separate from cramium-hal-services because we want the video
services to not be blocked by, for example, a thread that is
handling I2C things.
2025-02-20 13:54:46 +08:00
..
blitstr2 add configuration for doc build 2025-02-17 22:53:56 +08:00
chat formatting changes due to changes in nightly rust 2025-02-01 22:26:40 +08:00
cos_table format libs/cos_table 2024-01-14 19:12:38 +08:00
cramium-api add a "platonic" API crate for cramium 2025-02-20 13:27:18 +08:00
cramium-hal move APIs out of cramium-hal 2025-02-20 13:54:46 +08:00
flatipc update formatting to latest nightly rules 2024-09-24 01:49:45 +08:00
flatipc-derive update formatting to latest nightly rules 2024-09-24 01:49:45 +08:00
mass-storage stage tomls for version bump: try_send added to xous-ipc 2024-12-16 18:50:11 +08:00
perflib update formatting to latest nightly rules 2024-09-24 01:49:45 +08:00
tls stage tomls for version bump: try_send added to xous-ipc 2024-12-16 18:50:11 +08:00
userprefs stage tomls for version bump: try_send added to xous-ipc 2024-12-16 18:50:11 +08:00
ux-api clean up ux-api to be no-std clean 2025-02-20 13:32:52 +08:00
xous-bio commit the version bump 2024-09-23 01:46:25 +08:00
xous-bio-bdma turns out it helps if you put explicit pull-ups on the I/Os 2024-11-28 16:14:14 +08:00
xous-pio commit the version bump 2024-09-23 01:46:25 +08:00
xous-pl230 remove xous-pio references in cargo files 2024-12-02 01:21:57 +08:00