Uart — Requirements
Normative
Defines what a conformant UART driver MUST do. Keywords per Requirement Keywords; conformance per Conformance. Requirements do not carry individual status — the set-level status applies to all of them. Signatures, error codes, and configuration properties are in the API Reference, Errors, and Configuration Reference pages. Cross-module rules (types, error model, naming, memory mapping) are in General.
Mandatory (MUST) - 23 Requirements
The conformance contract — an implementation MUST satisfy every requirement here.
CHI-UART-MUST-01 — Basic UART protocol
|
The driver MUST support the basic UART protocol (asynchronous byte framing). LIN, multi-processor, and sub-modes such as Smart Card / IrDA are out of scope. |
CHI-UART-MUST-02 — Event handling mode
|
For each channel, event handling MUST be statically configurable as interrupt or polling.
In interrupt mode |
CHI-UART-MUST-03 — Driver state machine
|
After reset the driver MUST be in |
CHI-UART-MUST-04 — TX channel state machine
|
Each channel’s TX state MUST follow the TX state machine in Concepts:
|
CHI-UART-MUST-05 — RX channel state machine
|
Each channel’s RX state MUST follow the RX state machine: |
CHI-UART-MUST-06 — Initialization
|
|
CHI-UART-MUST-07 — De-initialization
|
|
CHI-UART-MUST-08 — Start a transmission
|
|
CHI-UART-MUST-09 — Transmit data transfer
|
While TX data remains, |
CHI-UART-MUST-10 — Transmission completion notification
|
For an HW-completion channel, when the whole buffer has been sent on the bus (FIFO and
shift register empty) the driver MUST move the channel to |
CHI-UART-MUST-11 — Streaming data request notification
|
For a streaming channel, when the software TX buffer empties the driver MUST move the
channel to |
CHI-UART-MUST-12 — Start a reception
|
|
CHI-UART-MUST-13 — Reception data transfer and notification
|
On RX events the driver MUST store received data into the buffer and call
|
CHI-UART-MUST-14 — Streaming reception continuation
|
The driver MUST NOT stop hardware reception merely because the buffer filled: it MUST allow
|
CHI-UART-MUST-15 — Additional RX length trigger
|
|
CHI-UART-MUST-16 — Cancel a reception
|
|
CHI-UART-MUST-17 — RX error handling
|
On an RX error the driver MUST stop reception, return the channel to |
CHI-UART-MUST-18 — Poll function
|
|
CHI-UART-MUST-19 — Channel state query
|
|
CHI-UART-MUST-20 — Development error detection
|
When development error reporting is enabled, each API MUST detect the conditions listed in
Errors and report them via |
CHI-UART-MUST-21 — Callout notifications
|
The driver MUST call |
CHI-UART-MUST-22 — Public types and error identifiers
|
The driver MUST provide |
CHI-UART-MUST-23 — Configuration model
|
The driver MUST support the configuration model in Configuration Reference — a
|
Recommended (SHOULD) - 2 Requirements
CHI-UART-SHOULD-01 — Hardware flow control
|
Where the hardware supports hardware flow control, the driver SHOULD support it
(configurable per channel via |
CHI-UART-SHOULD-02 — TX error handling
|
Where the hardware detects and reports a TX error, the driver SHOULD stop the current
transmission before notifying and report it via |