void SetLNBShortDetect(UINT32 flag) { #if(SYS_LNB_SHORT_DET == SYS_FUNC_ON) static UINT8 set = 0; if(!set && flag) { osal_interrupt_register_lsr(7, lnb_power_short_detect, 0); set = 1; } else if(set && !flag) { osal_interrupt_unregister_lsr(7, lnb_power_short_detect); lnb_power_short = SIGNAL_STATUS_LNBNORMAL; led_display_flag = 0; set = 0; } #endif }
/********************************************************** * Name : hcdi_s3602_open * Description : usb host controller s3602 device initialization * Parameter : hc_dev : usb host controller device pointer * Return : RET_SUCCESS: success * RET_FAILURE: error ***********************************************************/ RET_CODE hcdi_s3602_open_ex(struct usb_hc_device* hc_dev) { struct hc_s3602_private* p_priv = hc_dev->priv_ctrl; p_priv->hc_dev = hc_dev; if ((sys_ic_get_chip_id() == ALI_M3329E)&&(sys_ic_get_rev_id() >=IC_REV_5)) p_priv->int_id = USB_HC_M3329E5_INTERRUPT_ID; else if (sys_ic_get_chip_id() == ALI_S3602) p_priv->int_id = USB_HC_S3602_INTERRUPT_ID; else return !RET_SUCCESS; // usb invalid chip id hcd_s3602_sw_init_ex(p_priv); hcd_s3602_hw_init_ex(p_priv); osal_interrupt_register_lsr(p_priv->int_id, (ISR_PROC) hcd_s3602_isr_ex, (UINT32) hc_dev); return RET_SUCCESS; }
static INT32 pan_direct_gpio_open(struct pan_device *dev) { struct pan_hw_info *tp = (struct pan_hw_info *)dev->priv; #if (SYS_IRP_MOUDLE != SYS_DEFINE_NULL) if (tp->type_irp != 0) irc_m6303irc_init(tp); #endif #ifdef SUPPORT_FIRMWARE_CONFIG pan_set_gpio(POS_GPIO_STANDBY_KEY, !POS_GPIO_STANDBY_KEY_POLAR); pan_set_gpio(POS_GPIO_CHANNEL_UP_KEY, !POS_GPIO_CHANNEL_UP_KEY_POLAR); pan_set_gpio(POS_GPIO_CHANNEL_DOWN_KEY, !POS_GPIO_CHANNEL_DOWN_KEY_POLAR); pan_get_gpio(POS_GPIO_STANDBY_KEY); pan_get_gpio(POS_GPIO_CHANNEL_UP_KEY); pan_get_gpio(POS_GPIO_CHANNEL_DOWN_KEY); #endif /* Register an 1mS cycle interrupt ISR */ osal_interrupt_register_lsr(7, pan_direct_gpio_interrupt, (UINT32)dev); #if 0 HAL_GPIO_BIT_DIR_SET(POS_GPIO_STANDBY_KEY, HAL_GPIO_I_DIR); HAL_GPIO_BIT_DIR_SET(POS_GPIO_CHANNEL_UP_KEY, HAL_GPIO_I_DIR); HAL_GPIO_BIT_DIR_SET(POS_GPIO_CHANNEL_DOWN_KEY, HAL_GPIO_I_DIR); HAL_GPIO_BIT_DIR_SET(POS_GPIO_POWER_LED, HAL_GPIO_O_DIR); HAL_GPIO_BIT_DIR_SET(POS_GPIO_STANDBY_LED, HAL_GPIO_O_DIR); #endif pan_set_gpio(POS_GPIO_POWER_LED, POS_GPIO_POWER_LED_POLAR); //turn on power led pan_set_gpio(POS_GPIO_STANDBY_LED, !POS_GPIO_STANDBY_LED_POLAR); //turn off standby led // soc_printf("sta:%08x\n", *(UINT32*)0xb8000058); return SUCCESS; }
void Set12VShortDetect(UINT32 flag) { #if(defined(SYS_12V_SWITCH) && defined(SYS_12V_SHORT_DET)) #if(SYS_12V_SWITCH==SYS_FUNC_ON && SYS_12V_SHORT_DET == SYS_FUNC_ON) UIChChgSet12VSetCB(v12_set_callback); static UINT8 set = 0; if(!set && flag) { osal_interrupt_register_lsr(7, v12_power_short_detect, 0); set = 1; } else if(set && !flag) { osal_interrupt_unregister_lsr(7, v12_power_short_detect); v12_power_short = SIGNAL_STATUS_LNBNORMAL; led_display_flag = 0; set = 0; } #endif #endif }