microfmt
Zero-allocation C++ formatting for constrained environments
Loading...
Searching...
No Matches
Public Member Functions | List of all members
microfmt::pl011_sink Class Reference

Zero-allocation controller targeting the ARM PrimeCell PL011 UART. More...

#include <pl011_sink.hpp>

Public Member Functions

constexpr pl011_sink (uintptr_t base_addr, bool translate_crlf=true) noexcept
 Constructs a PL011 UART controller.
 
void enable () const noexcept
 Optional hardware initialization helper.
 
constexpr sink as_sink () const noexcept
 Returns a type-erased microfmt::sink view over this controller instance.
 

Detailed Description

Zero-allocation controller targeting the ARM PrimeCell PL011 UART.

Commonly mapped at 0x09000000 on QEMU virt and standard ARM development boards. Use .as_sink() to obtain a type-erased microfmt::sink for formatting pipelines.

Constructor & Destructor Documentation

◆ pl011_sink()

constexpr microfmt::pl011_sink::pl011_sink ( uintptr_t  base_addr,
bool  translate_crlf = true 
)
inlineexplicitconstexprnoexcept

Constructs a PL011 UART controller.

Parameters
base_addrMemory-mapped base address of the PL011 controller
translate_crlfWhether to automatically expand \n to \r\n for terminal compatibility.

Member Function Documentation

◆ as_sink()

constexpr sink microfmt::pl011_sink::as_sink ( ) const
inlineconstexprnoexcept

Returns a type-erased microfmt::sink view over this controller instance.

◆ enable()

void microfmt::pl011_sink::enable ( ) const
inlinenoexcept

Optional hardware initialization helper.


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