IRQ arguments: Fix errors discovered in build testing

This commit is contained in:
Gregory Nutt 2017-02-27 19:28:24 -06:00
parent f700e7b241
commit 704df7bd39
12 changed files with 19 additions and 20 deletions

View File

@ -847,7 +847,7 @@ static inline void rtc_enable_alarm(void)
* 3. Configure the RTC to generate RTC alarms (Alarm A or Alarm B).
*/
stm32_exti_alarm(true, false, true, stm32_rtc_alarm_handler);
stm32_exti_alarm(true, false, true, stm32_rtc_alarm_handler, NULL);
g_alarm_enabled = true;
}
}

View File

@ -124,7 +124,7 @@ xcpt_t stm32l4_exti_alarm(bool risingedge, bool fallingedge, bool event,
oldhandler = g_alarm_callback;
g_alarm_callback = func;
g__callback_arg = arg;
g_callback_arg = arg;
/* Install external interrupt handlers (if not already attached) */

View File

@ -68,10 +68,6 @@
static xcpt_t g_pvd_callback;
static void *g_callback_arg;
/****************************************************************************
* Public Data
****************************************************************************/
/****************************************************************************
* Private Functions
****************************************************************************/

View File

@ -57,6 +57,7 @@
* - rising/falling edge: enables interrupt on rising/falling edge
* - event: generate event when set
* - func: when non-NULL, generate interrupt
* - arg: Argument passed to the interrupt callback
*
* Returns:
* The previous value of the interrupt handler function pointer. This
@ -66,6 +67,6 @@
****************************************************************************/
xcpt_t stm32l4_exti_pvd(bool risingedge, bool fallingedge, bool event,
xcpt_t func);
xcpt_t func, void *arg);
#endif /* STM32L4_EXTI_PWR_H_ */

View File

@ -165,7 +165,8 @@ static void up_enable(FAR const struct enc_lower_s *lower)
static void up_disable(FAR const struct enc_lower_s *lower)
{
(void)stm32_gpiosetevent(GPIO_ENC28J60_INTR, false, true, true, NULL);
(void)stm32_gpiosetevent(GPIO_ENC28J60_INTR, false, true, true,
NULL, NULL);
}
/****************************************************************************

View File

@ -108,7 +108,7 @@ static void hymini_ts_irq_enable(FAR struct ads7843e_config_s *state,
{
iinfo("%d\n", enable);
stm32_gpiosetevent(GPIO_TS_IRQ, true, true, true, enable? tc_isr:NULL);
stm32_gpiosetevent(GPIO_TS_IRQ, true, true, true, enable ? tc_isr : NULL, NULL);
}
/* Acknowledge/clear any pending GPIO interrupt */

View File

@ -96,7 +96,7 @@ static int button_handler(int irq, FAR void *context);
****************************************************************************/
#ifdef CONFIG_ARCH_IRQBUTTONS
static int button_handler(int irq, FAR void *context)
static int button_handler(int irq, FAR void *context, FAR void *arg)
{
/* At this point the MCU should have already awakened. The state
* change will be handled in the IDLE loop when the system is re-awakened
@ -130,7 +130,7 @@ void stm32_pm_buttons(void)
board_button_initialize();
#ifdef CONFIG_ARCH_IRQBUTTONS
xcpt_t oldhandler = board_button_irq(0, button_handler);
xcpt_t oldhandler = board_button_irq(0, button_handler, NULL);
if (oldhandler != NULL)
{

View File

@ -1,7 +1,7 @@
/****************************************************************************
* configs/stm32l476-mdk/src/stm32_buttons.c
*
* Copyright (C) 2016 Gregory Nutt. All rights reserved.
* Copyright (C) 2016-2017 Gregory Nutt. All rights reserved.
* Author: dev@ziggurat29.com
*
* Redistribution and use in source and binary forms, with or without
@ -157,7 +157,7 @@ xcpt_t board_button_irq(int id, xcpt_t irqhandler, FAR void *arg)
if (id >= MIN_IRQBUTTON && id <= MAX_IRQBUTTON)
{
oldhandler = stm32l4_gpiosetevent(g_buttons[id], true, true, true,
irqhandler);
irqhandler, arg);
}
return oldhandler;

View File

@ -1,7 +1,7 @@
/****************************************************************************
* configs/stm32l476vg-disco/src/stm32_buttons.c
*
* Copyright (C) 2016 Gregory Nutt. All rights reserved.
* Copyright (C) 2016-2017 Gregory Nutt. All rights reserved.
* Author: dev@ziggurat29.com
*
* Redistribution and use in source and binary forms, with or without
@ -333,7 +333,8 @@ xcpt_t board_button_irq(int id, xcpt_t irqhandler, FAR void *arg)
if (id >= MIN_IRQBUTTON && id <= MAX_IRQBUTTON)
{
oldhandler = stm32l4_gpiosetevent(g_buttons[id], true, true, true, irqhandler);
oldhandler = stm32l4_gpiosetevent(g_buttons[id], true, true, true,
irqhandler, arg);
}
return oldhandler;

View File

@ -311,7 +311,7 @@ void stm32l4_usbhost_vbusdrive(int iface, bool enable)
#ifdef CONFIG_USBHOST
xcpt_t stm32l4_setup_overcurrent(xcpt_t handler)
{
return stm32l4_gpiosetevent(GPIO_OTGFS_OVER, true, true, true, handler);
return stm32l4_gpiosetevent(GPIO_OTGFS_OVER, true, true, true, handler, NULL);
}
#endif

View File

@ -109,7 +109,7 @@ static int ads7843e_sample(FAR struct ads7843e_dev_s *priv,
static int ads7843e_waitsample(FAR struct ads7843e_dev_s *priv,
FAR struct ads7843e_sample_s *sample);
static void ads7843e_worker(FAR void *arg);
static int ads7843e_interrupt(int irq, FAR void *context);
static int ads7843e_interrupt(int irq, FAR void *context, FAR void *arg);
/* Character driver methods */
@ -703,7 +703,7 @@ ignored:
* Name: ads7843e_interrupt
****************************************************************************/
static int ads7843e_interrupt(int irq, FAR void *context)
static int ads7843e_interrupt(int irq, FAR void *context, FAR void *arg)
{
FAR struct ads7843e_dev_s *priv;
FAR struct ads7843e_config_s *config;

View File

@ -327,7 +327,7 @@ static void enc_rxerif(FAR struct enc_driver_s *priv);
static void enc_rxdispatch(FAR struct enc_driver_s *priv);
static void enc_pktif(FAR struct enc_driver_s *priv);
static void enc_irqworker(FAR void *arg);
static int enc_interrupt(int irq, FAR void *context);
static int enc_interrupt(int irq, FAR void *context, FAR void *arg);
/* Watchdog timer expirations */
@ -1853,7 +1853,7 @@ static void enc_irqworker(FAR void *arg)
*
****************************************************************************/
static int enc_interrupt(int irq, FAR void *context)
static int enc_interrupt(int irq, FAR void *context, FAR void *arg)
{
register FAR struct enc_driver_s *priv = &g_enc28j60[0];