Exemple #1
0
static irqreturn_t k2_handler(int irq, void * dev_id)
{
	printk("K2 pressed! \n");
	key[1] = '1';
	key_no = 1;
	
	//btn_pressed = 1;
	//wake_up_interruptible(&wq);

	init_timer_api(40);

	//printk("wake up ok!\n");

	return IRQ_HANDLED;
}
Exemple #2
0
void my_timer_callback( unsigned long data )
{
	int tmp, down;

  	printk( "my_timer_callback called (%ld).\n", jiffies );
	tmp = gpio_get_value(S5PV210_GPH2(key_no));
	down = !tmp;
	
	//printk("key:%x-%x<----\n",key[key_no],down+0x30);
	if(key[key_no]!=(down+0x30)) 
	{
		btn_pressed = 1;
		wake_up_interruptible(&wq);
	}
	else {init_timer_api(40);} //////////////
}
Exemple #3
0
static irqreturn_t k1_handler(int irq, void * dev_id)
{


	printk("K1 pressed! \n");
	// disable hard interrupts (remember them in flag 'flags')
   	//local_irq_save(flags);
	// local_irq_disable();	
	//disable_irq(160);

	//key_no = 0;
	btn_pressed = 1;
	key[0] = '1';
	
	//wake_up_interruptible(&wq);
	init_timer_api(40);

	//printk("wake up ok!\n");

	return IRQ_HANDLED;
}