Пример #1
0
void test_step_get_desc(UINT32 base_addr)
{
	UINT8 cmd_get_dev_desc[]={0x80,0x06,0x00,0x01,0x00,0x00,0x12,0x00 };

	unsigned long i;
	volatile unsigned long j;
			
	//delay 15s
	USB_LOGO_PRINTF("delay 15s!\n");
	osal_task_sleep(5000);
	osal_task_sleep(5000);
	osal_task_sleep(5000);

	if(ep0_setup(base_addr,cmd_get_dev_desc,8) != RET_SUCCESS)
		goto err;
	USB_LOGO_PRINTF("control SETUP phase OK!\n");
			
	USB_LOGO_PRINTF("delay 5s!\n");
	osal_task_sleep(5000);
	if(ep0_in_data(base_addr,((UINT8*)&test_device_descriptor),18) != RET_SUCCESS)
		goto err;		
	USB_LOGO_PRINTF("control DATA phase OK!\n");
	usb_test_show_hex("dev_desc:",((UINT8*)&test_device_descriptor),18);
	
	if(ep0_status(base_addr, B_TOKEN_OUT) != RET_SUCCESS)
		goto err;
	USB_LOGO_PRINTF("control STATUS phase OK!\n");

err:	
	return;
}
Пример #2
0
static BOOL send_upgrade_param(UINT32 offset)
{
    UINT32 data_check, data_send;
    int retry_times = 3;

    data_send = *((UINT32 *)&m_UpgradeParam + offset/sizeof(UINT32));
    while(retry_times--)
    {
        erom_wm(UPGRADE_PARAM_ADDR+offset, &data_send, sizeof(UINT32), 0);
        P2PUPG_DBG("data_send=0x%x\n",data_send);
        osal_task_sleep(10);
        if(UPGRADE_SINGLE == upgrade_mode)
        {
            data_check = ~data_send;
            erom_rm(UPGRADE_PARAM_ADDR+offset, &data_check, sizeof(UINT32), 0);
            P2PUPG_DBG("data_check=0x%x\n",data_check);
            if(data_check == data_send)
                return TRUE;
            osal_task_sleep(10);
        }
    }

    if(UPGRADE_SINGLE == upgrade_mode)
        return FALSE;
    return TRUE;
}
Пример #3
0
static PRESULT win_an_set_unkown_act_proc(VACTION act)   //guop edit 20101014
{

    switch(act)
	{

           case VACT_SINGLE_SEARCH:
		   	single_multi_srch_flag = 0;
		  	//if(check_node_modified(TYPE_SAT_NODE) )
		   {
			UINT8	back_saved;
			win_compopup_init(WIN_POPUP_TYPE_SMSG);
			win_compopup_set_msg(NULL, NULL, RS_MSG_SAVING_DATA);
			win_compopup_open_ext(&back_saved);
			update_data(TYPE_SAT_NODE);
			osal_task_sleep(200);
			win_compopup_smsg_restoreback();
		   }
			if(OSD_ObjOpen((POBJECT_HEAD)&g_win_sat_srchset, 0xFFFFFFFF) != PROC_LEAVE)
				menu_stack_push((POBJECT_HEAD)&g_win_sat_srchset);
			wincom_close_help();
	             break;
	      case VACT_MULTI_SEARCH:
		   	single_multi_srch_flag = 1;
		  //	if(check_node_modified(TYPE_SAT_NODE) )
		   {
			UINT8	back_saved;
			win_compopup_init(WIN_POPUP_TYPE_SMSG);
			win_compopup_set_msg(NULL, NULL, RS_MSG_SAVING_DATA);
			win_compopup_open_ext(&back_saved);
			update_data(TYPE_SAT_NODE);
			osal_task_sleep(200);
			win_compopup_smsg_restoreback();
		   }
			if(OSD_ObjOpen((POBJECT_HEAD)&g_win_sat_srchset, 0xFFFFFFFF) != PROC_LEAVE)
				menu_stack_push((POBJECT_HEAD)&g_win_sat_srchset);
			wincom_close_help();
	             break;
				 
	      case VACT_TP_SEARCH:
		 // 	if(check_node_modified(TYPE_SAT_NODE) )
		   {
			UINT8	back_saved;
			win_compopup_init(WIN_POPUP_TYPE_SMSG);
			win_compopup_set_msg(NULL, NULL, RS_MSG_SAVING_DATA);
			win_compopup_open_ext(&back_saved);
			update_data(TYPE_SAT_NODE);
			osal_task_sleep(200);
			win_compopup_smsg_restoreback();
		   }

			if(OSD_ObjOpen((POBJECT_HEAD)&g_win_tplist, 0xFFFFFFFF) != PROC_LEAVE)
				menu_stack_push((POBJECT_HEAD)&g_win_tplist);
	             break;
		

    }
}
Пример #4
0
unsigned char restart_netupdate_process()
{
    UINT8 test;
    UINT8 ipadd[200];
    osal_task_sleep(41000);
    libc_printf("RUN in updata process!!!\n");
    //check first time  
    if(check_updata_feasibility())
    {
//        get_service_ipadd(ipadd);
//        if(1 == libnet_ping_servicer(ipadd)) //zhouxp 2012-02-01
        {
            if(1 == check_version())
            {
            #ifdef AUTO_NETUPDATE
                ap_send_msg(CTRL_MSG_SUBTYPE_STATUS_NET_UPDATA_NEED_MSG,1,TRUE);
            #endif
                return 1;
            }
            else
            {
                return 0;
            }
        }   
    }
    //check again after one minute in case the system not get IP address in 
    // time
    osal_task_sleep(60000); 
     while(1)
    {  
       if(check_updata_feasibility())
       {
//            get_service_ipadd(ipadd);
//            if(1 == libnet_ping_servicer(ipadd)) //zhouxp 2012-02-01
            {
                if(1 == check_version())
                {
                #ifdef AUTO_NETUPDATE
                    ap_send_msg(CTRL_MSG_SUBTYPE_STATUS_NET_UPDATA_NEED_MSG,1,TRUE);
                #endif
                    return 1;
                }
                else
                {
                    return 0;
                }
            }
         }
         osal_task_sleep(1800000);
    }
    //libc_printf("end updata process!!!\n");
    libc_printf("RUN out updata process!!!\n");
    return 0;
}
Пример #5
0
static void cti_PPID_detail_info_display()
{
	POBJECT_HEAD submenu;
	UINT8 PPID_id[3];
	char pin[9];
	cas_pin_t casPIN;
	int ret=0;
	UINT32 PPID=0;
	UINT8 back_saved;

	//check PIN
	if(!win_pin_open(NULL,0))
	{
		return;
	}

	win_compopup_init(WIN_POPUP_TYPE_SMSG);
	//win_compopup_set_msg("Reading PPID detail info.",NULL, 0);
	win_compopup_set_msg(NULL,NULL, RS_CTI_READING_PPID_DETAIL);
	win_compopup_open_ext(&back_saved);
	
	memcpy(PPID_id,cti_PPID_list.info[g_PPID_itemIdx-1].id,3);
	win_pin_get_input(pin, sizeof(pin));
	memcpy(casPIN.pin_code,pin,8);
	casPIN.pin_len = STRLEN(casPIN.pin_code);

	memset(&cti_PPID_detInfo,0,sizeof(cas_PPID_detailed_info_t));
	ret=cas_get_sc_PPID_detailed(PPID_id, &casPIN, &cti_PPID_detInfo);
	//osal_task_sleep(1000);
	win_compopup_smsg_restoreback();
	//soc_printf("qjzheng---PPID.id = %02x%02x%02x,pin=%s,len=%d\n",PPID_id[0],PPID_id[1],PPID_id[2],casPIN.pin_code,casPIN.pin_len);
	if(ret!=0)
	{

		//soc_printf("qjzheng--to get PPID detail info error =%d\n",ret);
		
		osal_task_sleep(500);
		win_compopup_init(WIN_POPUP_TYPE_SMSG);
		//win_compopup_set_msg("Read PPID detail info error!",NULL, 0);
		win_compopup_set_msg(NULL,NULL, RS_CTI_READ_PPID_DETAIL_ERROR);
		win_compopup_open_ext(&back_saved);
		osal_task_sleep(1000);
		win_compopup_smsg_restoreback();
		return;
	}
	
	//to enter PPID_info detail
	submenu = (POBJECT_HEAD)&g_win_cti_PPID_info;

	if(OSD_ObjOpen(submenu, MENU_OPEN_TYPE_MENU|g_PPID_curID) != PROC_LEAVE)
	{
		menu_stack_push(submenu);					
	}
}
Пример #6
0
/**********************************************
* enter usb logo test from here by ui
*
*********************************************/
RET_CODE  usb_test_enter()
{
	struct usb_hc_device *hc_dev = (struct usb_hc_device *)dev_get_by_type(NULL,HLD_DEV_TYPE_USB_HOST);


	if (hc_dev->usbd_flg_id != NULL)
	{
		usbd_notify_dynamic_removerd(hc_dev);
		enable_usb_intf_int(hc_dev->base_addr,0);
		en_host_int_flag1(hc_dev->base_addr,0);
		en_host_int_flag2(hc_dev->base_addr,0);
		en_host_int_flag3(hc_dev->base_addr,0);
//		hc_dev->bdev_callback(0);
//		hc_dev->usb_dev->release(hc_dev->usb_dev);
//		hc_dev->usb_dev = NULL;
	}
	if(sys_ic_get_chip_id() == ALI_S3602F)
	{
      	 	 if(0!=(hc_dev= (pUSBD_BUS)dev_get_by_id(HLD_DEV_TYPE_USB_HOST, 1)))
      	 	 {
				usbd_notify_dynamic_removerd(hc_dev);
				enable_usb_intf_int(hc_dev->base_addr,0);
				en_host_int_flag1(hc_dev->base_addr,0);
				en_host_int_flag2(hc_dev->base_addr,0);
				en_host_int_flag3(hc_dev->base_addr,0);
      	 	 }
	}
	osal_task_sleep(1);
	usb_if_test_flag = IF_TEST_ENTER;
	return RET_SUCCESS ;
}
Пример #7
0
static int cti_mat_modify()
{
	cas_pin_t pin;
	UINT8 level;
	int ret=0;

	memcpy(pin.pin_code,input_pin_chars,sizeof(input_pin_chars));
	pin.pin_len = STRLEN(pin.pin_code);

	level = OSD_GetMultiselSel(&cti_mat_item_select);

	ret=cas_set_parental_rating(&pin,level);

	//soc_printf("modify pin ,statues=%d\n", ret);
	//if(ret==0)
	{
		UINT8 back_saved;
		
		win_compopup_init(WIN_POPUP_TYPE_SMSG);
		if(ret==0)
			win_compopup_set_msg(/*"Reset maturity success!"*/NULL,NULL, RS_CTI_MATURITY_SETTING_SUCCESS);
		else
			win_compopup_set_msg(/*"Reset maturity faild!"*/NULL,NULL, RS_CTI_MATURITY_SETTING_FAIL);
		win_compopup_open_ext(&back_saved);
		osal_task_sleep(1000);
		win_compopup_smsg_restoreback();
	}

	return ret;
	
}
Пример #8
0
UINT32 cmd_process_monitor(unsigned int argc, unsigned char *argv[])
{
	UINT32 data[6 * 2];
	UINT32 i, j = 0x00000003;
	UINT32 ptm = osal_get_tick();

	MEMSET(data, 0, sizeof(data));
	pan_display(g_pan_dev, "Pdon", 4); // done, all ok!

	for(i = 0; i<6; i++)
	{
		UINT32 pm_finish = 0;
		UINT32 pm2_finish = 0;
		*((volatile UINT32 *)0xb8000300) = (j|i<<16);
		while(1)
		{
			pm_finish = *((volatile UINT32 *)0xb8000304);
			pm2_finish = *((volatile UINT32 *)0xb800030c);
			if(1==(pm_finish&0x1)&&1==(pm2_finish&0x1))
				break;
//			if((osal_get_tick()-ptm) > 2000)
				break;
			osal_task_sleep(1);
		}
		data[2  * i] = pm_finish>>16;
		data[2  * i + 1] = pm2_finish>>16;
		//libc_printf("PM_COUNT:  \t=\t 0x%04x,  \tPM_SEL =  \t%d\n", pm_finish>>16, i);
		//libc_printf("PM_COUNT2: \t=\t 0x%04x,  \tPM_SEL2 =  \t%d\n", pm2_finish>>16, i);
		*((volatile UINT32 *)0xb8000300) = 0;
	}
	
	SendDataPacket(0, (unsigned char *)data, sizeof(data));	
	return 0;
}
Пример #9
0
static void osd_output_init(void)
{
    struct osd_device *osd_dev;
    UINT32 region_id =0;
    UINT32 trans_color;
    struct OSDRect region_rect;
    struct OSDPara OpenPara;
    UINT8 *p_pallette;
    
    region_rect.uLeft = 0;
	region_rect.uTop = 0;
	region_rect.uWidth = 800;//OSD_MAX_WIDTH;//608;
	region_rect.uHeight = 500;//OSD_MAX_HEIGHT;//430;	
    
    OpenPara.eMode = OSD_256_COLOR;
    OpenPara.uGAlpha = 0x0f;
    OpenPara.uGAlphaEnable = 0;
    OpenPara.uPalletteSel = 0;
    osd_dev = (struct osd_device *)dev_get_by_id(HLD_DEV_TYPE_OSD, 0);
    OSDDrv_Open((HANDLE)osd_dev, &OpenPara);
    osal_task_sleep(20);
    //trans_color = OSD_GetTransColor(OpenPara.eMode,FALSE);
	OSDDrv_IoCtl((HANDLE)osd_dev, OSD_IO_SET_TRANS_COLOR, 0x00);
	OSDDrv_CreateRegion((HANDLE)osd_dev, region_id, &region_rect, NULL);
    //p_pallette = OSD_GetRscPallette(0x4080 | 0);
	//OSD_SetPallette(p_pallette,256);
    
    //OSDDrv_RegionFill((HANDLE)osd_dev,region_id,&region_rect,0xff);   
    //OSDDrv_ShowOnOff((HANDLE)osd_dev, TRUE); 
}
Пример #10
0
/* pin mux */
void pin_mux_config(UINT32 param1, UINT32 param2)
{
#if 0
	*((volatile UINT32*)0xb8000100) |= ((1 << 2)|(1 << 3)|(1 << 6)|(1 << 12)|(1 << 13)|(1 << 14)|(1 << 18) ); /* RF_AGC_PDM[b17&b18],GPIO2[b1],GPIO7[b16] */
	*((volatile UINT32*)0xb8000104) = 0; 

	//enable gpio
	*((volatile UINT32*)0xb8000040) = ((1 << 0) | (1 << 26) | (1 << 27) | (1 << 28));
	*((volatile UINT32*)0xb80000A0) = ((1 << 1) | (1 << 17)); 
	*((volatile UINT32*)0xb80000D0) = 0; 
#else
	*((volatile UINT32*)0xb8000100) |= ((1 << 2)|(1 << 3)|(1 << 6)|(1 << 12)|(1 << 13)|(1 << 14)|(1 << 18) ); /* RF_AGC_PDM[b17&b18],GPIO2[b1],GPIO7[b16] */
	*((volatile UINT32*)0xb8000104) = 0; 

	//enable gpio
	*((volatile UINT32*)0xb8000040) = ((1 << 0) | (1 << 26) | (1 << 27) | (1 << 28));
	*((volatile UINT32*)0xb80000A0) = ((1 << 1) | (1 << 17)); 
	*((volatile UINT32*)0xb80000D0) = 0; 
	//enable GPIO[1] power	
	*((volatile UINT32*)0xb8000100) |= (1 << 12);	//pinmux spdif gpio[1]
	*((volatile UINT32*)0xb8000040) |= (1<<0);	// gpio enable
	*((volatile UINT32*)0xb8000058) |= (1<<0);	// output enable
	*((volatile UINT32*)0xb8000054) |= (1<<0);	// output 1
    //*((volatile UINT32*)0xb8000074) |= ((1<<4 )| (1<<25));//154M MEMERY
#if 1//i2c reset 
    *((volatile UINT32*)0xb8000060) |= (1<<7); //reset scb1
    osal_task_sleep(100);
    *((volatile UINT32*)0xb8000060) &= (~((UINT32)1<<7)); //clear reset scb1
#endif
#endif
}
Пример #11
0
/* pin mux */
void pin_mux_config(UINT32 param1, UINT32 param2)
{
#if 0
	*((volatile UINT32*)0xb8000100) |= ((1 << 2)|(1 << 3)|(1 << 6)|(1 << 12)|(1 << 13)|(1 << 14)|(1 << 18) ); /* RF_AGC_PDM[b17&b18],GPIO2[b1],GPIO7[b16] */
	*((volatile UINT32*)0xb8000104) = 0; 

	//enable gpio
	*((volatile UINT32*)0xb8000040) = ((1 << 0) | (1 << 26) | (1 << 27) | (1 << 28));
	*((volatile UINT32*)0xb80000A0) = ((1 << 1) | (1 << 17)); 
	*((volatile UINT32*)0xb80000D0) = 0; 
#else
	*((volatile UINT32*)0xb8000100) |= ((1 << 2)|(1 << 3)|(1 << 6)|(1 << 12)|(1 << 13)|(1 << 14)|(1 << 18) ); /* RF_AGC_PDM[b17&b18],GPIO2[b1],GPIO7[b16] */
	*((volatile UINT32*)0xb8000104) = 0; 

	//enable gpio
	*((volatile UINT32*)0xb8000040) = ((1 << 23) | (1 << 24) | (1 << 25));
	*((volatile UINT32*)0xb80000A0) = ((1 << 0) | (1 << 1) | (1 << 12)|(1 << 13) | (1 << 14) | (1 << 17)); 
	*((volatile UINT32*)0xb80000D0) = 0; 
#if 0 //loader will open the power
	//enable GPIO[32] power	
	*((volatile UINT32*)0xb80000A0) |= (1<<0);	//enable gpio 32
	*((volatile UINT32*)0xb80000B8) |= (1<<0);	// set gpio 32 to be output
	*((volatile UINT32*)0xb80000B4) |= (1<<0);	// set gpio 32 output high level
#endif

#if 1//i2c reset 
    *((volatile UINT32*)0xb8000060) |= (1<<7); //reset scb1
    osal_task_sleep(100);
    *((volatile UINT32*)0xb8000060) &= (~((UINT32)1<<7)); //clear reset scb1
#endif

#endif
}
Пример #12
0
void aud_desc_show_hint(UINT32 ad_msg)
{
    char str[32];
    char lang[5];
    UINT8 back_saved;
    int ad_status = AD_MSG_STATUS(ad_msg);
    int ad_type = AD_MSG_TYPE(ad_msg);
    UINT16 ad_lang = AD_MSG_LANG(ad_msg);

    MEMSET(lang, 0, sizeof(lang));
    get_audio_lang3b((UINT8 *)&ad_lang,(UINT8 *)lang);

    if (ad_status == 0) // AD invalid
        sprintf(str, "%s AD not available", lang);
    else
    {
        if (ad_type == AD_MSG_TYPE_BOARDCASTER_MIX)
            sprintf(str, "AD Enable", lang);
        else if (ad_type == AD_MSG_TYPE_RECEIVER_MIX)
            sprintf(str, "%s AD Enable", lang);
    }

    win_compopup_init(WIN_POPUP_TYPE_SMSG);
    win_compopup_set_msg_ext(str, NULL, 0);

    win_compopup_open_ext(&back_saved);
    osal_task_sleep(1000);
    win_compopup_smsg_restoreback();
}
Пример #13
0
/* API for Stop Auto Scan */
INT32 as_service_stop()
{
    	struct nim_device *nim = NULL;
    
    	osal_task_dispatch_off();
    	if (as_info != NULL)
    	{
        	as_info->stop_scan_signal = 1;
		if(as_info->nim!=NULL)
		{
			nim = as_info->nim;
       	 	nim_io_control(nim, NIM_DRIVER_STOP_ATUOSCAN, 1);
		}
    	}
    	osal_task_dispatch_on();

    	if (as_info != NULL)
    	{
        	psi_search_stop();//stop getting psi section
    	}

    	while (as_info)
        	osal_task_sleep(AS_MODULE_SLEEP_SLICE);

#ifndef __MM_VBV_START_ADDR
		if(NULL != as_buf)
		{
			FREE(as_buf);
			as_buf = NULL;
		}		
#endif

    	return SUCCESS;
}
Пример #14
0
//clear local disp buff flag
BOOL osdmsg_display_stop()
{
    //OSDMSG_PRINT("@@@@stop message on the Bottom!\n");
    osdmsg_bottom_disp_flag = FALSE;
    osal_task_sleep(50);
    return TRUE;
}
Пример #15
0
void ap_osd_layer2_init()
{
    UINT8 *p_pallette;
    struct OSDPara tOpenPara;
    struct OSDRect region1, region2, rc1, rc2;

    cas_osd_dev = (struct osd_device*)dev_get_by_id(HLD_DEV_TYPE_OSD, 0);

    tOpenPara.eMode = OSD_256_COLOR;
    tOpenPara.uGAlphaEnable = 0;
    tOpenPara.uGAlpha = 0x0F;
    tOpenPara.uPalletteSel = 0;
    OSDDrv_Open((HANDLE)cas_osd_dev, &tOpenPara);
    osal_task_sleep(20);
    OSDDrv_IoCtl((HANDLE)cas_osd_dev, OSD_IO_SET_TRANS_COLOR, OSD_TRANSPARENT_COLOR);

    //create region  for bottom osd msg
    region2.uLeft = 0;
    region2.uTop = 530;
    region2.uWidth = 720;
    region2.uHeight = 28;
    rc2.uLeft = 0;
    rc2.uTop = 0;
    rc2.uWidth = region2.uWidth;
    rc2.uHeight = region2.uHeight;
    OSDDrv_CreateRegion((HANDLE)cas_osd_dev, OSDMSG_REGION_BTM, &region2, NULL);

    p_pallette = OSD_GetRscPallette(0x4080 | 0);
    OSDDrv_SetPallette((HANDLE)cas_osd_dev, p_pallette, COLOR_N, OSDDRV_YCBCR);
    OSDDrv_RegionFill((HANDLE)cas_osd_dev,OSDMSG_REGION_BTM,&rc2,OSD_TRANSPARENT_COLOR);
    OSDDrv_ShowOnOff((HANDLE)cas_osd_dev,OSDDRV_ON);

}
Пример #16
0
static void config_uart_speed(UINT8 mode)
{
    if(mode != 1 && mode != 2)
        return;

	*((volatile UINT32 *)(0xB8001308)) = 0;
	osal_task_sleep(100);

    if(1 == mode)
    	*((volatile UINT32 *)(0xB8000074)) = 0x40000000;    // 2M mode
    else
    	*((volatile UINT32 *)(0xB8000074)) = 0x40008000;    // 6M mode
	osal_task_sleep(100); // must delay here

	*((volatile UINT32 *)(0xB8001308)) = 0x08;	
	osal_task_sleep(100);
}
Пример #17
0
void ad_pic_gif_stop(gif_file file)
{
	if (gif == NULL)
		return;
	
	gif_stop(gif, file);
	osal_task_sleep(100);
	ad_pic_gif_file_remove(file);
}
Пример #18
0
//size_t url_read(void* ptr,size_t size)
size_t url_read(void *ptr, size_t size, size_t nmemb, FILE *stream)
{
	int bytes_read   = 0;
	char *buf = NULL;
	char *buf_handle = NULL;
	//int i=0;
	int total_bytes_read   = 0;

	buf = MALLOC(size);
	buf_handle = buf;
	//libc_printf("url_read  %d!\n",size);
	while(size >0)
	{
		if(libnet_get_wait_flag())
		{
			bytes_read = S_READ(g_sock, buf, size);
			if(bytes_read>0)
			{
				MEMCPY(ptr, buf, bytes_read);
				size-=bytes_read;
				buf+=bytes_read;
				ptr+=bytes_read;
				total_bytes_read+=bytes_read;
				libnet_cb(NET_MSG_DOWNLOAD_PROGRESS, total_bytes_read);
			}
			/*
			This time out should start from video decoder stop, but now we just estimate
			around 60 sec (but can depend on video quality), even video can play over 60sec in buffer !!!
				*/
			if(bytes_read==0 || abort_url_read)
			//if(bytes_read==0)
			{
				if(abort_url_read) total_bytes_read =-1;
				if(bytes_read==0) LIBNET_DEBUG("bytes_read==0!\n");
				else LIBNET_DEBUG("url_timeout");
				FREE(buf_handle);
				libnet_set_wait_flag(FALSE);
				abort_url_read = FALSE;
			    	//progress_destroy(p);
				return total_bytes_read;
			}
			if(bytes_read<0) osal_task_sleep(1);
		}
		else // wait flag = FALSE mean net work terminate
		{
				LIBNET_DEBUG("Url Read terminate!\n");
				abort_url_read = FALSE;
				FREE(buf_handle);
				return total_bytes_read;
		}
	}
	//LIBNET_DEBUG("url_read Finish!\n");
	abort_url_read = FALSE;
	FREE(buf_handle);
	return total_bytes_read;
}
Пример #19
0
void sync_twinkle()
{
#if((_DVB_T_TARGET_BOARD==HW_ALiG00_BOARD_M3101) ||(_DVB_T_TARGET_BOARD==HW_ALiA00_3101_BOARD))
#if ((UPGRADE_FORMAT & BOOT_UPG) == BOOT_UPG)
	toggle_flag = (toggle_flag ? 0:1);
	Upgrade_Twinkle(toggle_flag);
	osal_task_sleep(1);
#endif
#endif
}
Пример #20
0
static void libc_demo_pcm_output(struct pcm_output * pcm)
{
	UINT8 pcm_frm_header[16];
	UINT32 temp;
	static UINT32 avoid_under_run = 0;

	//config pcm frame header
	MEMSET(pcm_frm_header, 0, 16);
	if (pcm->samp_num&0x00000003)
	{
		//PRINTF("err sample num = %d \n",pcm->samp_num);
		return;
	}
	temp = pcm->samp_num;
	if (DAC_PRECISION == 16)
		temp = temp >> 1 ;

	pcm_frm_header[12] = ((UINT8*)(&temp))[0];
	pcm_frm_header[13] = ((UINT8*)(&temp))[1];

	if (SND_STATE_PLAY != g_snd_dev->flags && 0 == avoid_under_run)
	{

		if (RET_SUCCESS != snd_config(g_snd_dev, snd_samplerate, pcm->samp_num, DAC_PRECISION))
			return;

		snd_write_pcm_data(g_snd_dev, pcm, (UINT32*)pcm_frm_header);
		avoid_under_run = 5;
		return;
	}

	if (0 != avoid_under_run)
	{
		snd_write_pcm_data(g_snd_dev, pcm, (UINT32*)pcm_frm_header);
		avoid_under_run--;
		if (0 == avoid_under_run)
			snd_start(g_snd_dev);
		return;
	}

	while (RET_SUCCESS != snd_request_pcm_buff(g_snd_dev, pcm->samp_num))
	{
		//PRINTF("snd dev not enough PCM buffer.\n");
		osal_task_sleep(10);
	}

	snd_write_pcm_data(g_snd_dev, pcm, (UINT32*)pcm_frm_header);
	if (RET_SUCCESS != snd_data_enough(g_snd_dev))
	{
		snd_write_pcm_data(g_snd_dev, pcm, (UINT32*)pcm_frm_header);
		snd_write_pcm_data(g_snd_dev, pcm, (UINT32*)pcm_frm_header);
	}
	return ;
}
Пример #21
0
void dispSpiderCamdMsg(char *msgDisp)
{

	UINT8 back_saved;
	
	win_compopup_init(WIN_POPUP_TYPE_SMSG);
	win_compopup_set_msg_ext(msgDisp, NULL, 0);
	win_compopup_open_ext(&back_saved);	
	osal_task_sleep(3000);
	win_compopup_smsg_restoreback();
}
Пример #22
0
static int SetSPISSISelect(unsigned int argc, unsigned char * argv[])
{
    extern UINT32 nim_s3501_set_ts_output_mode(struct nim_device *dev,UINT32 ts_output_mode);

    struct dmx_device *dmx_dev = dev_get_by_id(HLD_DEV_TYPE_DMX, nim_id);    

    if (argc != 2)
	{
	    SH_PRINTF("Usage: SetPara <nim_id> \n");
	    return -1;
	}
    if(strcasecmp("SSI",argv[1]))
    {
		//nim_id  = 0;
		nim_s3501_set_ts_output_mode(dmx_dev,1);

        *((volatile UINT32 *)0xb8000088) = *((volatile UINT32 *)0xb8000088)& (~(0x40000000));
        osal_task_sleep(10);
        tsi_select(TSI_DMX_0, TSI_SSI_0);
        tsi_select(TSI_DMX_1, TSI_SSI_0);	          
        
    }
	else
	{
		//nim_id = 1;
		nim_s3501_set_ts_output_mode(dmx_dev,0);
        
        *((volatile UINT32 *)0xb8000088) = *((volatile UINT32 *)0xb8000088)& (~(0x60000000));
        osal_task_sleep(10);        
        tsi_select(TSI_DMX_0, TSI_SPI_1);
        tsi_select(TSI_DMX_1, TSI_SPI_1);
	}
    //SH_PRINTF("%s ",argv[1]);      
	LIB_ASH_OC('O');        	
	LIB_ASH_OC('K');        		

	LIB_ASH_OC('\r'); 
	LIB_ASH_OC('\n');
    
    
}
Пример #23
0
INT32 bastp_halfscan_stop(UINT32 param)
{
	if(halt_scan_flag != 1)
		return 0;
	
	halt_scan_flag = 2;

	while(halt_scan_flag)
		osal_task_sleep(2000);
	
	return 0;
}
Пример #24
0
static void win_pvod_cancel()
{
#if 0
	UINT8 back_saved;
	
	win_compopup_init(WIN_POPUP_TYPE_SMSG);
	win_compopup_set_msg("use cancel !!",NULL, 0);
	win_compopup_open_ext(&back_saved);
	osal_task_sleep(1000);
	win_compopup_smsg_restoreback();
#else
#endif
}
Пример #25
0
void win_popup_msg(char* str, char* unistr, UINT32 strID)
{
	unsigned char back_saved;
	
	win_compopup_init(WIN_POPUP_TYPE_SMSG);
	win_compopup_set_msg(str,unistr, strID);
	win_compopup_open_ext(&back_saved);
	osal_task_sleep(1000);
	win_compopup_smsg_restoreback();


	return;
}
Пример #26
0
//*--------------------------------------------------------------------------------------
//* Function Name       : UserWrittenWait
//* Object              : 
//* Input Parameters    : 	tmUnitSelect_t tUnit
//* 						UInt32 tms
//* Output Parameters   : tmErrorCode_t.
//*--------------------------------------------------------------------------------------
tmErrorCode_t UserWrittenWait(tmUnitSelect_t tUnit, UInt32 tms)
{
   /* Variable declarations */
   tmErrorCode_t err = TM_OK;

/* Customer code here */
/* ...*/
	osal_task_sleep(tms);
/* ...*/
/* End of Customer code here */

   return err;
}
Пример #27
0
static void ogg_seek(int time)
{
	if (ogg_file)
	{
		osal_task_dispatch_off();
		ogg_file->seek_to = time;
		osal_task_dispatch_on();
		//for sync
		while (ogg_file->seek_to != 0)
		{
			osal_task_sleep(10);
		}		
	}
}
Пример #28
0
static void erom_download(UINT32 slave_addr, UINT8 *ptr_data_buf, UINT32 total_len)
{
    UINT32 len;

    while(total_len)
    {
        len = (total_len > TRANS_BLOCK_SIZE) ? TRANS_BLOCK_SIZE : total_len;
        erom_wm(slave_addr, ptr_data_buf, len, 1);
        osal_task_sleep(2);
        slave_addr += len;
        ptr_data_buf += len;
        total_len -= len;
    }
}
Пример #29
0
static void win_pvod_pause()
{
#if 1	
	UINT8 back_saved;
	
	win_compopup_init(WIN_POPUP_TYPE_SMSG);
	win_compopup_set_msg(NULL,NULL, RS_READ_PROGRAM_INFORMATION);
	win_compopup_open_ext(&back_saved);
	osal_task_sleep(1000);
	win_compopup_smsg_restoreback();
#else
#endif
	
}
Пример #30
0
void test_reset_bus(UINT32 base_addr)
{
	UINT32 bus_speed;
	
	usb_hw_init(base_addr);
	osal_task_sleep(500);
	//disable int
	*((volatile unsigned char *)(base_addr+0x1E))= 0x00;
	*((volatile unsigned char *)(base_addr+0x1F))= 0x00;
	*((volatile unsigned char *)(base_addr+0x62))= 0xFF;
	//TX_DRIVING +10%
	if ((sys_ic_get_chip_id() == ALI_M3329E)&&(sys_ic_get_rev_id()<IC_REV_5))
		*((volatile unsigned char *)0xb800007C) = 0x03;	//USB_PLL_SEL: DISC_SEL/PD_HS/PD_FS/PD_PLL . SQUELCH_LEVEL -/TX_DRIVING -

	USB_LOGO_PRINTF("1.reset usb bus!\n");
	issue_reset_to_device(base_addr);	
	if(wait_bus_reset_finish(base_addr) != RET_SUCCESS)
		goto err;
	osal_task_sleep(500);
	USB_LOGO_PRINTF("get device speed");
	bus_speed = get_device_speed(base_addr);
	if (bus_speed & B_OPER_FS)
	{
		USB_LOGO_PRINTF("Device is in FS mode!\n");
	}
	else if (bus_speed & B_OPER_LS)
	{
		USB_LOGO_PRINTF("Device is in LS mode!\n");
	}
	else 
	{
		USB_LOGO_PRINTF("Device is in HS mode!\n");
	}
err:
	return;
}