coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
mainboard.c File Reference
#include <device/mmio.h>
#include <boot/coreboot_tables.h>
#include <console/console.h>
#include <device/device.h>
#include <device/i2c_simple.h>
#include <edid.h>
#include <gpio.h>
#include <soc/display.h>
#include <soc/grf.h>
#include <soc/soc.h>
#include <soc/pmu.h>
#include <soc/clock.h>
#include <soc/rk808.h>
#include <soc/spi.h>
#include <soc/i2c.h>
#include <symbols.h>
#include <security/vboot/vboot_common.h>
#include "board.h"
Include dependency graph for mainboard.c:

Go to the source code of this file.

Functions

static void configure_usb (void)
 
static void configure_emmc (void)
 
static void configure_codec (void)
 
static void configure_3g (void)
 
static void mainboard_init (struct device *dev)
 
static void mainboard_enable (struct device *dev)
 
void lb_board (struct lb_header *header)
 
void mainboard_power_on_backlight (void)
 

Variables

struct chip_operations mainboard_ops
 

Function Documentation

◆ configure_3g()

static void configure_3g ( void  )
static

Definition at line 52 of file mainboard.c.

References GPIO, and gpio_output().

Referenced by mainboard_init().

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

◆ configure_codec()

static void configure_codec ( void  )
static

Definition at line 37 of file mainboard.c.

References i2c_init(), rk3288_grf_regs::io_vsel, rk3288_grf_regs::iomux_i2c2, IOMUX_I2C2, rk3288_grf_regs::iomux_i2s, IOMUX_I2S, rk3288_grf_regs::iomux_i2sclk, IOMUX_I2SCLK, KHz, rk3288_grf, rk808_configure_ldo(), RK_SETBITS, rkclk_configure_i2s(), and write32().

Referenced by mainboard_init().

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

◆ configure_emmc()

static void configure_emmc ( void  )
static

Definition at line 28 of file mainboard.c.

References GPIO, gpio_output(), rk3288_grf_regs::iomux_emmccmd, IOMUX_EMMCCMD, rk3288_grf_regs::iomux_emmcdata, IOMUX_EMMCDATA, rk3288_grf_regs::iomux_emmcpwren, IOMUX_EMMCPWREN, rk3288_grf, and write32().

Referenced by mainboard_init().

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

◆ configure_usb()

static void configure_usb ( void  )
static

Definition at line 23 of file mainboard.c.

References GPIO, and gpio_output().

Referenced by mainboard_init().

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

◆ lb_board()

void lb_board ( struct lb_header header)

Definition at line 88 of file mainboard.c.

References dma, dma_coherent(), header, lb_new_record(), LB_TAG_DMA, and REGION_SIZE.

Here is the call graph for this function:

◆ mainboard_enable()

static void mainboard_enable ( struct device dev)
static

Definition at line 79 of file mainboard.c.

References device_operations::init, mainboard_init(), and device::ops.

Here is the call graph for this function:

◆ mainboard_init()

static void mainboard_init ( struct device dev)
static

Definition at line 60 of file mainboard.c.

References APLL_600_MHZ, BIOS_DEBUG, configure_3g(), configure_codec(), configure_emmc(), configure_usb(), gpio_output(), GPIO_RESET, printk, rk808_configure_buck(), rkclk_configure_cpu(), and vboot_recovery_mode_enabled().

Referenced by mainboard_enable().

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

◆ mainboard_power_on_backlight()

void mainboard_power_on_backlight ( void  )

Definition at line 99 of file mainboard.c.

Variable Documentation

◆ mainboard_ops

struct chip_operations mainboard_ops
Initial value:
= {
.enable_dev = mainboard_enable,
}
static void mainboard_enable(struct device *dev)
Definition: mainboard.c:79

Definition at line 79 of file mainboard.c.