Software APIs
dif_lc_ctrl_autogen.h File Reference

LC_CTRL Device Interface Functions More...

#include <stdbool.h>
#include <stdint.h>
#include "sw/device/lib/base/macros.h"
#include "sw/device/lib/base/mmio.h"
#include "sw/device/lib/dif/dif_base.h"
#include "hw/top/dt/lc_ctrl.h"

Go to the source code of this file.

Data Structures

struct  dif_lc_ctrl
 A handle to lc_ctrl. More...
 

Typedefs

typedef struct dif_lc_ctrl dif_lc_ctrl_t
 A handle to lc_ctrl.
 
typedef enum dif_lc_ctrl_alert dif_lc_ctrl_alert_t
 A lc_ctrl alert type.
 

Enumerations

enum  dif_lc_ctrl_alert {
  kDifLcCtrlAlertFatalProgError = 0 ,
  kDifLcCtrlAlertFatalStateError = 1 ,
  kDifLcCtrlAlertFatalBusIntegError = 2
}
 A lc_ctrl alert type. More...
 

Functions

OT_WARN_UNUSED_RESULT dif_result_t dif_lc_ctrl_init (mmio_region_t base_addr, dif_lc_ctrl_t *lc_ctrl)
 Creates a new handle for a(n) lc_ctrl peripheral.
 
OT_WARN_UNUSED_RESULT dif_result_t dif_lc_ctrl_init_from_dt (dt_lc_ctrl_t dt, dif_lc_ctrl_t *lc_ctrl)
 Creates a new handle for a(n) lc_ctrl peripheral.
 
OT_WARN_UNUSED_RESULT dif_result_t dif_lc_ctrl_get_dt (const dif_lc_ctrl_t *lc_ctrl, dt_lc_ctrl_t *dt)
 Get the DT handle from this DIF.
 
OT_WARN_UNUSED_RESULT dif_result_t dif_lc_ctrl_alert_force (const dif_lc_ctrl_t *lc_ctrl, dif_lc_ctrl_alert_t alert)
 Forces a particular alert, causing it to be escalated as if the hardware had raised it.
 

Detailed Description

LC_CTRL Device Interface Functions

Definition in file dif_lc_ctrl_autogen.h.


Data Structure Documentation

◆ dif_lc_ctrl

struct dif_lc_ctrl

A handle to lc_ctrl.

This type should be treated as opaque by users.

Definition at line 37 of file dif_lc_ctrl_autogen.h.

Data Fields
mmio_region_t base_addr The base address for the lc_ctrl hardware registers.
dt_lc_ctrl_t dt The instance, set to kDtLcCtrlCount if not initialized through dif_lc_ctrl_init_from_dt.

Typedef Documentation

◆ dif_lc_ctrl_t

typedef struct dif_lc_ctrl dif_lc_ctrl_t

A handle to lc_ctrl.

This type should be treated as opaque by users.

Enumeration Type Documentation

◆ dif_lc_ctrl_alert

A lc_ctrl alert type.

Enumerator
kDifLcCtrlAlertFatalProgError 

This alert triggers if an error occurred during an OTP programming operation.

kDifLcCtrlAlertFatalStateError 

This alert triggers if an error in the life cycle state or life cycle controller FSM is detected.

kDifLcCtrlAlertFatalBusIntegError 

This fatal alert is triggered when a fatal TL-UL bus integrity fault is detected.

Definition at line 98 of file dif_lc_ctrl_autogen.h.

Function Documentation

◆ dif_lc_ctrl_alert_force()

OT_WARN_UNUSED_RESULT dif_result_t dif_lc_ctrl_alert_force ( const dif_lc_ctrl_t * lc_ctrl,
dif_lc_ctrl_alert_t alert )

Forces a particular alert, causing it to be escalated as if the hardware had raised it.

Parameters
lc_ctrlA lc_ctrl handle.
alertThe alert to force.
Returns
The result of the operation.

Definition at line 62 of file dif_lc_ctrl_autogen.c.

◆ dif_lc_ctrl_get_dt()

OT_WARN_UNUSED_RESULT dif_result_t dif_lc_ctrl_get_dt ( const dif_lc_ctrl_t * lc_ctrl,
dt_lc_ctrl_t * dt )

Get the DT handle from this DIF.

If this DIF was initialized by dif_lc_ctrl_init_from_dt(dt, ..) then this function will return dt. Otherwise it will return an error.

Parameters
lc_ctrlA lc_ctrl handle.
[out]dtDT handle.
Returns
kDifBadArg if the DIF has no DT information, kDifOk otherwise.

Definition at line 52 of file dif_lc_ctrl_autogen.c.

◆ dif_lc_ctrl_init()

OT_WARN_UNUSED_RESULT dif_result_t dif_lc_ctrl_init ( mmio_region_t base_addr,
dif_lc_ctrl_t * lc_ctrl )

Creates a new handle for a(n) lc_ctrl peripheral.

This function does not actuate the hardware.

Parameters
base_addrThe MMIO base address of the lc_ctrl peripheral.
[out]lc_ctrlOut param for the initialized handle.
Returns
The result of the operation.

DEPRECATED This function exists solely for the transition to dt-based DIFs and will be removed in the future.

Definition at line 25 of file dif_lc_ctrl_autogen.c.

◆ dif_lc_ctrl_init_from_dt()

OT_WARN_UNUSED_RESULT dif_result_t dif_lc_ctrl_init_from_dt ( dt_lc_ctrl_t dt,
dif_lc_ctrl_t * lc_ctrl )

Creates a new handle for a(n) lc_ctrl peripheral.

This function does not actuate the hardware.

Parameters
dtThe devicetable description of the device.
[out]lc_ctrlOut param for the initialized handle.
Returns
The result of the operation.

Definition at line 39 of file dif_lc_ctrl_autogen.c.