coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
dp-core.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  video_info
 
struct  link_train
 
struct  s5p_dp_device
 

Macros

#define STREAM_ON_TIMEOUT   100
 
#define PLL_LOCK_TIMEOUT   10
 
#define DP_INIT_TRIES   10
 
#define MAX_CR_LOOP   5
 
#define MAX_EQ_LOOP   4
 

Enumerations

enum  link_rate { LINK_RATE_1_62GBPS = 0x06 , LINK_RATE_2_70GBPS = 0x0a }
 
enum  link_lane_count { LANE_COUNT1 = 1 , LANE_COUNT2 = 2 , LANE_COUNT4 = 4 }
 
enum  pre_emphasis_level {
  PRE_EMPHASIS_LEVEL_0 , PRE_EMPHASIS_LEVEL_1 , PRE_EMPHASIS_LEVEL_2 , PRE_EMPHASIS_LEVEL_3 ,
  PRE_EMPHASIS_LEVEL_0 , PRE_EMPHASIS_LEVEL_1 , PRE_EMPHASIS_LEVEL_2 , PRE_EMPHASIS_LEVEL_3
}
 
enum  color_space {
  CS_RGB , CS_YCBCR422 , CS_YCBCR444 , COLOR_RGB ,
  COLOR_YCBCR422 , COLOR_YCBCR444
}
 
enum  color_depth {
  COLOR_6 , COLOR_8 , COLOR_10 , COLOR_12 ,
  COLOR_6 , COLOR_8 , COLOR_10 , COLOR_12
}
 
enum  color_coefficient { COLOR_YCBCR601 , COLOR_YCBCR709 , COLOR_YCBCR601 , COLOR_YCBCR709 }
 
enum  dynamic_range { VESA , CEA , VESA , CEA }
 
enum  pll_status {
  DP_PLL_UNLOCKED , DP_PLL_LOCKED , PLL_UNLOCKED , PLL_LOCKED ,
  PLL_UNLOCKED = 0 , PLL_LOCKED
}
 
enum  clock_recovery_m_value_type { CALCULATED_M , REGISTER_M , CALCULATED_M , REGISTER_M }
 

Functions

void s5p_dp_reset (struct s5p_dp_device *dp)
 
void s5p_dp_init_video (struct s5p_dp_device *dp)
 
unsigned int s5p_dp_get_pll_lock_status (struct s5p_dp_device *dp)
 
int s5p_dp_init_analog_func (struct s5p_dp_device *dp)
 
void s5p_dp_init_aux (struct s5p_dp_device *dp)
 
int s5p_dp_start_aux_transaction (struct s5p_dp_device *dp)
 
int s5p_dp_write_byte_to_dpcd (struct s5p_dp_device *dp, unsigned int reg_addr, unsigned char data)
 
int s5p_dp_read_byte_from_dpcd (struct s5p_dp_device *dp, unsigned int reg_addr, unsigned char *data)
 
void s5p_dp_set_video_color_format (struct s5p_dp_device *dp, unsigned int color_depth, unsigned int color_space, unsigned int dynamic_range, unsigned int coeff)
 
int s5p_dp_is_slave_video_stream_clock_on (struct s5p_dp_device *dp)
 
void s5p_dp_set_video_cr_mn (struct s5p_dp_device *dp, enum clock_recovery_m_value_type type, unsigned int m_value, unsigned int n_value)
 
void s5p_dp_enable_video_master (struct s5p_dp_device *dp)
 
int s5p_dp_is_video_stream_on (struct s5p_dp_device *dp)
 
void s5p_dp_config_video_slave_mode (struct s5p_dp_device *dp, struct video_info *video_info)
 
void s5p_dp_wait_hw_link_training_done (struct s5p_dp_device *dp)
 
void fb_init (unsigned long int fb_size, void *lcdbase, struct exynos5_fimd_panel *pd)
 
int dp_controller_init (struct s5p_dp_device *dp_device)
 
int lcd_ctrl_init (unsigned long int fb_size, struct exynos5_fimd_panel *panel_data, void *lcdbase)
 Init the LCD controller. More...
 

Macro Definition Documentation

◆ DP_INIT_TRIES

#define DP_INIT_TRIES   10

Definition at line 10 of file dp-core.h.

◆ MAX_CR_LOOP

#define MAX_CR_LOOP   5

Definition at line 11 of file dp-core.h.

◆ MAX_EQ_LOOP

#define MAX_EQ_LOOP   4

Definition at line 12 of file dp-core.h.

◆ PLL_LOCK_TIMEOUT

#define PLL_LOCK_TIMEOUT   10

Definition at line 9 of file dp-core.h.

◆ STREAM_ON_TIMEOUT

#define STREAM_ON_TIMEOUT   100

Definition at line 8 of file dp-core.h.

Enumeration Type Documentation

◆ clock_recovery_m_value_type

Enumerator
CALCULATED_M 
REGISTER_M 
CALCULATED_M 
REGISTER_M 

Definition at line 69 of file dp-core.h.

◆ color_coefficient

Enumerator
COLOR_YCBCR601 
COLOR_YCBCR709 
COLOR_YCBCR601 
COLOR_YCBCR709 

Definition at line 51 of file dp-core.h.

◆ color_depth

Enumerator
COLOR_6 
COLOR_8 
COLOR_10 
COLOR_12 
COLOR_6 
COLOR_8 
COLOR_10 
COLOR_12 

Definition at line 43 of file dp-core.h.

◆ color_space

Enumerator
CS_RGB 
CS_YCBCR422 
CS_YCBCR444 
COLOR_RGB 
COLOR_YCBCR422 
COLOR_YCBCR444 

Definition at line 36 of file dp-core.h.

◆ dynamic_range

Enumerator
VESA 
CEA 
VESA 
CEA 

Definition at line 57 of file dp-core.h.

◆ link_lane_count

Enumerator
LANE_COUNT1 
LANE_COUNT2 
LANE_COUNT4 

Definition at line 21 of file dp-core.h.

◆ link_rate

enum link_rate
Enumerator
LINK_RATE_1_62GBPS 
LINK_RATE_2_70GBPS 

Definition at line 15 of file dp-core.h.

◆ pll_status

enum pll_status
Enumerator
DP_PLL_UNLOCKED 
DP_PLL_LOCKED 
PLL_UNLOCKED 
PLL_LOCKED 
PLL_UNLOCKED 
PLL_LOCKED 

Definition at line 63 of file dp-core.h.

◆ pre_emphasis_level

Enumerator
PRE_EMPHASIS_LEVEL_0 
PRE_EMPHASIS_LEVEL_1 
PRE_EMPHASIS_LEVEL_2 
PRE_EMPHASIS_LEVEL_3 
PRE_EMPHASIS_LEVEL_0 
PRE_EMPHASIS_LEVEL_1 
PRE_EMPHASIS_LEVEL_2 
PRE_EMPHASIS_LEVEL_3 

Definition at line 28 of file dp-core.h.

Function Documentation

◆ dp_controller_init()

◆ fb_init()

◆ lcd_ctrl_init()

int lcd_ctrl_init ( unsigned long int  fb_size,
struct exynos5_fimd_panel panel_data,
void lcdbase 
)

Init the LCD controller.

Parameters
panel_data
lcdbaseBase address of LCD frame buffer
Returns
0 if ok, -ve error code on error

Definition at line 535 of file fb.c.

References fb_init(), and fimd_bypass().

Referenced by exynos_displayport_init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s5p_dp_config_video_slave_mode()

void s5p_dp_config_video_slave_mode ( struct s5p_dp_device dp,
struct video_info video_info 
)

◆ s5p_dp_enable_video_master()

void s5p_dp_enable_video_master ( struct s5p_dp_device dp)

Definition at line 404 of file dp-reg.c.

References base, s5p_dp_device::base, read32(), VIDEO_MODE_MASK, VIDEO_MODE_SLAVE_MODE, and write32().

Referenced by s5p_dp_config_video().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s5p_dp_get_pll_lock_status()

unsigned int s5p_dp_get_pll_lock_status ( struct s5p_dp_device dp)

Definition at line 92 of file dp-reg.c.

References s5p_dp_device::base, exynos5_dp::dp_debug_ctl, PLL_LOCK, PLL_LOCKED, PLL_UNLOCKED, and read32().

Referenced by s5p_dp_config_video(), s5p_dp_hw_link_training(), and s5p_dp_init_analog_func().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s5p_dp_init_analog_func()

int s5p_dp_init_analog_func ( struct s5p_dp_device dp)

◆ s5p_dp_init_aux()

void s5p_dp_init_aux ( struct s5p_dp_device dp)

◆ s5p_dp_init_video()

void s5p_dp_init_video ( struct s5p_dp_device dp)

Definition at line 297 of file dp-reg.c.

References base, s5p_dp_device::base, CHA_CRI_MASK, CHA_CRI_SHIFT, CHA_CTRL, VID_CLK_CHG, VID_FORMAT_CHG, VSYNC_DET, and write32().

Referenced by dp_controller_init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s5p_dp_is_slave_video_stream_clock_on()

int s5p_dp_is_slave_video_stream_clock_on ( struct s5p_dp_device dp)

Definition at line 341 of file dp-reg.c.

References base, s5p_dp_device::base, BIOS_DEBUG, CHA_STA, DET_STA, printk, read32(), and write32().

Referenced by s5p_dp_config_video().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s5p_dp_is_video_stream_on()

int s5p_dp_is_video_stream_on ( struct s5p_dp_device dp)

Definition at line 415 of file dp-reg.c.

References base, s5p_dp_device::base, BIOS_DEBUG, printk, read32(), stopwatch_expired(), stopwatch_init_msecs_expire(), STREAM_ON_TIMEOUT, VSYNC_DET, and write32().

Referenced by s5p_dp_config_video().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s5p_dp_read_byte_from_dpcd()

◆ s5p_dp_reset()

◆ s5p_dp_set_video_color_format()

void s5p_dp_set_video_color_format ( struct s5p_dp_device dp,
unsigned int  color_depth,
unsigned int  color_space,
unsigned int  dynamic_range,
unsigned int  coeff 
)

Definition at line 316 of file dp-reg.c.

References base, s5p_dp_device::base, IN_BPC_SHIFT, IN_COLOR_F_SHIFT, IN_D_RANGE_SHIFT, IN_YC_COEFFI_ITU601, IN_YC_COEFFI_ITU709, IN_YC_COEFFI_MASK, read32(), and write32().

Referenced by s5p_dp_config_video().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s5p_dp_set_video_cr_mn()

void s5p_dp_set_video_cr_mn ( struct s5p_dp_device dp,
enum clock_recovery_m_value_type  type,
unsigned int  m_value,
unsigned int  n_value 
)

Definition at line 367 of file dp-reg.c.

References base, s5p_dp_device::base, clrbits32, FIX_M_VID, M_VID_0_VALUE_SHIFT, M_VID_1_VALUE_SHIFT, M_VID_2_VALUE_SHIFT, N_VID_0_VALUE_SHIFT, N_VID_1_VALUE_SHIFT, N_VID_2_VALUE_SHIFT, REGISTER_M, setbits32, type, and write32().

Referenced by s5p_dp_config_video().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s5p_dp_start_aux_transaction()

int s5p_dp_start_aux_transaction ( struct s5p_dp_device dp)

Definition at line 165 of file dp-reg.c.

References AUX_EN, AUX_ERR, AUX_STATUS_MASK, base, s5p_dp_device::base, BIOS_ERR, printk, read32(), RPLY_RECEIV, setbits32, and write32().

Referenced by s5p_dp_read_byte_from_dpcd(), and s5p_dp_write_byte_to_dpcd().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s5p_dp_wait_hw_link_training_done()

void s5p_dp_wait_hw_link_training_done ( struct s5p_dp_device dp)

Definition at line 472 of file dp-reg.c.

References base, s5p_dp_device::base, HW_TRAINING_EN, and read32().

Referenced by s5p_dp_hw_link_training().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s5p_dp_write_byte_to_dpcd()

int s5p_dp_write_byte_to_dpcd ( struct s5p_dp_device dp,
unsigned int  reg_addr,
unsigned char  data 
)