summaryrefslogtreecommitdiff
path: root/zephyr
diff options
context:
space:
mode:
authorDenis Brockus <dbrockus@google.com>2021-04-26 15:42:24 -0600
committerCommit Bot <commit-bot@chromium.org>2021-04-27 18:17:38 +0000
commit6ed0a68eadcb0d07ffdcc2c581d2961b49c21f19 (patch)
tree27a31f8d8fbf946f51e0bca365ef5bcb431d7cf2 /zephyr
parent2adede07783d40c6115a96f5f70dbf94ea9a2215 (diff)
downloadchrome-ec-6ed0a68eadcb0d07ffdcc2c581d2961b49c21f19.tar.gz
zephyr: asurada: Enable GPIOs
Enable GPIO and include GPIO DTS BUG=b:180980668 BRANCH=none TEST=ec console "gpioget" Signed-off-by: Denis Brockus <dbrockus@google.com> Change-Id: Ied6fddfb69071fae246e1331c055b2fb61d34825 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2854335 Tested-by: Denis Brockus <dbrockus@chromium.org> Auto-Submit: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Yuval Peress <peress@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
Diffstat (limited to 'zephyr')
-rw-r--r--zephyr/dts/bindings/gpio/gpio-enum-name.yaml45
-rw-r--r--zephyr/projects/asurada/boards/riscv/asurada/asurada_defconfig4
-rw-r--r--zephyr/projects/asurada/hayato/gpio.dts319
3 files changed, 366 insertions, 2 deletions
diff --git a/zephyr/dts/bindings/gpio/gpio-enum-name.yaml b/zephyr/dts/bindings/gpio/gpio-enum-name.yaml
index 2e1fbc869c..16c365a59e 100644
--- a/zephyr/dts/bindings/gpio/gpio-enum-name.yaml
+++ b/zephyr/dts/bindings/gpio/gpio-enum-name.yaml
@@ -6,23 +6,33 @@ properties:
Enum used in code.
enum:
- GPIO_AC_PRESENT
+ - GPIO_ALS_RGB_INT_ODL
+ - GPIO_AP_EC_WARM_RST_REQ
+ - GPIO_AP_EC_WATCHDOG_L
+ - GPIO_AP_IN_SLEEP_L
- GPIO_AP_RST_L
- GPIO_AP_SUSPEND
+ - GPIO_BASE_IMU_INT_L
- GPIO_BATT_PRES_ODL
+ - GPIO_BC12_DET_EN
- GPIO_BOARD_VERSION1
- GPIO_BOARD_VERSION2
- GPIO_BOARD_VERSION3
- GPIO_CCD_MODE_ODL
+ - GPIO_CHARGER_PROCHOT_ODL
- GPIO_CPU_PROCHOT
- GPIO_DA9313_GPIO0
- GPIO_DEPRECATED_AP_RST_REQ
+ - GPIO_DP_AUX_PATH_SEL
- GPIO_DP_HOT_PLUG_DET
- GPIO_DP_MUX_OE_L
- GPIO_DP_MUX_SEL
- GPIO_EC_ALS_RGB_INT_L
- GPIO_EC_BATT_PRES_ODL
+ - GPIO_EC_BL_EN_OD
- GPIO_EC_CHG_LED_B_C1
- GPIO_EC_CHG_LED_Y_C1
+ - GPIO_EC_DPBRDG_HPD_ODL
- GPIO_EC_I2C_SENSOR_SCL
- GPIO_EC_I2C_SENSOR_SDA
- GPIO_EC_I2C0_SENSOR_SCL
@@ -41,20 +51,39 @@ properties:
- GPIO_EC_INT_L
- GPIO_EC_PCH_SYS_PWROK
- GPIO_EC_PCH_WAKE_ODL
+ - GPIO_EC_PMIC_EN_ODL
+ - GPIO_EC_PMIC_WATCHDOG_L
- GPIO_EC_PROCHOT_IN_L
- GPIO_EC_RST_ODL
- GPIO_EC_WP_L
+ - GPIO_EC_X_GPIO1
+ - GPIO_EC_X_GPIO3
+ - GPIO_EN_5V_USM
- GPIO_EN_A_RAILS
+ - GPIO_EN_EC_ID_ODL
+ - GPIO_EN_PP3000_SD_U
+ - GPIO_EN_PP3000_VMC_PMU
- GPIO_EN_PP3300_A
- GPIO_EN_PP5000
- GPIO_EN_PP5000_A
- GPIO_EN_PP5000_FAN
+ - GPIO_EN_PP5000_USB_A0_VBUS
- GPIO_EN_PP5000_USBA
- GPIO_EN_PPVAR_VCCIN
+ - GPIO_EN_SLP_Z
- GPIO_EN_USB_A_5V
- GPIO_ENABLE_BACKLIGHT
- GPIO_ENTERING_RW
+ - GPIO_I2C_A_SCL
+ - GPIO_I2C_A_SDA
+ - GPIO_I2C_B_SCL
+ - GPIO_I2C_B_SDA
+ - GPIO_I2C_C_SCL
+ - GPIO_I2C_C_SDA
+ - GPIO_I2C_E_SCL
+ - GPIO_I2C_E_SDA
- GPIO_KBD_KSO2
+ - GPIO_LID_ACCEL_INT_L
- GPIO_LID_OPEN
- GPIO_PACKET_MODE_EN
- GPIO_PCH_DSW_PWROK
@@ -69,6 +98,11 @@ properties:
- GPIO_PG_EC_ALL_SYS_PWRGD
- GPIO_PG_EC_DSW_PWROK
- GPIO_PG_EC_RSMRST_ODL
+ - GPIO_PG_MT6360_ODL
+ - GPIO_PG_MT6315_GPU_ODL
+ - GPIO_PG_MT6315_PROC_ODL
+ - GPIO_PG_PP5000_A_ODL
+ - GPIO_PMIC_EC_PWRGD
- GPIO_PMIC_KPD_PWR_ODL
- GPIO_PMIC_RESIN_L
- GPIO_POWER_BUTTON_L
@@ -77,18 +111,27 @@ properties:
- GPIO_PS_HOLD
- GPIO_QSIP_ON
- GPIO_RSMRST_L_PGOOD
+ - GPIO_SET_VMC_VOLT_AT_1V8
- GPIO_SKU_ID0
- GPIO_SKU_ID1
- GPIO_SKU_ID2
- GPIO_SLP_SUS_L
+ - GPIO_SPI_CLK_GPG6
+ - GPIO_SPI_CS_GPG7
+ - GPIO_SPI_MISO_GPG5
+ - GPIO_SPI_MOSI_GPG4
+ - GPIO_SPI0_CS
- GPIO_SWITCHCAP_ON
- GPIO_SWITCHCAP_ON_L
- GPIO_SWITCHCAP_PG_INT_L
- GPIO_SYS_RESET_L
+ - GPIO_SYS_RST_ODL
- GPIO_TABLET_MODE_L
+ - GPIO_USB_A0_FAULT_ODL
- GPIO_USB_A0_OC_ODL
- GPIO_USB_C0_BC12_INT_L
- GPIO_USB_C0_BC12_INT_ODL
+ - GPIO_USB_C0_FRS_EN
- GPIO_USB_C0_OC_ODL
- GPIO_USB_C0_PD_INT_ODL
- GPIO_USB_C0_PD_RST_L
@@ -110,4 +153,6 @@ properties:
- GPIO_VOLUME_DOWN_L
- GPIO_VOLUME_UP_L
- GPIO_WARM_RESET_L
+ - GPIO_WP
- GPIO_WP_L
+ - GPIO_X_EC_GPIO2
diff --git a/zephyr/projects/asurada/boards/riscv/asurada/asurada_defconfig b/zephyr/projects/asurada/boards/riscv/asurada/asurada_defconfig
index 3810b05255..57adfb0400 100644
--- a/zephyr/projects/asurada/boards/riscv/asurada/asurada_defconfig
+++ b/zephyr/projects/asurada/boards/riscv/asurada/asurada_defconfig
@@ -23,8 +23,8 @@ CONFIG_PINMUX=y
CONFIG_PINMUX_ITE_IT8XXX2=y
# GPIO Controller
-CONFIG_GPIO=n
-CONFIG_GPIO_ITE_IT8XXX2=n
+CONFIG_GPIO=y
+CONFIG_GPIO_ITE_IT8XXX2=y
# Clock configuration
CONFIG_CLOCK_CONTROL=y
diff --git a/zephyr/projects/asurada/hayato/gpio.dts b/zephyr/projects/asurada/hayato/gpio.dts
index 5de0a5e422..c2d891c0b4 100644
--- a/zephyr/projects/asurada/hayato/gpio.dts
+++ b/zephyr/projects/asurada/hayato/gpio.dts
@@ -6,5 +6,324 @@
/ {
named-gpios {
compatible = "named-gpios";
+
+ power_button_l {
+ gpios = <&gpioe 4 (GPIO_INPUT | GPIO_PULL_UP)>;
+ enum-name = "GPIO_POWER_BUTTON_L";
+ label = "POWER_BUTTON_L";
+ };
+ lid_open {
+ gpios = <&gpioe 2 GPIO_INPUT>;
+ enum-name = "GPIO_LID_OPEN";
+ label = "LID_OPEN";
+ };
+ tablet_mode_l {
+ gpios = <&gpioj 7 GPIO_INPUT>;
+ enum-name = "GPIO_TABLET_MODE_L";
+ label = "TABLET_MODE_L";
+ };
+ ap_ec_warm_rst_req {
+ gpios = <&gpiod 3 GPIO_INPUT>;
+ enum-name = "GPIO_AP_EC_WARM_RST_REQ";
+ label = "AP_EC_WARM_RST_REQ";
+ };
+ ap_ec_watchdog_l {
+ gpios = <&gpioc 7 GPIO_INPUT>;
+ enum-name = "GPIO_AP_EC_WATCHDOG_L";
+ label = "AP_EC_WATCHDOG_L";
+ };
+ ap_in_sleep_l {
+ gpios = <&gpiof 2 (GPIO_INPUT | GPIO_PULL_DOWN)>;
+ enum-name = "GPIO_AP_IN_SLEEP_L";
+ label = "AP_IN_SLEEP_L";
+ };
+ pmic_ec_pwrgd {
+ gpios = <&gpiof 3 (GPIO_INPUT | GPIO_PULL_DOWN)>;
+ enum-name = "GPIO_PMIC_EC_PWRGD";
+ label = "PMIC_EC_PWRGD";
+ };
+ base_imu_int_l {
+ gpios = <&gpioj 2 GPIO_INPUT>;
+ enum-name = "GPIO_BASE_IMU_INT_L";
+ label = "BASE_IMU_INT_L";
+ };
+ lid_accel_int_l {
+ gpios = <&gpioj 3 GPIO_INPUT>;
+ enum-name = "GPIO_LID_ACCEL_INT_L";
+ label = "LID_ACCEL_INT_L";
+ };
+ als_rgb_int_odl {
+ gpios = <&gpiof 0 GPIO_INPUT>;
+ enum-name = "GPIO_ALS_RGB_INT_ODL";
+ label = "ALS_RGB_INT_ODL";
+ };
+ usb_c0_ppc_int_odl {
+ gpios = <&gpiod 1 GPIO_INPUT>;
+ enum-name = "GPIO_USB_C0_PPC_INT_ODL";
+ label = "USB_C0_PPC_INT_ODL";
+ };
+ usb_c0_bc12_int_odl {
+ gpios = <&gpioj 6 GPIO_INPUT>;
+ enum-name = "GPIO_USB_C0_BC12_INT_ODL";
+ label = "USB_C0_BC12_INT_ODL";
+ };
+ usb_c1_bc12_int_l {
+ gpios = <&gpioj 4 GPIO_INPUT>;
+ enum-name = "GPIO_USB_C1_BC12_INT_L";
+ label = "USB_C1_BC12_INT_L";
+ };
+ volume_down_l {
+ gpios = <&gpiod 5 (GPIO_INPUT | GPIO_PULL_UP)>;
+ enum-name = "GPIO_VOLUME_DOWN_L";
+ label = "VOLUME_DOWN_L";
+ };
+ volume_up_l {
+ gpios = <&gpiod 6 (GPIO_INPUT | GPIO_PULL_UP)>;
+ enum-name = "GPIO_VOLUME_UP_L";
+ label = "VOLUME_UP_L";
+ };
+ ac_present {
+ gpios = <&gpioe 5 GPIO_INPUT>;
+ enum-name = "GPIO_AC_PRESENT";
+ label = "AC_PRESENT";
+ };
+ wp {
+ gpios = <&gpioi 4 GPIO_INPUT>;
+ enum-name = "GPIO_WP";
+ label = "WP";
+ };
+ spi0_cs {
+ gpios = <&gpiom 5 GPIO_INPUT>;
+ enum-name = "GPIO_SPI0_CS";
+ label = "SPI0_CS";
+ };
+ x_ec_gpio2 {
+ gpios = <&gpiob 2 GPIO_ODR_HIGH>;
+ enum-name = "GPIO_X_EC_GPIO2";
+ label = "X_EC_GPIO2";
+ };
+ ec_pmic_en_odl {
+ gpios = <&gpiod 0 GPIO_ODR_HIGH>;
+ enum-name = "GPIO_EC_PMIC_EN_ODL";
+ label = "EC_PMIC_EN_ODL";
+ };
+ ec_pmic_watchdog_l {
+ gpios = <&gpioh 0 GPIO_ODR_LOW>;
+ enum-name = "GPIO_EC_PMIC_WATCHDOG_L";
+ label = "EC_PMIC_WATCHDOG_L";
+ };
+ en_pp5000_a {
+ gpios = <&gpioc 6 GPIO_OUT_HIGH>;
+ enum-name = "GPIO_EN_PP5000_A";
+ label = "EN_PP5000_A";
+ };
+ pg_mt6315_proc_odl {
+ gpios = <&gpioe 1 GPIO_INPUT>;
+ enum-name = "GPIO_PG_MT6315_PROC_ODL";
+ label = "PG_MT6315_PROC_ODL";
+ };
+ pg_mt6360_odl {
+ gpios = <&gpiof 1 GPIO_INPUT>;
+ enum-name = "GPIO_PG_MT6360_ODL";
+ label = "PG_MT6360_ODL";
+ };
+ pg_pp5000_a_odl {
+ gpios = <&gpioa 6 GPIO_INPUT>;
+ enum-name = "GPIO_PG_PP5000_A_ODL";
+ label = "PG_PP5000_A_ODL";
+ };
+ en_slp_z {
+ gpios = <&gpioe 3 GPIO_OUT_LOW>;
+ enum-name = "GPIO_EN_SLP_Z";
+ label = "EN_SLP_Z";
+ };
+ sys_rst_odl {
+ gpios = <&gpiob 6 GPIO_ODR_LOW>;
+ enum-name = "GPIO_SYS_RST_ODL";
+ label = "SYS_RST_ODL";
+ };
+ ec_bl_en_od {
+ gpios = <&gpiob 5 GPIO_ODR_LOW>;
+ enum-name = "GPIO_EC_BL_EN_OD";
+ label = "EC_BL_EN_OD";
+ };
+ ec_int_l {
+ gpios = <&gpioe 6 GPIO_ODR_HIGH>;
+ enum-name = "GPIO_EC_INT_L";
+ label = "EC_INT_L";
+ };
+ dp_aux_path_sel {
+ gpios = <&gpiog 0 GPIO_OUT_HIGH>;
+ enum-name = "GPIO_DP_AUX_PATH_SEL";
+ label = "DP_AUX_PATH_SEL";
+ };
+ ec_dpbrdg_hpd_odl {
+ gpios = <&gpioj 0 GPIO_ODR_HIGH>;
+ enum-name = "GPIO_EC_DPBRDG_HPD_ODL";
+ label = "EC_DPBRDG_HPD_ODL";
+ };
+ en_pp5000_usb_a0_vbus {
+ gpios = <&gpiob 7 GPIO_OUT_LOW>;
+ enum-name = "GPIO_EN_PP5000_USB_A0_VBUS";
+ label = "EN_PP5000_USB_A0_VBUS";
+ };
+ usb_c0_frs_en {
+ gpios = <&gpioh 3 GPIO_OUT_LOW>;
+ enum-name = "GPIO_USB_C0_FRS_EN";
+ label = "USB_C0_FRS_EN";
+ };
+ ec_batt_pres_odl {
+ gpios = <&gpioc 0 GPIO_INPUT>;
+ enum-name = "GPIO_EC_BATT_PRES_ODL";
+ label = "EC_BATT_PRES_ODL";
+ };
+ bc12_det_en {
+ gpios = <&gpioj 5 GPIO_OUT_LOW>;
+ enum-name = "GPIO_BC12_DET_EN";
+ label = "BC12_DET_EN";
+ };
+ en_ec_id_odl {
+ gpios = <&gpioh 5 GPIO_ODR_LOW>;
+ enum-name = "GPIO_EN_EC_ID_ODL";
+ label = "EN_EC_ID_ODL";
+ };
+ entering_rw {
+ gpios = <&gpioc 5 GPIO_OUT_LOW>;
+ enum-name = "GPIO_ENTERING_RW";
+ label = "ENTERING_RW";
+ };
+ en_5v_usm {
+ gpios = <&gpiod 7 GPIO_OUT_LOW>;
+ enum-name = "GPIO_EN_5V_USM";
+ label = "EN_5V_USM";
+ };
+ i2c_a_scl {
+ gpios = <&gpiob 3 GPIO_INPUT>;
+ enum-name = "GPIO_I2C_A_SCL";
+ label = "I2C_A_SCL";
+ };
+ i2c_a_sda {
+ gpios = <&gpiob 4 GPIO_INPUT>;
+ enum-name = "GPIO_I2C_A_SDA";
+ label = "I2C_A_SDA";
+ };
+ i2c_b_scl {
+ gpios = <&gpioc 1 GPIO_INPUT>;
+ enum-name = "GPIO_I2C_B_SCL";
+ label = "I2C_B_SCL";
+ };
+ i2c_b_sda {
+ gpios = <&gpioc 2 GPIO_INPUT>;
+ enum-name = "GPIO_I2C_B_SDA";
+ label = "I2C_B_SDA";
+ };
+ i2c_c_scl {
+ gpios = <&gpiof 6 GPIO_INPUT>;
+ enum-name = "GPIO_I2C_C_SCL";
+ label = "I2C_C_SCL";
+ };
+ i2c_c_sda {
+ gpios = <&gpiof 7 GPIO_INPUT>;
+ enum-name = "GPIO_I2C_C_SDA";
+ label = "I2C_C_SDA";
+ };
+ i2c_e_scl {
+ gpios = <&gpioe 0 GPIO_INPUT>;
+ enum-name = "GPIO_I2C_E_SCL";
+ label = "I2C_E_SCL";
+ };
+ i2c_e_sda {
+ gpios = <&gpioe 7 GPIO_INPUT>;
+ enum-name = "GPIO_I2C_E_SDA";
+ label = "I2C_E_SDA";
+ };
+ ec_x_gpio1 {
+ gpios = <&gpioh 4 GPIO_OUT_LOW>;
+ enum-name = "GPIO_EC_X_GPIO1";
+ label = "EC_X_GPIO1";
+ };
+ ec_x_gpio3 {
+ gpios = <&gpioj 1 GPIO_INPUT>;
+ enum-name = "GPIO_EC_X_GPIO3";
+ label = "EC_X_GPIO3";
+ };
+ set_vmc_volt_at_1v8 {
+ gpios = <&gpiod 4 (GPIO_INPUT | GPIO_PULL_DOWN)>;
+ enum-name = "GPIO_SET_VMC_VOLT_AT_1V8";
+ label = "SET_VMC_VOLT_AT_1V8";
+ };
+ en_pp3000_vmc_pmu {
+ gpios = <&gpiod 2 (GPIO_INPUT | GPIO_PULL_DOWN)>;
+ enum-name = "GPIO_EN_PP3000_VMC_PMU";
+ label = "EN_PP3000_VMC_PMU";
+ };
+ packet_mode_en {
+ gpios = <&gpioa 3 (GPIO_INPUT | GPIO_PULL_DOWN)>;
+ enum-name = "GPIO_PACKET_MODE_EN";
+ label = "PACKET_MODE_EN";
+ };
+ usb_a0_fault_odl {
+ gpios = <&gpioa 7 GPIO_INPUT>;
+ enum-name = "GPIO_USB_A0_FAULT_ODL";
+ label = "USB_A0_FAULT_ODL";
+ };
+ charger_prochot_odl {
+ gpios = <&gpioc 3 GPIO_INPUT>;
+ enum-name = "GPIO_CHARGER_PROCHOT_ODL";
+ label = "CHARGER_PROCHOT_ODL";
+ };
+ pg_mt6315_gpu_odl {
+ gpios = <&gpioh 6 GPIO_INPUT>;
+ enum-name = "GPIO_PG_MT6315_GPU_ODL";
+ label = "PG_MT6315_GPU_ODL";
+ };
+ en_pp3000_sd_u {
+ gpios = <&gpiog 1 (GPIO_INPUT | GPIO_PULL_DOWN)>;
+ enum-name = "GPIO_EN_PP3000_SD_U";
+ label = "EN_PP3000_SD_U";
+ };
+ ccd_mode_odl {
+ gpios = <&gpioc 4 GPIO_INPUT>;
+ enum-name = "GPIO_CCD_MODE_ODL";
+ label = "CCD_MODE_ODL";
+ };
+ spi_clk_gpg6 {
+ gpios = <&gpiog 6 (GPIO_INPUT | GPIO_PULL_UP)>;
+ enum-name = "GPIO_SPI_CLK_GPG6";
+ label = "SPI_CLK_GPG6";
+ };
+ spi_mosi_gpg4 {
+ gpios = <&gpiog 4 GPIO_OUT_LOW>;
+ enum-name = "GPIO_SPI_MOSI_GPG4";
+ label = "SPI_MOSI_GPG4";
+ };
+ spi_miso_gpg5 {
+ gpios = <&gpiog 5 GPIO_OUT_LOW>;
+ enum-name = "GPIO_SPI_MISO_GPG5";
+ label = "SPI_MISO_GPG5";
+ };
+ spi_cs_gpg7 {
+ gpios = <&gpiog 7 GPIO_OUT_LOW>;
+ enum-name = "GPIO_SPI_CS_GPG7";
+ label = "SPI_CS_GPG7";
+ };
+ };
+
+ unused-pins {
+ compatible = "unused-gpios";
+
+ unused-gpios =
+ /* uart1_rx */
+ <&gpiob 0 GPIO_INPUT>,
+ /* nc_gpg3 */
+ <&gpiog 3 GPIO_OUT_LOW>,
+ /* nc_gpi7 */
+ <&gpioi 7 GPIO_OUT_LOW>,
+ /* nc_gpm2 */
+ <&gpiom 2 (GPIO_INPUT | GPIO_PULL_DOWN)>,
+ /* nc_gpm3 */
+ <&gpiom 3 (GPIO_INPUT | GPIO_PULL_DOWN)>,
+ /* nc_gpm6 */
+ <&gpiom 6 (GPIO_INPUT | GPIO_PULL_DOWN)>;
};
};