コード例 #1
0
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	
}
コード例 #2
0
ファイル: hcdi_s3602_cmd.c プロジェクト: alkap007/ali3606
/**********************************************************
 * 	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;
}
コード例 #3
0
ファイル: pan_direct_gpio.c プロジェクト: alkap007/ali3606
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;
}
コード例 #4
0
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
}