CHERIoT RTOS
A compartmentalised RTOS for CHERIoT hardware
Loading...
Searching...
No Matches
SonataPinmux::Sink< SinkEnum > Struct Template Reference

A handle to a sink configuration register. More...

#include <platform-pinmux.hh>

Collaboration diagram for SonataPinmux::Sink< SinkEnum >:

Public Member Functions

bool select (uint8_t source)
 Select a source to connect to the sink.
void disable ()
 Disconnect the sink from all available sources.
void default_selection ()
 Reset the sink to it's default source.

Public Attributes

CHERI::Capability< volatile uint8_t > reg
const SinkEnum SinkId

Detailed Description

template<typename SinkEnum>
struct SonataPinmux::Sink< SinkEnum >

A handle to a sink configuration register.

This can be used to select the source of the handle's associated sink.

Definition at line 318 of file platform-pinmux.hh.

Member Function Documentation

◆ default_selection()

template<typename SinkEnum>
void SonataPinmux::Sink< SinkEnum >::default_selection ( )
inline

Reset the sink to it's default source.

Definition at line 355 of file platform-pinmux.hh.

References SonataPinmux::SourceDefault.

◆ disable()

template<typename SinkEnum>
void SonataPinmux::Sink< SinkEnum >::disable ( )
inline

Disconnect the sink from all available sources.

Definition at line 349 of file platform-pinmux.hh.

References SonataPinmux::SourceDisabled.

◆ select()

template<typename SinkEnum>
bool SonataPinmux::Sink< SinkEnum >::select ( uint8_t source)
inline

Select a source to connect to the sink.

To see the sources available for a given sink see the Sonata system documentation: https://lowrisc.github.io/sonata-system/doc/ip/pinmux/

Note, source 0 disconnects the sink from any source disabling it, and source 1 is the default source for any given sink.

Definition at line 333 of file platform-pinmux.hh.

References SonataPinmux::sources_number().

Member Data Documentation

◆ reg

template<typename SinkEnum>
CHERI::Capability<volatile uint8_t> SonataPinmux::Sink< SinkEnum >::reg

Definition at line 320 of file platform-pinmux.hh.

◆ SinkId

template<typename SinkEnum>
const SinkEnum SonataPinmux::Sink< SinkEnum >::SinkId

Definition at line 321 of file platform-pinmux.hh.


The documentation for this struct was generated from the following file: