coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
gpio.c File Reference
#include <acpi/acpi.h>
#include <baseboard/gpio.h>
#include <baseboard/variants.h>
#include <types.h>
#include <vendorcode/google/chromeos/chromeos.h>
Include dependency graph for gpio.c:

Go to the source code of this file.

Functions

const struct pad_config *__weak variant_base_gpio_table (size_t *num)
 
const struct pad_config *__weak variant_override_gpio_table (size_t *num)
 
const struct pad_config *__weak variant_early_override_gpio_table (size_t *num)
 
const struct pad_configmainboard_early_bootblock_gpio_table (size_t *num)
 
const struct pad_config *__weak variant_early_gpio_table (size_t *num)
 
const struct pad_config *__weak variant_sleep_gpio_table (size_t *num, int slp_typ)
 
 DECLARE_WEAK_CROS_GPIOS (cros_gpios)
 

Variables

static const struct pad_config gpio_table []
 
static const struct pad_config early_bootblock_gpio_table []
 
static const struct pad_config early_gpio_table []
 
static const struct pad_config sleep_gpio_table []
 
static const struct pad_config sleep_s5_gpio_table []
 
static const struct cros_gpio cros_gpios []
 

Function Documentation

◆ DECLARE_WEAK_CROS_GPIOS()

DECLARE_WEAK_CROS_GPIOS ( cros_gpios  )

◆ mainboard_early_bootblock_gpio_table()

const struct pad_config* mainboard_early_bootblock_gpio_table ( size_t num)

Definition at line 302 of file gpio.c.

Referenced by bootblock_mainboard_early_init().

Here is the caller graph for this function:

◆ variant_base_gpio_table()

const struct pad_config* __weak variant_base_gpio_table ( size_t num)

Definition at line 278 of file gpio.c.

References ARRAY_SIZE, and gpio_table.

◆ variant_early_gpio_table()

const struct pad_config* __weak variant_early_gpio_table ( size_t num)

Definition at line 352 of file gpio.c.

◆ variant_early_override_gpio_table()

const struct pad_config* __weak variant_early_override_gpio_table ( size_t num)

Definition at line 290 of file gpio.c.

◆ variant_override_gpio_table()

const struct pad_config* __weak variant_override_gpio_table ( size_t num)

Definition at line 284 of file gpio.c.

References NULL.

◆ variant_sleep_gpio_table()

const struct pad_config* __weak variant_sleep_gpio_table ( size_t num,
int  slp_typ 
)

Definition at line 369 of file gpio.c.

Variable Documentation

◆ cros_gpios

const struct cros_gpio cros_gpios[]
static
Initial value:
= {
CROS_GPIO_REC_AL(CROS_GPIO_VIRTUAL, CROS_GPIO_DEVICE_NAME),
}
#define GPIO_COMM_SCC_NAME
Definition: gpio_glk.h:313
#define PAD_SCC(pad)
Definition: gpio_glk.h:306
#define GPIO_PCH_WP
Definition: gpio.h:14
#define CROS_GPIO_DEVICE_NAME
Definition: gpio.h:14

Definition at line 369 of file gpio.c.

◆ early_bootblock_gpio_table

const struct pad_config early_bootblock_gpio_table[]
static
Initial value:
= {
PAD_CFG_NF_IOSSTATE_IOSTERM(GPIO_64, UP_20K, DEEP, NF1, HIZCRx1, DISPUPD),
PAD_CFG_NF_IOSSTATE_IOSTERM(GPIO_65, UP_20K, DEEP, NF1, TxLASTRxE, DISPUPD),
}
#define GPIO_64
Definition: gpio_ftns.h:24
#define PAD_NC(pin)
Definition: gpio_defs.h:263
#define GPIO_154
Definition: gpio.h:104
#define GPIO_65
Definition: gpio.h:51
#define PAD_CFG_NF_IOSSTATE_IOSTERM(pad, pull, rst, func, iosstate, iosterm)
Definition: gpio_defs.h:234

Definition at line 290 of file gpio.c.

◆ early_gpio_table

const struct pad_config early_gpio_table[]
static
Initial value:
= {
PAD_CFG_GPI_APIC_IOS(GPIO_63, NONE, DEEP, LEVEL, INVERT, TxDRxE,
DISPUPD),
PAD_CFG_NF(GPIO_79, NONE, DEEP, NF1),
PAD_CFG_NF(GPIO_80, NONE, DEEP, NF1),
PAD_CFG_NF(GPIO_82, NONE, DEEP, NF1),
PAD_CFG_NF(GPIO_83, NONE, DEEP, NF1),
PAD_CFG_GPO(GPIO_178, 0, DEEP),
PAD_CFG_GPO(GPIO_164, 0, DEEP),
PAD_CFG_NF_IOSSTATE_IOSTERM(GPIO_151, UP_20K, DEEP, NF2, HIZCRx1,
ENPU),
PAD_CFG_GPO_IOSSTATE_IOSTERM(GPIO_67, 0, DEEP, NONE, TxLASTRxE, DISPUPD),
PAD_CFG_GPI_SCI_LOW(GPIO_117, NONE, DEEP, EDGE_SINGLE),
PAD_CFG_GPO_IOSSTATE_IOSTERM(GPIO_161, 1, DEEP, UP_20K, Tx1RxDCRx0, DISPUPD),
}
#define GPIO_189
Definition: gpio_ftns.h:19
#define GPIO_190
Definition: gpio_ftns.h:20
#define GPIO_82
Definition: gpio_apl.h:187
#define GPIO_178
Definition: gpio_apl.h:300
#define GPIO_161
Definition: gpio_apl.h:282
#define GPIO_83
Definition: gpio_apl.h:188
#define GPIO_164
Definition: gpio_apl.h:285
#define GPIO_151
Definition: gpio_apl.h:245
#define GPIO_63
Definition: gpio_apl.h:116
#define GPIO_67
Definition: gpio.h:53
#define GPIO_79
Definition: gpio.h:66
#define GPIO_80
Definition: gpio.h:67
#define GPIO_117
Definition: gpio.h:84
#define PAD_CFG_GPI_APIC_IOS(pad, pull, rst, trig, inv, iosstate, iosterm)
Definition: gpio_defs.h:391
#define PAD_CFG_GPI(pad, pull, rst)
Definition: gpio_defs.h:284
#define PAD_CFG_GPI_SCI_LOW(pad, pull, rst, trig)
Definition: gpio_defs.h:452
#define PAD_CFG_NF(pad, pull, rst, func)
Definition: gpio_defs.h:197
#define PAD_CFG_GPO_IOSSTATE_IOSTERM(pad, val, rst, pull, iosstate, ioterm)
Definition: gpio_defs.h:277
#define PAD_CFG_GPO(pad, val, rst)
Definition: gpio_defs.h:247

Definition at line 302 of file gpio.c.

◆ gpio_table

const struct pad_config gpio_table[]
static

Definition at line 1 of file gpio.c.

Referenced by variant_base_gpio_table().

◆ sleep_gpio_table

const struct pad_config sleep_gpio_table[]
static
Initial value:
= {
}

Definition at line 352 of file gpio.c.

◆ sleep_s5_gpio_table

const struct pad_config sleep_s5_gpio_table[]
static
Initial value:
= {
PAD_CFG_GPO_IOSSTATE_IOSTERM(GPIO_109, 0, DEEP, NONE, Tx0RxDCRx1, SAME),
}
#define GPIO_109
Definition: gpio.h:74

Definition at line 352 of file gpio.c.