Software APIs
dt_rv_plic.h File Reference

Device Tables (DT) for IP rv_plic and top englishbreakfast. More...

#include "dt_api.h"
#include <stdint.h>

Go to the source code of this file.

Macros

#define OPENTITAN_RV_PLIC_HAS_PRIORITY   1
 List of supported hardware features.
 
#define OPENTITAN_RV_PLIC_HAS_ENABLE   1
 

Typedefs

typedef enum dt_rv_plic dt_rv_plic_t
 List of instances.
 
typedef enum dt_rv_plic_reg_block dt_rv_plic_reg_block_t
 List of register blocks.
 
typedef enum dt_rv_plic_clock dt_rv_plic_clock_t
 List of clock ports.
 
typedef enum dt_rv_plic_reset dt_rv_plic_reset_t
 List of reset ports.
 

Enumerations

enum  dt_rv_plic {
  kDtRvPlic = 0 ,
  kDtRvPlicFirst = 0 ,
  kDtRvPlicCount = 1
}
 List of instances. More...
 
enum  dt_rv_plic_reg_block {
  kDtRvPlicRegBlockCore = 0 ,
  kDtRvPlicRegBlockCount = 1
}
 List of register blocks. More...
 
enum  dt_rv_plic_clock {
  kDtRvPlicClockClk = 0 ,
  kDtRvPlicClockCount = 1
}
 List of clock ports. More...
 
enum  dt_rv_plic_reset {
  kDtRvPlicResetRst = 0 ,
  kDtRvPlicResetCount = 1
}
 List of reset ports. More...
 

Functions

dt_rv_plic_t dt_rv_plic_from_instance_id (dt_instance_id_t inst_id)
 Get the rv_plic instance from an instance ID.
 
dt_instance_id_t dt_rv_plic_instance_id (dt_rv_plic_t dt)
 Get the instance ID of an instance.
 
uint32_t dt_rv_plic_reg_block (dt_rv_plic_t dt, dt_rv_plic_reg_block_t reg_block)
 Get the register base address of an instance.
 
dt_clock_t dt_rv_plic_clock (dt_rv_plic_t dt, dt_rv_plic_clock_t clk)
 Get the clock signal connected to a clock port of an instance.
 
dt_reset_t dt_rv_plic_reset (dt_rv_plic_t dt, dt_rv_plic_reset_t rst)
 Get the reset signal connected to a reset port of an instance.
 

Detailed Description

Device Tables (DT) for IP rv_plic and top englishbreakfast.

This file contains the type definitions and global functions of the rv_plic.

Definition in file dt_rv_plic.h.

Macro Definition Documentation

◆ OPENTITAN_RV_PLIC_HAS_ENABLE

#define OPENTITAN_RV_PLIC_HAS_ENABLE   1

Definition at line 66 of file dt_rv_plic.h.

◆ OPENTITAN_RV_PLIC_HAS_PRIORITY

#define OPENTITAN_RV_PLIC_HAS_PRIORITY   1

List of supported hardware features.

Definition at line 65 of file dt_rv_plic.h.

Typedef Documentation

◆ dt_rv_plic_clock_t

List of clock ports.

Clock ports are guaranteed to be numbered consecutively from 0.

◆ dt_rv_plic_reg_block_t

List of register blocks.

Register blocks are guaranteed to start at 0 and to be consecutively numbered.

◆ dt_rv_plic_reset_t

List of reset ports.

Reset ports are guaranteed to be numbered consecutively from 0.

Enumeration Type Documentation

◆ dt_rv_plic

enum dt_rv_plic

List of instances.

Enumerator
kDtRvPlic 

rv_plic

Definition at line 23 of file dt_rv_plic.h.

◆ dt_rv_plic_clock

List of clock ports.

Clock ports are guaranteed to be numbered consecutively from 0.

Enumerator
kDtRvPlicClockClk 

Clock port clk_i.

Definition at line 47 of file dt_rv_plic.h.

◆ dt_rv_plic_reg_block

List of register blocks.

Register blocks are guaranteed to start at 0 and to be consecutively numbered.

Definition at line 34 of file dt_rv_plic.h.

◆ dt_rv_plic_reset

List of reset ports.

Reset ports are guaranteed to be numbered consecutively from 0.

Enumerator
kDtRvPlicResetRst 

Reset port rst_ni.

Definition at line 57 of file dt_rv_plic.h.

Function Documentation

◆ dt_rv_plic_clock()

Get the clock signal connected to a clock port of an instance.

Parameters
dtInstance of rv_plic.
clkClock port.
Returns
Clock signal.

Definition at line 96 of file dt_rv_plic.c.

◆ dt_rv_plic_from_instance_id()

dt_rv_plic_t dt_rv_plic_from_instance_id ( dt_instance_id_t inst_id)

Get the rv_plic instance from an instance ID.

For example, dt_uart_from_instance_id(kDtInstanceIdUart3) == kDtUart3.

Parameters
inst_idInstance ID.
Returns
A rv_plic instance.

Note: This function only makes sense if the instance ID has device type rv_plic, otherwise the returned value is unspecified.

Definition at line 58 of file dt_rv_plic.c.

◆ dt_rv_plic_instance_id()

dt_instance_id_t dt_rv_plic_instance_id ( dt_rv_plic_t dt)

Get the instance ID of an instance.

Parameters
dtInstance of rv_plic.
Returns
The instance ID of that instance.

Definition at line 65 of file dt_rv_plic.c.

◆ dt_rv_plic_reg_block()

Get the register base address of an instance.

Parameters
dtInstance of rv_plic.
reg_blockThe register block requested.
Returns
The register base address of the requested block.

Definition at line 70 of file dt_rv_plic.c.

◆ dt_rv_plic_reset()

Get the reset signal connected to a reset port of an instance.

Parameters
dtInstance of rv_plic.
rstReset port.
Returns
Reset signal.

Definition at line 103 of file dt_rv_plic.c.