blob: 4b448ef159595ac6216078d202c06cb0a312c96b [file] [log] [blame]
Thang Q. Nguyen7d0f84a2021-09-23 06:47:52 +00001#!/bin/bash
2
Thang Q. Nguyendde1fed2021-11-04 08:30:27 +00003# shellcheck source=/dev/null
Thang Q. Nguyen7d0f84a2021-09-23 06:47:52 +00004source /usr/sbin/gpio-lib.sh
5
6# GPIOAC3 BMC_SPI0_BACKUP_SEL Boot from MAIN SPI-HOST
7gpio_configure_output 227 0
8
9# GPIOM4 S0_I2C9_ALERT_L
10gpio_configure_input 100
11
12# GPIOM5 S1_I2C9_ALERT_L
13gpio_configure_input 101
14
15# GPIOQ7 GPIO_BMC_VGA_FRONT_PRES_L
16gpio_configure_input 135
17
18# GPIOS0 GPIO_S0_VRHOT_L
19gpio_configure_input 144
20
21# GPIOS1 GPIO_S1_VRHOT_L
22gpio_configure_input 145
23
24# GPIOY3 BMC_VGA_SEL
Thang Q. Nguyen208c2ae2021-09-23 08:25:32 +000025gpio_configure_output 195 1
Thang Q. Nguyen7d0f84a2021-09-23 06:47:52 +000026
27# GPIO_BMC_READY
Thang Q. Nguyen208c2ae2021-09-23 08:25:32 +000028gpio_configure_output 229 1
Thang Q. Nguyen7d0f84a2021-09-23 06:47:52 +000029
30# =======================================================
31# Below GPIOs are controlled by other services so just
32# initialize in A/C power only.
Thang Q. Nguyened818132022-02-22 10:48:32 +000033bootstatus=$(cat /sys/class/watchdog/watchdog0/bootstatus)
34if [ "$bootstatus" == '32' ]; then
Thang Q. Nguyen7d0f84a2021-09-23 06:47:52 +000035 # BMC_GPIOR2_EXT_HIGHTEMP_L
Thang Q. Nguyen208c2ae2021-09-23 08:25:32 +000036 gpio_configure_output 138 1
Thang Q. Nguyen7d0f84a2021-09-23 06:47:52 +000037
38 # GPIOS5 GPIO_BMC_VR_PMBUS_SEL_L
Thang Q. Nguyen208c2ae2021-09-23 08:25:32 +000039 gpio_configure_output 149 1
Thang Q. Nguyen7d0f84a2021-09-23 06:47:52 +000040
41 # GPIOH7 GPIO_BMC_I2C6_RESET_L
42 gpio_configure_output 63 1
43
44 # GPIO_BMC_OCP_AUX_PWREN
45 gpio_configure_output 139 1
46
47 # GPIO_BMC_OCP_MAIN_PWREN
48 gpio_configure_output 140 0
49
50 # BMC_GPIOAC2_SPI0_PROGRAM_SEL
51 gpio_configure_output 226 0
52
53 # BMC_GPIOB0_I2C_BACKUP_SEL
54 gpio_configure_output 8 1
55fi