coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
ps8640.h File Reference
#include <edid.h>
#include <types.h>
Include dependency graph for ps8640.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  {
  PAGE2_GPIO_L = 0xa6 , PAGE2_GPIO_H = 0xa7 , PAGE2_I2C_BYPASS = 0xea , PS_GPIO9 = BIT(1) ,
  I2C_BYPASS_EN = BIT(7) , PAGE2_MCS_EN = 0xf3 , MCS_EN_SHIFT = 0 , MCS_EN_MASK = 0x1 ,
  PAGE3_SET_ADD = 0xfe , PAGE3_SET_VAL = 0xff , VDO_CTL_ADD = 0x13 , VDO_DIS = 0x18 ,
  VDO_EN = 0x1c
}
 
enum  {
  PAGE0_AUXCH_CFG3 = 0x76 , AUXCH_CFG3_RESET = 0xff , PAGE0_SWAUX_ADDR_7_0 = 0x7d , PAGE0_SWAUX_ADDR_15_8 = 0x7e ,
  PAGE0_SWAUX_ADDR_23_16 = 0x7f , SWAUX_ADDR_MASK = 0xfffff , PAGE0_SWAUX_LENGTH = 0x80 , SWAUX_LENGTH_MASK = 0xf ,
  SWAUX_NO_PAYLOAD = BIT(7) , PAGE0_SWAUX_WDATA = 0x81 , PAGE0_SWAUX_RDATA = 0x82 , PAGE0_SWAUX_CTRL = 0x83 ,
  SWAUX_SEND = BIT(0) , PAGE0_SWAUX_STATUS = 0x84 , SWAUX_M_MASK = 0x1f , SWAUX_STATUS_MASK = (0x7 << 5) ,
  SWAUX_STATUS_NACK = (0x1 << 5) , SWAUX_STATUS_DEFER = (0x2 << 5) , SWAUX_STATUS_ACKM = (0x3 << 5) , SWAUX_STATUS_INVALID = (0x4 << 5) ,
  SWAUX_STATUS_I2C_NACK = (0x5 << 5) , SWAUX_STATUS_I2C_DEFER = (0x6 << 5) , SWAUX_STATUS_TIMEOUT = (0x7 << 5)
}
 

Functions

int ps8640_init (uint8_t bus, uint8_t chip)
 
int ps8640_get_edid (uint8_t bus, uint8_t chip, struct edid *out)
 
void ps8640_backlight_enable (uint8_t bus, uint8_t chip)
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
PAGE2_GPIO_L 
PAGE2_GPIO_H 
PAGE2_I2C_BYPASS 
PS_GPIO9 
I2C_BYPASS_EN 
PAGE2_MCS_EN 
MCS_EN_SHIFT 
MCS_EN_MASK 
PAGE3_SET_ADD 
PAGE3_SET_VAL 
VDO_CTL_ADD 
VDO_DIS 
VDO_EN 

Definition at line 9 of file ps8640.h.

◆ anonymous enum

anonymous enum
Enumerator
PAGE0_AUXCH_CFG3 
AUXCH_CFG3_RESET 
PAGE0_SWAUX_ADDR_7_0 
PAGE0_SWAUX_ADDR_15_8 
PAGE0_SWAUX_ADDR_23_16 
SWAUX_ADDR_MASK 
PAGE0_SWAUX_LENGTH 
SWAUX_LENGTH_MASK 
SWAUX_NO_PAYLOAD 
PAGE0_SWAUX_WDATA 
PAGE0_SWAUX_RDATA 
PAGE0_SWAUX_CTRL 
SWAUX_SEND 
PAGE0_SWAUX_STATUS 
SWAUX_M_MASK 
SWAUX_STATUS_MASK 
SWAUX_STATUS_NACK 
SWAUX_STATUS_DEFER 
SWAUX_STATUS_ACKM 
SWAUX_STATUS_INVALID 
SWAUX_STATUS_I2C_NACK 
SWAUX_STATUS_I2C_DEFER 
SWAUX_STATUS_TIMEOUT 

Definition at line 26 of file ps8640.h.

Function Documentation

◆ ps8640_backlight_enable()

void ps8640_backlight_enable ( uint8_t  bus,
uint8_t  chip 
)

◆ ps8640_get_edid()

int ps8640_get_edid ( uint8_t  bus,
uint8_t  chip,
struct edid out 
)

Definition at line 11 of file ps8640.c.

References BIOS_INFO, chip, decode_edid(), EDID_CONFORMANT, EDID_EXTENSION_FLAG, EDID_I2C_ADDR, EDID_LENGTH, I2C_BYPASS_EN, i2c_read_bytes(), i2c_writeb(), PAGE2_I2C_BYPASS, and printk.

Referenced by bridge_ps8640_get_edid(), display_startup(), get_panel_description(), and read_edid_from_ps8640().

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

◆ ps8640_init()

int ps8640_init ( uint8_t  bus,
uint8_t  chip 
)

Definition at line 45 of file ps8640.c.

Referenced by bridge_ps8640_get_edid(), display_startup(), get_panel_description(), and read_edid_from_ps8640().

Here is the caller graph for this function: