coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
fimd.c File Reference
#include <device/mmio.h>
#include <console/console.h>
#include <soc/clk.h>
#include <soc/dp.h>
#include <soc/fimd.h>
#include <soc/periph.h>
#include <soc/sysreg.h>
Include dependency graph for fimd.c:

Go to the source code of this file.

Macros

#define lwritel(a, b)   write32((void *)(b), (unsigned long)(a))
 
#define lreadl(a)   read32((void *)(a))
 

Functions

static unsigned long get_lcd_clk (void)
 
static void exynos_fimd_set_dualrgb (vidinfo_t *vid, unsigned int enabled)
 
static void exynos_fimd_set_dp_clkcon (unsigned int enabled)
 
static void exynos_fimd_set_par (vidinfo_t *vid, unsigned int win_id)
 
static void exynos_fimd_set_buffer_address (vidinfo_t *vid, void *screen_base, int win_id)
 
static void exynos_fimd_set_clock (vidinfo_t *vid)
 
void exynos_set_trigger (void)
 
int exynos_is_i80_frame_done (void)
 
static void exynos_fimd_lcd_on (void)
 
static void exynos_fimd_window_on (unsigned int win_id)
 
void exynos_fimd_lcd_off (void)
 
void exynos_fimd_window_off (unsigned int win_id)
 
static void exynos5_set_system_display (void)
 
void exynos_fimd_lcd_init (vidinfo_t *vid)
 
unsigned long exynos_fimd_calc_fbsize (vidinfo_t *vid)
 
void exynos_fimd_lcd_disable (void)
 

Macro Definition Documentation

◆ lreadl

#define lreadl (   a)    read32((void *)(a))

Definition at line 29 of file fimd.c.

◆ lwritel

#define lwritel (   a,
 
)    write32((void *)(b), (unsigned long)(a))

Definition at line 28 of file fimd.c.

Function Documentation

◆ exynos5_set_system_display()

static void exynos5_set_system_display ( void  )
static

Definition at line 287 of file fimd.c.

References exynos5_sysreg::disp1blk_cfg, exynos_sysreg, lreadl, and lwritel.

Referenced by exynos_fimd_lcd_init().

Here is the caller graph for this function:

◆ exynos_fimd_calc_fbsize()

unsigned long exynos_fimd_calc_fbsize ( vidinfo_t vid)

Definition at line 398 of file fimd.c.

References BIOS_SPEW, printk, and vid.

◆ exynos_fimd_lcd_disable()

void exynos_fimd_lcd_disable ( void  )

Definition at line 404 of file fimd.c.

References BIOS_SPEW, exynos_fimd_window_off(), and printk.

Here is the call graph for this function:

◆ exynos_fimd_lcd_init()

◆ exynos_fimd_lcd_off()

void exynos_fimd_lcd_off ( void  )

◆ exynos_fimd_lcd_on()

static void exynos_fimd_lcd_on ( void  )
static

Definition at line 233 of file fimd.c.

References BIOS_SPEW, EXYNOS_VIDCON0_ENVID_ENABLE, EXYNOS_VIDCON0_ENVID_F_ENABLE, FIMD_CTRL, lreadl, lwritel, and printk.

Referenced by exynos_fimd_lcd_init().

Here is the caller graph for this function:

◆ exynos_fimd_set_buffer_address()

static void exynos_fimd_set_buffer_address ( vidinfo_t vid,
void screen_base,
int  win_id 
)
static

Definition at line 137 of file fimd.c.

References BIOS_SPEW, EXYNOS_BUFFER_OFFSET, FIMD_CTRL, lwritel, printk, and vid.

Referenced by exynos_fimd_lcd_init().

Here is the caller graph for this function:

◆ exynos_fimd_set_clock()

◆ exynos_fimd_set_dp_clkcon()

static void exynos_fimd_set_dp_clkcon ( unsigned int  enabled)
static

Definition at line 82 of file fimd.c.

References EXYNOS_DP_CLK_ENABLE, FIMD_CTRL, and lwritel.

Referenced by exynos_fimd_lcd_init().

Here is the caller graph for this function:

◆ exynos_fimd_set_dualrgb()

static void exynos_fimd_set_dualrgb ( vidinfo_t vid,
unsigned int  enabled 
)
static

Definition at line 66 of file fimd.c.

References BIOS_SPEW, EXYNOS_DUALRGB_BYPASS_DUAL, EXYNOS_DUALRGB_LINESPLIT, EXYNOS_DUALRGB_MAIN_CNT, EXYNOS_DUALRGB_SUB_CNT, EXYNOS_DUALRGB_VDEN_EN_ENABLE, FIMD_CTRL, lwritel, printk, and vid.

Referenced by exynos_fimd_lcd_init().

Here is the caller graph for this function:

◆ exynos_fimd_set_par()

◆ exynos_fimd_window_off()

void exynos_fimd_window_off ( unsigned int  win_id)

Definition at line 271 of file fimd.c.

References BIOS_SPEW, EXYNOS_WINCON, EXYNOS_WINCON_ENWIN_DISABLE, EXYNOS_WINSHMAP_CH_DISABLE, FIMD_CTRL, lreadl, lwritel, and printk.

Referenced by exynos_fimd_lcd_disable().

Here is the caller graph for this function:

◆ exynos_fimd_window_on()

static void exynos_fimd_window_on ( unsigned int  win_id)
static

Definition at line 244 of file fimd.c.

References BIOS_SPEW, EXYNOS_WINCON, EXYNOS_WINCON_ENWIN_ENABLE, EXYNOS_WINSHMAP_CH_ENABLE, FIMD_CTRL, lreadl, lwritel, and printk.

Referenced by exynos_fimd_lcd_init().

Here is the caller graph for this function:

◆ exynos_is_i80_frame_done()

int exynos_is_i80_frame_done ( void  )

Definition at line 219 of file fimd.c.

References BIOS_SPEW, EXYNOS_I80STATUS_TRIG_DONE, FIMD_CTRL, lreadl, and printk.

◆ exynos_set_trigger()

void exynos_set_trigger ( void  )

Definition at line 208 of file fimd.c.

References BIOS_SPEW, EXYNOS_I80SOFT_TRIG_EN, EXYNOS_I80START_TRIG, FIMD_CTRL, lreadl, lwritel, and printk.

◆ get_lcd_clk()

static unsigned long get_lcd_clk ( void  )
static

Definition at line 33 of file fimd.c.

References exynos_clock, get_pll_clk(), lreadl, RPLL, and SPLL.

Referenced by exynos_fimd_set_clock().

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