Ejemplo n.º 1
0
static Ret clocks_rtc_get_time(Clocks *thiz, Datetime *date_time)
{
	return_val_if_failed(thiz != NULL && date_time != NULL, RET_INVALID_PARAMETER);
	
	if(thiz->priv_subclass[0])
	{
		DECL_PRIV0(thiz, priv0);
		RtcTimeConversionDateTime(priv0->rtc_time, date_time)
	}
Ejemplo n.º 2
0
static int rtc_open(char *rtc_dev_name)
{
	return_val_if_failed(rtc_dev_name != NULL, -1);

	int fd_rtc = -1;

	fd_rtc = open(rtc_dev_name, O_RDWR);	

	return fd_rtc;
}
Ejemplo n.º 3
0
static Ret clocks_rtc_set_time(Clocks *thiz, Datetime *date_time)
{	
	return_val_if_failed(thiz != NULL &&date_time != NULL, RET_INVALID_PARAMETER);

	Ret ret = RET_FAILED;
	rtc_time_t rtc_time = {0};
	
	DateTimeConversionRtcTime(date_time, rtc_time)
	
	if(thiz->priv_subclass[0])
	{
		DECL_PRIV0(thiz, priv0);
		if(ioctl(priv0->fd_rtc, RTC_TIME_SET, &rtc_time) == 0)	
		{
			ret = RET_OK;
		}	 	
	}

	return ret;
}
Ejemplo n.º 4
0
int ad_codec_config_audio_rate(ADCodec *thiz, AUDIO_SAMPLE_RATE_E audio_sample_rate)
{
    return_val_if_failed(thiz != NULL && thiz->ad_fd >= 0, -1);
	
    tw2865_audio_samplerate samplerate;

    switch(audio_sample_rate)
    {
        case AUDIO_SAMPLE_RATE_8000:
            samplerate = TW2865_SAMPLE_RATE_8000;
            break;
         case AUDIO_SAMPLE_RATE_16000:
            samplerate = TW2865_SAMPLE_RATE_16000;
            break;
         case AUDIO_SAMPLE_RATE_32000:
            samplerate = TW2865_SAMPLE_RATE_32000;
            break;
         case AUDIO_SAMPLE_RATE_44100:
            samplerate = TW2865_SAMPLE_RATE_44100;
            break;
         case TW2865_SAMPLE_RATE_48000:
            samplerate = TW2865_SAMPLE_RATE_48000;
            break;
         default:
            msg_dbg("Error : Not support enSample:%d\n",audio_sample_rate);
            return -1;
            break;
    }

    if (ioctl(thiz->ad_fd, TW2865_SET_SAMPLE_RATE, &samplerate))
    {
        msg_dbg("ioctl TW2865_SET_SAMPLE_RATE err !!! \n");
        close(thiz->ad_fd);
        return -1;
    }
 
    return 0;    
}
Ejemplo n.º 5
0
Ret create_normal_thread(ThreadFunction function, void *para, pthread_t *pid)
{
	return_val_if_failed(para != NULL, RET_INVALID_PARAMETER);	
	
	pthread_t thread_id;
	pthread_attr_t attr;

	pthread_attr_init(&attr);
	pthread_attr_setscope(&attr, PTHREAD_SCOPE_SYSTEM);
	pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
	
	if(pthread_create(&thread_id, &attr, function, para) == 0)
    {
        pthread_attr_destroy(&attr);
		if(pid != NULL)		
		{
			*pid = thread_id;
		}
        return RET_OK;
    }
	pthread_attr_destroy(&attr);
	
	return RET_FAILED;
}