Descriptor Selector
Component Type: Input/Output
Status: Implemented
Overview
CIODescSelector is an IO class used to select the active descriptor slot
at runtime.
CIODescSelector is a read-write control IO:
Read returns the currently active descriptor slot index.
Write requests a slot switch.
Before accepting a switch request, Dawn validates the target slot descriptor binary (CRC + structure validation). Invalid slots are rejected.
Implementation
Read returns active slot index as
uint32.Write validates target descriptor slot then requests switch.
Writing the currently active slot is a no-op and returns success.
Configuration
Kconfig
CONFIG_DAWN_IO_DESC_SELECTOR: enables descriptor selector IO.
YAML
ios:
- id: descselector0
type: descselector
dtype: uint32
rw: true
Configuration Fields
CIODescSelector has no class-specific configuration fields.
It uses only common IO fields.
id: IO identifier.type: must bedescselector.dtype: useuint32.rw: must betrue(selector is read/write).config.device: optional common field, defaults to instance index.
Example with explicit device:
ios:
- id: descselector0
type: descselector
dtype: uint32
rw: true
config:
device: 0
External Control
ControlIO: not supported.
TriggerIO: not supported.
Brainstorming & Future Ideas
Add optional access-control policy for slot switching.
Extend telemetry with last-switch reason/error code for diagnostics.