1
0
Fork 0
forked from len0rd/rockbox

imx233: enhance pinctrl irq with user pointer

Change-Id: I191704299487598a853af4df5aebbbf8a7134a34
This commit is contained in:
Amaury Pouly 2013-06-16 19:32:21 +02:00
parent 918a06a12a
commit 8f351d6e21
6 changed files with 36 additions and 39 deletions

View file

@ -113,10 +113,11 @@ static struct semaphore rds_sema;
static uint32_t rds_stack[DEFAULT_STACK_SIZE / sizeof(uint32_t)];
/* RDS GPIO interrupt handler */
static void stc_rds_callback(int bank, int pin)
static void stc_rds_callback(int bank, int pin, intptr_t user)
{
(void) bank;
(void) pin;
(void) user;
semaphore_release(&rds_sema);
}
@ -132,7 +133,7 @@ static void NORETURN_ATTR rds_thread(void)
if(si4700_rds_read_raw(rds_data) && rds_process(rds_data))
si4700_rds_set_event();
/* renable callback */
imx233_pinctrl_setup_irq(2, 27, true, true, false, &stc_rds_callback);
imx233_pinctrl_setup_irq(2, 27, true, true, false, &stc_rds_callback, 0);
}
}
@ -145,11 +146,11 @@ void si4700_rds_powerup(bool on)
imx233_pinctrl_set_function(2, 27, PINCTRL_FUNCTION_GPIO);
imx233_pinctrl_enable_gpio(2, 27, false);
/* pin is set to 0 when an RDS packet has arrived */
imx233_pinctrl_setup_irq(2, 27, true, true, false, &stc_rds_callback);
imx233_pinctrl_setup_irq(2, 27, true, true, false, &stc_rds_callback, 0);
}
else
{
imx233_pinctrl_setup_irq(2, 27, false, false, false, NULL);
imx233_pinctrl_setup_irq(2, 27, false, false, false, NULL, 0);
imx233_pinctrl_release(2, 27, "tuner stc/rds");
}
}