coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
gpio.c
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <variant/gpio.h>
4 
5 static const struct pad_config gpio_table[] = {
6  /* SPI */
7  PAD_CFG_NF(GPIO_97, NATIVE, DEEP, NF1),
8  PAD_CFG_NF(GPIO_98, NATIVE, DEEP, NF1),
9  PAD_CFG_NF(GPIO_99, NATIVE, DEEP, NF1),
10  PAD_CFG_NF(GPIO_100, NATIVE, DEEP, NF1),
11  PAD_CFG_NF(GPIO_101, NATIVE, DEEP, NF1),
12  PAD_CFG_NF(GPIO_102, NATIVE, DEEP, NF1),
13  PAD_CFG_NF(GPIO_103, NATIVE, DEEP, NF1),
14  PAD_CFG_NF(FST_SPI_CLK_FB, NATIVE, DEEP, NF1),
15 
16  /* SMBUS */
18  PAD_CFG_NF_IOSTANDBY_IGNORE(SMB_CLK, UP_20K, DEEP, NF1),
19  PAD_CFG_NF_IOSTANDBY_IGNORE(SMB_DATA, UP_20K, DEEP, NF1),
20 
21  /* LPC */
22  PAD_CFG_NF_IOSTANDBY_IGNORE(LPC_ILB_SERIRQ, UP_20K, DEEP, NF1),
23  PAD_CFG_NF_IOSSTATE_IOSTERM(LPC_CLKOUT0, NONE, DEEP, NF1, HIZCRx1, DISPUPD),
24  PAD_CFG_NF_IOSSTATE_IOSTERM(LPC_CLKOUT1, NONE, DEEP, NF1, HIZCRx1, DISPUPD),
25  PAD_CFG_NF_IOSSTATE_IOSTERM(LPC_AD0, UP_20K, DEEP, NF1, HIZCRx1, DISPUPD),
26  PAD_CFG_NF_IOSSTATE_IOSTERM(LPC_AD1, UP_20K, DEEP, NF1, HIZCRx1, DISPUPD),
27  PAD_CFG_NF_IOSSTATE_IOSTERM(LPC_AD2, UP_20K, DEEP, NF1, HIZCRx1, DISPUPD),
28  PAD_CFG_NF_IOSSTATE_IOSTERM(LPC_AD3, UP_20K, DEEP, NF1, HIZCRx1, DISPUPD),
29  PAD_CFG_NF_IOSSTATE_IOSTERM(LPC_CLKRUNB, UP_20K, DEEP, NF1, HIZCRx1, DISPUPD),
30  PAD_CFG_NF_IOSSTATE_IOSTERM(LPC_FRAMEB, UP_20K, DEEP, NF1, HIZCRx1, DISPUPD),
31 };
32 
34 {
36 }
#define ARRAY_SIZE(a)
Definition: helpers.h:12
#define LPC_AD2
Definition: gpio_apl.h:312
#define FST_SPI_CLK_FB
Definition: gpio_apl.h:205
#define LPC_AD0
Definition: gpio_apl.h:310
#define SMB_ALERTB
Definition: gpio_apl.h:304
#define LPC_AD1
Definition: gpio_apl.h:311
#define LPC_CLKOUT1
Definition: gpio_apl.h:309
#define SMB_DATA
Definition: gpio_apl.h:306
#define SMB_CLK
Definition: gpio_apl.h:305
#define LPC_AD3
Definition: gpio_apl.h:313
#define LPC_CLKRUNB
Definition: gpio_apl.h:314
#define LPC_FRAMEB
Definition: gpio_apl.h:315
#define LPC_ILB_SERIRQ
Definition: gpio_apl.h:307
#define LPC_CLKOUT0
Definition: gpio_apl.h:308
static const struct pad_config gpio_table[]
Definition: gpio.c:5
void variant_early_gpio_configure(void)
Definition: gpio.c:33
void gpio_configure_pads(const struct soc_amd_gpio *gpio_list_ptr, size_t size)
program a particular set of GPIO
Definition: gpio.c:307
#define GPIO_103
Definition: gpio.h:71
#define GPIO_99
Definition: gpio.h:76
#define GPIO_98
Definition: gpio.h:75
#define GPIO_102
Definition: gpio.h:79
#define GPIO_97
Definition: gpio.h:74
#define GPIO_100
Definition: gpio.h:77
#define GPIO_101
Definition: gpio.h:78
#define PAD_CFG_NF_IOSSTATE_IOSTERM(pad, pull, rst, func, iosstate, iosterm)
Definition: gpio_defs.h:234
#define PAD_CFG_NF(pad, pull, rst, func)
Definition: gpio_defs.h:197
#define PAD_CFG_NF_IOSTANDBY_IGNORE(pad, pull, rst, func)
Definition: gpio_defs.h:227