Software APIs
Data Structures
Here are the data structures with brief descriptions:
[detail level 1234]
 CSpiFlashOptsSPI flash configuration options
 CGlobalMockMixin for global mocks
 CMaskRomTestTest fixture for mask ROM tests
 CUnorderedMixin for unordered calls
 CLittleEndianBytesImplicit conversion guard around char *
 CBitFieldRepresents a single bit field in an integer, useable with EXPECT_* macros defined in this file
 CMaskedBitFieldRepresents a single bit field in an integer, similar to BitField
 CMmioTestConveninence fixture for creating device tests
 CMockDeviceA MockDevice represents a mock implementation of an MMIO device
 CFrameImplements the bootstrap SPI frame message
 CFrame.hdrFrame header definition
 CFtdiSpiInterfaceImplements SPI interface for an OpenTitan design connected via FTDI
 COptionsFTDI SPI configuration options
 CMpsseHandleWrapper struct used to hide mpsse_context since incomplete C struct declarations don't play in forward declarations
 CSpiInterfaceThis class defines the SPI interface used to communicate with an OpenTitan device
 CUpdaterImplements SPI flash update protocol
 COptionsUpdater configuration settings
 CVerilatorSpiInterfaceImplements SPI interface for an OpenTitan instance running on Verilator
 Caes_cfgAES unit configuration options
 Cbitfield_field32A field of a 32-bit bitfield
 Cbuffer_sinkA buffer_sink_t represents a place to write bytes to, implemented as a C-style "closure"
 Cdif_alert_handlerA handle to alert handler
 Cdif_alert_handler_class_configRuntime configuration for a particular alert class
 Cdif_alert_handler_class_phase_durationRuntime configuration for the duration of an escalation phase
 Cdif_alert_handler_class_phase_signalRuntime configuration for responding to a given escalation phase
 Cdif_alert_handler_configRuntime configuration for alert handler
 Cdif_alert_handler_paramsHardware instantiation parameters for the alert handler
 Cdif_gpioA handle to GPIO
 Cdif_gpio_paramsHardware instantiation parameters for GPIO
 Cdif_hmacState for a particular HMAC device
 Cdif_hmac_configConfiguration for initializing the HMAC device
 Cdif_hmac_digestA typed representation of the HMAC digest
 Cdif_i2cA handle to I2C
 Cdif_i2c_configRuntime configuration for I2C
 Cdif_i2c_fmt_flagsFlags for a formatted I2C byte, used by the dif_i2c_write_byte_raw() function
 Cdif_i2c_paramsHardware instantiation parameters for I2C
 Cdif_i2c_timing_configTiming configuration parameters for I2C
 Cdif_otbnInternal state of a OTBN device
 Cdif_otbn_configConfiguration for initializing an OTBN device
 Cdif_otp_ctrlA handle to OTP
 Cdif_otp_ctrl_configRuntime configuration for OTP
 Cdif_otp_ctrl_paramsHardware instantiation parameters for OTP
 Cdif_otp_ctrl_statusThe overall status of the OTP controller
 Cdif_plicA handle to PLIC
 Cdif_plic_paramsHardware instantiation parameters for PLIC
 Cdif_pwrmgrA handle to power manager
 Cdif_pwrmgr_paramsHardware instantiation parameters for power manager
 Cdif_pwrmgr_wakeup_reasonWakeup types and requests from sources since the last time recording started
 Cdif_rstmgrA handle to rstmgr
 Cdif_rstmgr_paramsHardware instantiation parameters for Reset Manager
 Cdif_rv_timerState for a RISC-V timer, associated with a particular hardware thread
 Cdif_rv_timer_configConfiguration for initializing the RISC-V timer device
 Cdif_rv_timer_tick_paramsRepresents timekeeping parameters for a particular timer
 Cdif_spi_deviceA handle to a SPI device
 Cdif_spi_device_configRuntime configuration for SPI
 Cdif_spi_device_paramsHardware instantiation parameters for SPI
 Cdif_uartA handle to UART
 Cdif_uart_configRuntime configuration for UART
 Cdif_uart_paramsHardware instantiation parameters for UART
 Cdif_usbdevInternal state of a USB device
 Cdif_usbdev_bufferA USB device buffer
 Cdif_usbdev_buffer_poolFree buffer pool
 Cdif_usbdev_configConfiguration for initializing a USB device
 Cdif_usbdev_rx_packet_infoInformation about a received packet
 Cendpoint_hw_infoHardware information for endpoints
 Cfifo_ptrAn exploded FIFO pointer value, consisting of a uint11_t offset part (an offset into a FIFO), and a uint1_t phase (which indicates whether this pointer has wrapped around or not)
 Cfifo_ptr_paramsParameters for compressing and decompressing a FIFO pointer register
 Cfifo_ptrsA decompressed FIFO pointer register, consisting of a read offset and a write offset within the FIFO region
 Cformat_specifierRepresents a parsed format specifier
 Chmac_cfgHMAC Configuration options
 Clog_fieldsRepresents log metadata used to format a log line
 Cmmio_regionAn mmio_region_t is an opaque handle to an MMIO region; it should only be modified using the functions provided in this header
 Cmp_regionMemory protection configuration options
 Cplic_reg_infoPLIC register info
 Cplic_target_reg_offsetPLIC target specific register offsets
 Cpmp_region_configPMP region configuration information
 Crequest_reg_infoRegister information for a request type
 Crom_ext_extensionROM Extension image extension
 Crom_ext_lockdown_infoROM Extension lockdown information
 Crom_ext_manifestROM Extension parameters required for the manifest parsing
 Crom_ext_public_keyROM Extension public key
 Crom_ext_signatureROM Extension image signature
 Cspiflash_frameA spiflash frame, as it would arrive on the wire
 Cspiflash_frame_headerA spiflash frame header
 Ctest_configConfiguration variables for an on-device test