From 0b7e1c5c700f7fc87a2950298ba37ca78592f692 Mon Sep 17 00:00:00 2001 From: Raul Munoz Date: Mon, 29 May 2017 16:16:05 -0300 Subject: examples: webinar: Config files to be used in the webinar According to the configuration I will use in the webinar, I add this config files to better exaplain gpio usage Signed-off-by: Raul Munoz Signed-off-by: Stefan Agner --- examples/imx7_colibri_m4/board.h | 35 ++++++++++++++ examples/imx7_colibri_m4/gpio_pins.c | 90 ++++++++++++++++++++++++++++++++++++ examples/imx7_colibri_m4/gpio_pins.h | 12 +++++ 3 files changed, 137 insertions(+) diff --git a/examples/imx7_colibri_m4/board.h b/examples/imx7_colibri_m4/board.h index d2c7e25..814b443 100644 --- a/examples/imx7_colibri_m4/board.h +++ b/examples/imx7_colibri_m4/board.h @@ -89,6 +89,41 @@ #define BOARD_GPIO_KEY_IRQ_NUM GPIO2_INT31_16_IRQn #define BOARD_GPIO_KEY_HANDLER GPIO2_INT31_16_Handler + +/* Switch 1 + * SODIMM BALL NAME GPIO ALT + * 133 EPDC_GDRL GPIO02_26 5 + */ +#define BOARD_GPIO_SWITCH1_RDC_PDAP rdcPdapGpio2 +#define BOARD_GPIO_SWITCH1_CONFIG (&gpioSwitch1) +//#define BOARD_GPIO_KEY_IRQ_NUM GPIO2_INT31_16_IRQn +//#define BOARD_GPIO_KEY_HANDLER GPIO2_INT31_16_Handler +//#define BOARD_GPIO_KEY_CCM_CCGR ccmCcgrGateGpio2 + + +/* LED 1 + * SODIMM BALL NAME GPIO ALT + * 127 EPDC_SDCE2 GPIO02_22 5 + */ +#define BOARD_GPIO_LED1_RDC_PDAP rdcPdapGpio2 +#define BOARD_GPIO_LED1_CONFIG (&gpioLed1) + + /* Switch 2 + * SODIMM BALL NAME GPIO ALT + * 107 EPDC_D15 GPIO02_15 5 + */ +#define BOARD_GPIO_SWITCH2_RDC_PDAP rdcPdapGpio2 +#define BOARD_GPIO_SWITCH2_CONFIG (&gpioSwitch2) +//#define BOARD_GPIO_KEY_IRQ_NUM GPIO2_INT31_16_IRQn +//#define BOARD_GPIO_KEY_HANDLER GPIO2_INT31_16_Handler + + /* LED 2 + * SODIMM BALL NAME GPIO ALT + * 105 EPDC_D10 GPIO02_10 5 + */ +#define BOARD_GPIO_LED2_RDC_PDAP rdcPdapGpio2 +#define BOARD_GPIO_LED2_CONFIG (&gpioLed2) + /* Colibri SPI is ECSPI3 */ #define BOARD_ECSPI_RDC_PDAP rdcPdapEcspi3 #define BOARD_ECSPI_CCM_ROOT ccmRootEcspi3 diff --git a/examples/imx7_colibri_m4/gpio_pins.c b/examples/imx7_colibri_m4/gpio_pins.c index f500963..bd18d38 100644 --- a/examples/imx7_colibri_m4/gpio_pins.c +++ b/examples/imx7_colibri_m4/gpio_pins.c @@ -30,6 +30,9 @@ #include #include "gpio_pins.h" +#include "board.h" +#include "gpio_ctrl.h" +#include "gpio_imx.h" gpio_config_t gpioLed = { "EXT_IO0 LED", /* name */ @@ -65,6 +68,93 @@ gpio_config_t gpioKeyFunc2 = { 22 /* pin */ }; + +/* Switch 1 + * SODIMM BALL NAME GPIO ALT + * 133 EPDC_GDRL GPIO02_26 5 + */ +gpio_config_t gpioSwitch1 = { + "SODIMM 133", /* name */ + &IOMUXC_SW_MUX_CTL_PAD_EPDC_GDRL, /* muxReg */ + 5, /* muxConfig */ + &IOMUXC_SW_PAD_CTL_PAD_EPDC_GDRL, /* padReg */ + IOMUXC_SW_PAD_CTL_PAD_EPDC_GDRL_PS(2) | /* padConfig */ + IOMUXC_SW_PAD_CTL_PAD_EPDC_GDRL_PE_MASK | + IOMUXC_SW_PAD_CTL_PAD_EPDC_GDRL_HYS_MASK, + GPIO2, /* base */ + 26 /* pin */ +}; +gpio_init_config_t Switch1 = { + .pin = 26, //pin number + .direction = gpioDigitalInput, + .interruptMode = gpioNoIntmode +}; + +/* LED 1 + * SODIMM BALL NAME GPIO ALT + * 127 EPDC_SDCE2 GPIO02_22 5 + */ +gpio_config_t gpioLed1 = { + "SODIMM 127", /* name */ + &IOMUXC_SW_MUX_CTL_PAD_EPDC_SDCE2, /* muxReg */ + 5, /* muxConfig */ + &IOMUXC_SW_PAD_CTL_PAD_EPDC_SDCE2, /* padReg */ + IOMUXC_SW_PAD_CTL_PAD_EPDC_SDCE2_PS(2) | /* padConfig */ + IOMUXC_SW_PAD_CTL_PAD_EPDC_SDCE2_PE_MASK | + IOMUXC_SW_PAD_CTL_PAD_EPDC_SDCE2_HYS_MASK, + GPIO2, /* base */ + 22 /* pin */ +}; +gpio_init_config_t Led1 = { + .pin = 22, //pin number + .direction = gpioDigitalOutput, + .interruptMode = gpioNoIntmode +}; + + +/* Switch 2 + * SODIMM BALL NAME GPIO ALT + * 107 EPDC_DATA15 GPIO02_15 5 + */ +gpio_config_t gpioSwitch2 = { + "SODIMM 107", /* name */ + &IOMUXC_SW_MUX_CTL_PAD_EPDC_DATA15, /* muxReg */ + 5, /* muxConfig */ + &IOMUXC_SW_PAD_CTL_PAD_EPDC_DATA15, /* padReg */ + IOMUXC_SW_PAD_CTL_PAD_EPDC_DATA15_PS(2) | /* padConfig */ + IOMUXC_SW_PAD_CTL_PAD_EPDC_DATA15_PE_MASK | + IOMUXC_SW_PAD_CTL_PAD_EPDC_DATA15_HYS_MASK, + GPIO2, /* base */ + 15 /* pin */ +}; +gpio_init_config_t Switch2 = { + .pin = 15, //pin number + .direction = gpioDigitalInput, + .interruptMode = gpioNoIntmode +}; + +/* LED 2 + * SODIMM BALL NAME GPIO ALT + * 105 EPDC_DATA10 GPIO02_10 5 + */ +gpio_config_t gpioLed2 = { + "SODIMM 105", /* name */ + &IOMUXC_SW_MUX_CTL_PAD_EPDC_DATA10, /* muxReg */ + 5, /* muxConfig */ + &IOMUXC_SW_PAD_CTL_PAD_EPDC_DATA10, /* padReg */ + IOMUXC_SW_PAD_CTL_PAD_EPDC_DATA10_PS(2) | /* padConfig */ + IOMUXC_SW_PAD_CTL_PAD_EPDC_DATA10_PE_MASK | + IOMUXC_SW_PAD_CTL_PAD_EPDC_DATA10_HYS_MASK, + GPIO2, /* base */ + 10 /* pin */ +}; + +gpio_init_config_t Led2 = { + .pin = 10, //pin number + .direction = gpioDigitalOutput, + .interruptMode = gpioNoIntmode +}; + void configure_gpio_pin(gpio_config_t *config) { assert(config); diff --git a/examples/imx7_colibri_m4/gpio_pins.h b/examples/imx7_colibri_m4/gpio_pins.h index 0994193..93cd07c 100644 --- a/examples/imx7_colibri_m4/gpio_pins.h +++ b/examples/imx7_colibri_m4/gpio_pins.h @@ -32,6 +32,8 @@ #define __GPIO_PINS_H__ #include "device_imx.h" +#include "gpio_imx.h" + /*! @brief i.MX GPIO initialize structure. */ typedef struct _gpio_config @@ -54,6 +56,16 @@ extern gpio_config_t gpioLed; extern gpio_config_t gpioKeyFunc1; extern gpio_config_t gpioKeyFunc2; +extern gpio_config_t gpioSwitch1; +extern gpio_config_t gpioLed1; +extern gpio_config_t gpioSwitch2; +extern gpio_config_t gpioLed2; + +extern gpio_init_config_t Switch1; +extern gpio_init_config_t Led1; +extern gpio_init_config_t Switch2; +extern gpio_init_config_t Led2; + /*! @brief Configure specific GPIO pin */ void configure_gpio_pin(gpio_config_t *config); -- cgit v1.2.3