/****************************************************************************** * function: tuner_drv_set_interrupt * brief : interruption registration control of a driver * date : 2011.08.26 * author : M.Takahashi(*) * * return : 0 normal exit * : -1 error exit * input : pdev * output : none ******************************************************************************/ int tuner_drv_set_interrupt( void ) { #ifndef TUNER_CONFIG_IRQ_PC_LINUX int ret; if(system_rev == 0x01) { /* HW-REV-0.3(0x01) */ ret = request_irq( GPIO_TMM_INT_REV03, tuner_interrupt, IRQF_DISABLED | IRQF_TRIGGER_RISING, "mm_tuner", NULL ); } else { /* HW-REV-0.0(0x0b), HW-REV-0.1(0x09) */ ret = request_irq( GPIO_TMM_INT_REV00, tuner_interrupt, IRQF_DISABLED | IRQF_TRIGGER_RISING, "mm_tuner", NULL ); } if( ret != 0 ) { return -1; } #else /* TUNER_CONFIG_IRQ_PC_LINUX */ i2c_set_interrupt( tuner_interrupt ); #endif /* TUNER_CONFIG_IRQ_PC_LINUX */ return 0; }
int tuner_drv_set_interrupt( void ) { #ifndef TUNER_CONFIG_IRQ_PC_LINUX int ret; if ( irq_interrupt_register_flg == true ) { pr_err("irq interrupt is already set.\n"); return -EBUSY; } ret = request_irq( gpio_to_irq(fullseg_gpios.interrupt), tuner_interrupt, IRQF_DISABLED, "mm_tuner", NULL ); if( ret != 0 ) { printk(KERN_INFO "%s, request irq fail", __func__); return -1; }else printk(KERN_INFO "%s, request irq OK", __func__); #else i2c_set_interrupt( tuner_interrupt ); #endif irq_interrupt_register_flg = true; return 0; }
/****************************************************************************** * function: tuner_drv_enable_interrupt * brief : interruption registration enable control of a driver * date : 2011.09.18 * author : M.Takahashi(*)(*) * * return : none * input : none * output : none ******************************************************************************/ void tuner_drv_enable_interrupt( void ) { #ifndef TUNER_CONFIG_IRQ_PC_LINUX enable_irq( isdbtmm_pdata->gpio_int); #else /* TUNER_CONFIG_IRQ_PC_LINUX */ i2c_set_interrupt( tuner_interrupt ); #endif /* TUNER_CONFIG_IRQ_PC_LINUX */ return; }
/****************************************************************************** * function: tuner_drv_enable_interrupt * brief : interruption registration enable control of a driver * date : 2011.09.18 * author : M.Takahashi(*)(*) * * return : none * input : none * output : none ******************************************************************************/ void tuner_drv_enable_interrupt( void ) { #ifndef TUNER_CONFIG_IRQ_PC_LINUX enable_irq( GPIO_TMM_INT); #else /* TUNER_CONFIG_IRQ_PC_LINUX */ i2c_set_interrupt( tuner_interrupt ); #endif /* TUNER_CONFIG_IRQ_PC_LINUX */ return; }
void tuner_drv_enable_interrupt( void ) { #ifndef TUNER_CONFIG_IRQ_PC_LINUX enable_irq( TUNER_INT, NULL ); #else i2c_set_interrupt( tuner_interrupt ); #endif }
/****************************************************************************** * function: tuner_drv_enable_interrupt * brief : interruption registration enable control of a driver * date : 2011.09.18 * author : M.Takahashi(*)(*) * * return : none * input : none * output : none ******************************************************************************/ void tuner_drv_enable_interrupt( void ) { #ifndef TUNER_CONFIG_IRQ_PC_LINUX if(system_rev == 0x01) { /* HW-REV-0.3(0x01) */ enable_irq( GPIO_TMM_INT_REV03) } else { /* HW-REV-0.0(0x0b), HW-REV-0.1(0x09) */ enable_irq( GPIO_TMM_INT_REV00) } #else /* TUNER_CONFIG_IRQ_PC_LINUX */ i2c_set_interrupt( tuner_interrupt ); #endif /* TUNER_CONFIG_IRQ_PC_LINUX */ }
/****************************************************************************** * function: tuner_drv_set_interrupt * brief : interruption registration control of a driver * date : 2011.08.26 * author : M.Takahashi(*) * * return : 0 normal exit * : -1 error exit * input : pdev * output : none ******************************************************************************/ int tuner_drv_set_interrupt( void ) { #ifndef TUNER_CONFIG_IRQ_PC_LINUX int ret; ret = request_irq( isdbtmm_pdata->gpio_int, tuner_interrupt, IRQF_DISABLED | IRQF_TRIGGER_RISING, "mm_tuner", NULL ); if( ret != 0 ) { return -1; } #else /* TUNER_CONFIG_IRQ_PC_LINUX */ i2c_set_interrupt( tuner_interrupt ); #endif /* TUNER_CONFIG_IRQ_PC_LINUX */ return 0; }