Skip to main content

Crate culvert

Crate culvert 

Source
Expand description

Typed access to the HDMI 2.1 SCDC (Status and Control Data Channel) register map.

Culvert sits on top of hdmi_hal::scdc::ScdcTransport and provides named structs, bitfield types, and typed operations for scrambling control, FRL training primitives, and CED (Character Error Detection) reporting.

The central type is Scdc, a thin stateless client that wraps a transport and exposes one typed method per register group. Sequencing of register operations — rate selection, timeout handling, retry logic — belongs in the link training crate above.

Structs§

CedCount
A 15-bit character error count decoded from an ERR_DET register pair.
CedCounters
Per-lane character error counts decoded from ERR_DET registers (0x50–0x57).
FrlConfig
Configuration written to Config_0 (0x30).
Scdc
Typed client for the HDMI 2.1 SCDC (Status and Control Data Channel) register map.
ScramblerStatus
Decoded content of Scrambler_Status (0x21).
StatusFlags
Decoded content of Status_Flags_0 (0x40) and Status_Flags_1 (0x41).
TmdsConfig
Configuration written to TMDS_Config (0x20).
UpdateFlags
Decoded content of Update_0 (0x10) and Update_1 (0x11).

Enums§

FfeLevels
FFE (Feed-Forward Equalization) level count written into Config_0 bits[5:3].
FrlRate
Maximum Fixed Rate Link (FRL) bandwidth supported by a HDMI 2.1 sink.
LtpReq
Link Training Pattern requested by the sink via Status_Flags_1 bits[7:4].
ProtocolError
Protocol-level violations detected while decoding SCDC register content.
ScdcError
Errors returned by Scdc register operations.