Skip to content

Ast10x0 : FMC flash backend for the flash service - #433

Draft
rusty1968 wants to merge 11 commits into
OpenPRoT:mainfrom
rusty1968:fmc-flash-service
Draft

Ast10x0 : FMC flash backend for the flash service#433
rusty1968 wants to merge 11 commits into
OpenPRoT:mainfrom
rusty1968:fmc-flash-service

Conversation

@rusty1968

Copy link
Copy Markdown
Collaborator

This PR depends on #365

Tests

The service is exercised end-to-end through the full IPC stack (FlashIpcClient → server → BlockingFlash → Ast10x0FmcFlashDriver → FMC CS0), not just at the peripheral level.

  • flash_qemu_test — runs under emulation, no hardware required
  • flash_evb_test — the same system image on real AST10x0 EVB hardware

cfrantz and others added 11 commits August 19, 2026 19:11
Signed-off-by: Chris Frantz <cfrantz@google.com>
Signed-off-by: Chris Frantz <cfrantz@google.com>
The flash-service branch's services/flash/client.rs calls
ErrorCode::check_status, which was missing from util/error on this
branch; restore it so the baseline compiles.
Adds the AST10x0 flash-service test image's system config, generic
kernel target, and server app (flash_server_bin). The server process
owns the SCU (pinctrl), FMC register, and CS0 AHB read-window device
mappings, and serves services_flash_server::FlashIpcServer requests
over the "flash" channel using the Task 3 FMC backend. The client app,
system_image, and tests are added by the next task.
Completes the pinmux-ownership change already present in the flash test
image (system.json5 no longer maps the SCU into the server process): the
backend driver no longer touches the shared SCU; PINCTRL_FMC_QUAD is
applied once by the kernel target before any process starts.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants