coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
ddp.h File Reference
#include <soc/addressmap.h>
#include <soc/ddp_common.h>
#include <types.h>
Include dependency graph for ddp.h:

Go to the source code of this file.

Data Structures

struct  mmsys_cfg_regs
 
struct  disp_mutex_regs
 
struct  disp_od_regs
 
struct  disp_ufoe_regs
 

Enumerations

enum  {
  CG_CON0_SMI_COMMON = BIT(0) , CG_CON0_SMI_LARB0 = BIT(1) , CG_CON0_CAM_MDP = BIT(2) , CG_CON0_MDP_RDMA0 = BIT(3) ,
  CG_CON0_MDP_RDMA1 = BIT(4) , CG_CON0_MDP_RSZ0 = BIT(5) , CG_CON0_MDP_RSZ1 = BIT(6) , CG_CON0_MDP_RSZ2 = BIT(7) ,
  CG_CON0_MDP_TDSHP0 = BIT(8) , CG_CON0_MDP_TDSHP1 = BIT(9) , CG_CON0_MDP_CROP = BIT(10) , CG_CON0_MDP_WDMA = BIT(11) ,
  CG_CON0_MDP_WROT0 = BIT(12) , CG_CON0_MDP_WROT1 = BIT(13) , CG_CON0_FAKE_ENG = BIT(14) , CG_CON0_MUTEX_32K = BIT(15) ,
  CG_CON0_DISP_OVL0 = BIT(16) , CG_CON0_DISP_OVL1 = BIT(17) , CG_CON0_DISP_RDMA0 = BIT(18) , CG_CON0_DISP_RDMA1 = BIT(19) ,
  CG_CON0_DISP_RDMA2 = BIT(20) , CG_CON0_DISP_WDMA0 = BIT(21) , CG_CON0_DISP_WDMA1 = BIT(22) , CG_CON0_DISP_COLOR0 = BIT(23) ,
  CG_CON0_DISP_COLOR1 = BIT(24) , CG_CON0_DISP_AAL = BIT(25) , CG_CON0_DISP_GAMMA = BIT(26) , CG_CON0_DISP_UFOE = BIT(27) ,
  CG_CON0_DISP_SPLIT0 = BIT(28) , CG_CON0_DISP_SPLIT1 = BIT(29) , CG_CON0_DISP_MERGE = BIT(30) , CG_CON0_DISP_OD = BIT(31) ,
  CG_CON0_ALL = 0xffffffff
}
 
enum  {
  CG_CON1_DISP_PWM0_MM = BIT(0) , CG_CON1_DISP_PWM0_26M = BIT(1) , CG_CON1_DISP_PWM1_MM = BIT(2) , CG_CON1_DISP_PWM1_26M = BIT(3) ,
  CG_CON1_DSI0_ENGINE = BIT(4) , CG_CON1_DSI0_DIGITAL = BIT(5) , CG_CON1_DSI1_ENGINE = BIT(6) , CG_CON1_DSI1_DIGITAL = BIT(7) ,
  CG_CON1_DPI_PIXEL = BIT(8) , CG_CON1_DPI_ENGINE = BIT(9) , CG_CON1_ALL = 0xffffffff
}
 
enum  { OVL0_MOUT_EN_COLOR0 = BIT(0) , OD_MOUT_EN_RDMA0 = BIT(0) , UFOE_MOUT_EN_DSI0 = BIT(0) , UFOE_MOUT_EN_SPLIT1 = BIT(1) }
 
enum  { COLOR0_SEL_IN_OVL0 = 1 , DSI0_SEL_IN_UFOE = 0 , DSI0_SEL_IN_SPLIT1 = 1 , DSI1_SEL_IN_SPLIT1 = 0 }
 
enum  { MMSYS_SW1_RST_DSI0_B = BIT(2) , MMSYS_SW1_RST_DSI1_B = BIT(3) }
 
enum  {
  MUTEX_MOD_DISP_OVL0 = BIT(11) , MUTEX_MOD_DISP_RDMA0 = BIT(13) , MUTEX_MOD_DISP_COLOR0 = BIT(18) , MUTEX_MOD_DISP_AAL = BIT(20) ,
  MUTEX_MOD_DISP_UFOE = BIT(22) , MUTEX_MOD_DISP_OD = BIT(25) , MUTEX_MOD_MAIN_PATH
}
 
enum  { OD_RELAY_MODE = BIT(0) }
 
enum  { UFO_BYPASS = BIT(2) , UFO_LR = BIT(3) | BIT(0) }
 

Functions

 check_member (mmsys_cfg_regs, mmsys_sw1_rst_b, 0x144)
 
 check_member (mmsys_cfg_regs, hdmi_en, 0x904)
 
 check_member (disp_mutex_regs, debug_out_sel, 0x100)
 
 check_member (disp_od_regs, misc, 0x48)
 
 check_member (disp_ufoe_regs, dbg[7], 0x15C)
 
void mtk_ddp_init (void)
 
void mtk_ddp_mode_set (const struct edid *edid)
 

Variables

static struct mmsys_cfg_regs *const mmsys_cfg = (void *)MMSYS_BASE
 
static struct disp_mutex_regs *const disp_mutex = (void *)DISP_MUTEX_BASE
 
static struct disp_od_regs *const disp_od = (void *)DISP_OD_BASE
 
static struct disp_ufoe_regs *const disp_ufoe = (void *)DISP_UFOE_BASE
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
CG_CON0_SMI_COMMON 
CG_CON0_SMI_LARB0 
CG_CON0_CAM_MDP 
CG_CON0_MDP_RDMA0 
CG_CON0_MDP_RDMA1 
CG_CON0_MDP_RSZ0 
CG_CON0_MDP_RSZ1 
CG_CON0_MDP_RSZ2 
CG_CON0_MDP_TDSHP0 
CG_CON0_MDP_TDSHP1 
CG_CON0_MDP_CROP 
CG_CON0_MDP_WDMA 
CG_CON0_MDP_WROT0 
CG_CON0_MDP_WROT1 
CG_CON0_FAKE_ENG 
CG_CON0_MUTEX_32K 
CG_CON0_DISP_OVL0 
CG_CON0_DISP_OVL1 
CG_CON0_DISP_RDMA0 
CG_CON0_DISP_RDMA1 
CG_CON0_DISP_RDMA2 
CG_CON0_DISP_WDMA0 
CG_CON0_DISP_WDMA1 
CG_CON0_DISP_COLOR0 
CG_CON0_DISP_COLOR1 
CG_CON0_DISP_AAL 
CG_CON0_DISP_GAMMA 
CG_CON0_DISP_UFOE 
CG_CON0_DISP_SPLIT0 
CG_CON0_DISP_SPLIT1 
CG_CON0_DISP_MERGE 
CG_CON0_DISP_OD 
CG_CON0_ALL 

Definition at line 139 of file ddp.h.

◆ anonymous enum

anonymous enum
Enumerator
CG_CON1_DISP_PWM0_MM 
CG_CON1_DISP_PWM0_26M 
CG_CON1_DISP_PWM1_MM 
CG_CON1_DISP_PWM1_26M 
CG_CON1_DSI0_ENGINE 
CG_CON1_DSI0_DIGITAL 
CG_CON1_DSI1_ENGINE 
CG_CON1_DSI1_DIGITAL 
CG_CON1_DPI_PIXEL 
CG_CON1_DPI_ENGINE 
CG_CON1_ALL 

Definition at line 179 of file ddp.h.

◆ anonymous enum

anonymous enum
Enumerator
OVL0_MOUT_EN_COLOR0 
OD_MOUT_EN_RDMA0 
UFOE_MOUT_EN_DSI0 
UFOE_MOUT_EN_SPLIT1 

Definition at line 194 of file ddp.h.

◆ anonymous enum

anonymous enum
Enumerator
COLOR0_SEL_IN_OVL0 
DSI0_SEL_IN_UFOE 
DSI0_SEL_IN_SPLIT1 
DSI1_SEL_IN_SPLIT1 

Definition at line 201 of file ddp.h.

◆ anonymous enum

anonymous enum
Enumerator
MMSYS_SW1_RST_DSI0_B 
MMSYS_SW1_RST_DSI1_B 

Definition at line 209 of file ddp.h.

◆ anonymous enum

anonymous enum
Enumerator
MUTEX_MOD_DISP_OVL0 
MUTEX_MOD_DISP_RDMA0 
MUTEX_MOD_DISP_COLOR0 
MUTEX_MOD_DISP_AAL 
MUTEX_MOD_DISP_UFOE 
MUTEX_MOD_DISP_OD 
MUTEX_MOD_MAIN_PATH 

Definition at line 233 of file ddp.h.

◆ anonymous enum

anonymous enum
Enumerator
OD_RELAY_MODE 

Definition at line 266 of file ddp.h.

◆ anonymous enum

anonymous enum
Enumerator
UFO_BYPASS 
UFO_LR 

Definition at line 299 of file ddp.h.

Function Documentation

◆ check_member() [1/5]

check_member ( disp_mutex_regs  ,
debug_out_sel  ,
0x100   
)

◆ check_member() [2/5]

check_member ( disp_od_regs  ,
misc  ,
0x48   
)

◆ check_member() [3/5]

check_member ( disp_ufoe_regs  ,
dbg  [7],
0x15C   
)

◆ check_member() [4/5]

check_member ( mmsys_cfg_regs  ,
hdmi_en  ,
0x904   
)

◆ check_member() [5/5]

check_member ( mmsys_cfg_regs  ,
mmsys_sw1_rst_b  ,
0x144   
)

◆ mtk_ddp_init()

void mtk_ddp_init ( void  )

Definition at line 61 of file ddp.c.

◆ mtk_ddp_mode_set()

void mtk_ddp_mode_set ( const struct edid edid)

Definition at line 66 of file ddp.c.

Variable Documentation

◆ disp_mutex

struct disp_mutex_regs* const disp_mutex = (void *)DISP_MUTEX_BASE
static

Definition at line 231 of file ddp.h.

Referenced by disp_config_main_path_mutex().

◆ disp_od

struct disp_od_regs* const disp_od = (void *)DISP_OD_BASE
static

Definition at line 264 of file ddp.h.

Referenced by od_start().

◆ disp_ufoe

struct disp_ufoe_regs* const disp_ufoe = (void *)DISP_UFOE_BASE
static

Definition at line 297 of file ddp.h.

Referenced by main_disp_path_setup().

◆ mmsys_cfg

struct mmsys_cfg_regs* const mmsys_cfg = (void *)MMSYS_BASE
static

Definition at line 133 of file ddp.h.

Referenced by disp_clock_on(), and disp_config_main_path_connection().