PDK API Guide for J721E
dss_soc.h File Reference

Introduction

DSS Driver J7 SOC specific file.

Go to the source code of this file.

Data Structures

struct  Dss_IrqParams
 Structure containing DSS interrupt information. Events should be enabled only for available Video Ports and Video Pipes. More...
 
struct  Dss_RmInfo
 Structure containing resources manager information. This enables display sharing between two different softwares. More...
 
struct  Dss_DpInitParams
 Structure containing Display Port init parameters. More...
 
struct  Dss_DsiInitParams
 Structure containing DSI init parameters. More...
 
struct  Dss_SocParams
 DSS SOC parameters. More...
 
struct  Dss_DctrlDpHpdCbParams
 DSS DP HPD Callback parameters. More...
 

Macros

#define DSS_DCTRL_MAX_NODES   (23U)
 Defines maximum number of nodes for allocation including invalid node. More...
 
#define DSS_DCTRL_MAX_EDGES   (37U)
 Defines maximum number of edges for allocation. This is derived by looking at all possible DSS connections in the SoC. More...
 
#define DSS_FUNC_IRQ_DEFAULT_NUM   (52U)
 DSS Safety Interrupt Number for R5. More...
 
#define DSS_SAFE_IRQ_DEFAULT_NUM   (54U)
 DSS Functional Interrupt Number for R5. More...
 
#define DSS_SECURE_IRQ_DEFAULT_NUM   (56U)
 
#define DSS_M2M_WB_PIPELINE_ID_0   (CSL_DSS_WB_PIPE_ID_1)
 DSS M2M/WB pipe-line number available in the SoC. More...
 
#define DSS_M2M_WB_PIPELINE_ID_MAX   (CSL_DSS_WB_PIPE_ID_MAX)
 
#define DSSM2M_NUM_WB_PIPELINE   (CSL_DSS_WB_PIPE_ID_MAX)
 
#define DSSM2M_NUM_PIPELINE_TO_USE_IN_M2M_MODE   (1U)
 DSS pipe-lines number available in the SoC for blending in M2M mode. More...
 
#define DSSM2M_NUM_VIRTUAL_CONTEXT   (8U)
 DSS M2M DRV Virtual Context: Number of virtual contexts per DSS M2M pipeline. More...
 
#define IOCTL_DSS_DCTRL_PROCESS_DP_HPD   (DSS_DCTRL_SOC_IOCTL_BASE + 0x01U)
 IOCTL to process Display port HPD. More...
 
#define IOCTL_DSS_DCTRL_REGISTER_DP_HPD_CB   (DSS_DCTRL_SOC_IOCTL_BASE + 0x02U)
 IOCTL to register Display port HPD callback. More...
 
DSS DCTRL Instance IDs
#define DSS_DCTRL_INST_0   (0U)
 Display controller instance 0. More...
 
#define DSS_DCTRL_INST_MAX   (1U)
 Maximum number of display driver instances. More...
 
DSS Display Instance IDs
#define DSS_DISP_INST_VID1   (CSL_DSS_VID_PIPE_ID_VID1)
 Video 1 Pipeline display driver instance number. More...
 
#define DSS_DISP_INST_VIDL1   (CSL_DSS_VID_PIPE_ID_VIDL1)
 Video Lite 1 Pipeline display driver instance number. More...
 
#define DSS_DISP_INST_VID2   (CSL_DSS_VID_PIPE_ID_VID2)
 Video 2 Pipeline display driver instance number. More...
 
#define DSS_DISP_INST_VIDL2   (CSL_DSS_VID_PIPE_ID_VIDL2)
 Video Lite 2 Pipeline display driver instance number. More...
 
#define DSS_DISP_INST_MAX   (CSL_DSS_VID_PIPE_ID_MAX)
 Maximum number of display driver instances. More...
 
DSS DCTRL Node type

Node types that are used by the set path to connect different modules and create a graph

#define DSS_DCTRL_NODE_TYPE_INVALID   ((uint32_t) 0x0U)
 
#define DSS_DCTRL_NODE_TYPE_PIPE   ((uint32_t) 0x1U)
 
#define DSS_DCTRL_NODE_TYPE_OVERLAY   ((uint32_t) 0x2U)
 
#define DSS_DCTRL_NODE_TYPE_VP   ((uint32_t) 0x3U)
 
#define DSS_DCTRL_NODE_TYPE_OUTPUT   ((uint32_t) 0x4U)
 
DSS DCTRL Node Id

Node ids that are used by the set path to connect different modules and create a graph

#define DSS_DCTRL_NODE_INVALID   (0x0U)
 
#define DSS_DCTRL_NODE_VID1   (0x1U)
 
#define DSS_DCTRL_NODE_VIDL1   (0x2U)
 
#define DSS_DCTRL_NODE_VID2   (0x3U)
 
#define DSS_DCTRL_NODE_VIDL2   (0x4U)
 
#define DSS_DCTRL_NODE_OVERLAY1   (0x5U)
 
#define DSS_DCTRL_NODE_OVERLAY2   (0x6U)
 
#define DSS_DCTRL_NODE_OVERLAY3   (0x7U)
 
#define DSS_DCTRL_NODE_OVERLAY4   (0x8U)
 
#define DSS_DCTRL_NODE_VP1   (0x9U)
 
#define DSS_DCTRL_NODE_VP2   (0xAU)
 
#define DSS_DCTRL_NODE_VP3   (0xBU)
 
#define DSS_DCTRL_NODE_VP4   (0xCU)
 
#define DSS_DCTRL_NODE_DPI_DPI0   (0xDU)
 
#define DSS_DCTRL_NODE_DPI_DPI1   (0xEU)
 
#define DSS_DCTRL_NODE_EDP_DPI0   (0xFU)
 
#define DSS_DCTRL_NODE_EDP_DPI1   (0x10U)
 
#define DSS_DCTRL_NODE_EDP_DPI2   (0x11U)
 
#define DSS_DCTRL_NODE_EDP_DPI3   (0x12U)
 
#define DSS_DCTRL_NODE_DSI_DPI2   (0x13U)
 
#define DSS_DCTRL_NODE_DISCSYNC0   (0x14U)
 
#define DSS_DCTRL_NODE_DISCSYNC1   (0x15U)
 
#define DSS_DCTRL_NODE_WB   (0x16U)
 
Instance Ids for DSS Event Manager.

#define DSS_EVT_MGR_INST_ID_FUNC   ((uint32_t) 0x00U)
 Instance Id for functional interrupts. More...
 
#define DSS_EVT_MGR_INST_ID_SAFETY   ((uint32_t) 0x01U)
 Instance Id for security interrupts. More...
 
#define DSS_EVT_MGR_INST_ID_SECURITY   ((uint32_t) 0x02U)
 Max Instance Id. More...
 
#define DSS_EVT_MGR_INST_ID_MAX   ((uint32_t) 0x03U)
 Invalid Instance Id. More...
 
#define DSS_EVT_MGR_INST_ID_INVALID   ((uint32_t) 0xFFU)
 

Typedefs

typedef void(* Dss_DctrlDpHpdCbFxn) (uint32_t hpdState, void *appData)
 DP HPD callback function prototype. More...
 

Functions

static uint32_t Dss_dispIsVidInst (uint32_t instId)
 Check if the display driver instance is of type Video pipeline. More...
 
static uint32_t Dss_dispIsVidLInst (uint32_t instId)
 Check if the display driver instance is of type Video lite pipeline. More...
 
static void Dss_irqParamsInit (Dss_IrqParams *irqParams)
 Dss_IrqParams structure init function. More...
 
static void Dss_rmInfoInit (Dss_RmInfo *rmInfo)
 Dss_RmInfo structure init function. More...
 
static void Dss_dpInitParamsInit (Dss_DpInitParams *dpInitParams)
 Dss_DpInitParams structure init function. More...
 
static void Dss_socParamsInit (Dss_SocParams *socParams)
 Dss_SocParams structure init function. More...
 
static void Dss_dctrlDpHpdCbParamsInit (Dss_DctrlDpHpdCbParams *cbParams)
 Dss_DctrlDpHpdCbParams structure init function. More...
 
static void Dss_dsiInitParamsInit (Dss_DsiInitParams *dsiInitParams)