@@ -114,6 +114,7 @@ static void gpiote_pin_uninit(uint8_t pin)
114114static void gpio_apply_config (uint8_t pin )
115115{
116116 if (m_gpio_cfg [pin ].used_as_gpio || m_gpio_cfg [pin ].used_as_irq ) {
117+ nrfx_err_t err_code = NRFX_SUCCESS ;
117118 if ((m_gpio_cfg [pin ].direction == PIN_INPUT )
118119 || (m_gpio_cfg [pin ].used_as_irq )) {
119120 //Configure as input.
@@ -135,7 +136,7 @@ static void gpio_apply_config(uint8_t pin)
135136 break ;
136137 }
137138 if (m_gpio_cfg [pin ].used_as_irq ) {
138- nrfx_gpiote_in_init (pin , & cfg , gpiote_irq_handler );
139+ err_code = nrfx_gpiote_in_init (pin , & cfg , gpiote_irq_handler );
139140 if ((m_gpio_irq_enabled & ((gpio_mask_t )1 << pin ))
140141 && (m_gpio_cfg [pin ].irq_rise || m_gpio_cfg [pin ].irq_fall )) {
141142 nrfx_gpiote_in_event_enable (pin , true);
@@ -146,8 +147,9 @@ static void gpio_apply_config(uint8_t pin)
146147 } else {
147148 // Configure as output.
148149 nrfx_gpiote_out_config_t cfg = NRFX_GPIOTE_CONFIG_OUT_SIMPLE (nrf_gpio_pin_out_read (pin ));
149- nrfx_gpiote_out_init (pin , & cfg );
150+ err_code = nrfx_gpiote_out_init (pin , & cfg );
150151 }
152+ MBED_ASSERT (err_code != NRFX_ERROR_NO_MEM );
151153 m_gpio_initialized |= ((gpio_mask_t )1UL << pin );
152154 } else {
153155 m_gpio_initialized &= ~((gpio_mask_t )1UL << pin );
0 commit comments