Skip to content
Browse files

drivers: gpio: Introduce microchip gpio driver

Adds a new xec gpio driver that can be used with the
XEC MCUs. This driver modifies the PCR1 register in order
to configure gpio settings. Interrupts are triggered by the EC
interrupt aggregator block.

Signed-off-by: Francisco Munoz <>
  • Loading branch information...
franciscomunoz authored and andrewboie committed Apr 10, 2019
1 parent 2452b84 commit 0cb238127df4939041b1490de2d06c5df9180357
Showing with 544 additions and 0 deletions.
  1. +1 −0 drivers/gpio/CMakeLists.txt
  2. +2 −0 drivers/gpio/Kconfig
  3. +48 −0 drivers/gpio/Kconfig.xec
  4. +493 −0 drivers/gpio/gpio_mchp_xec.c
@@ -17,6 +17,7 @@ zephyr_library_sources_ifdef(CONFIG_GPIO_MCUX gpio_mcux.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_MCUX_IGPIO gpio_mcux_igpio.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_MCUX_LPC gpio_mcux_lpc.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_MMIO32 gpio_mmio32.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_XEC gpio_mchp_xec.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_NRFX gpio_nrfx.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_PCAL9535A gpio_pcal9535a.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_QMSI gpio_qmsi.c)
@@ -70,6 +70,8 @@ source "drivers/gpio/Kconfig.imx"

source "drivers/gpio/"

source "drivers/gpio/Kconfig.xec"

source "drivers/gpio/Kconfig.stellaris"

source "drivers/gpio/Kconfig.rv32m1"
@@ -0,0 +1,48 @@
# Kconfig.xec - Microchip XEC GPIO configuration options
# Copyright (c) 2019 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

menuconfig GPIO_XEC
bool "XEC Microchip GPIO driver"
depends on SOC_FAMILY_MEC
Enable the Microchip XEC gpio driver.


config GPIO_XEC_GPIO000_036
bool "GPIO 000-036"
Enable GPIO 000-036 or what would be equivalent to PortA.

config GPIO_XEC_GPIO040_076
bool "GPIO 040-036"
Enable GPIO 040-076 or what would be equivalent to Port B

config GPIO_XEC_GPIO100_136
bool "GPIO 100-136"
Enable GPIO 100-136 or what would be equivalent to Port C

config GPIO_XEC_GPIO140_176
bool "GPIO 140-176"
Enable GPIO 140-176 or what would be equivalent to Port C

config GPIO_XEC_GPIO200_236
bool "GPIO 200-236"
Enable GPIO 200-236 or what would be equivalent to Port D

config GPIO_XEC_GPIO240_276
bool "GPIO 240-276"
Enable GPIO 240-276 or what would be equivalent to Port E

endif # GPIO_XEC

0 comments on commit 0cb2381

Please sign in to comment.
You can’t perform that action at this time.