示例#1
0
void dtvd_tuner_ber_mtx_001_msg_core_start( void )
{

   signed int ret;

    DTVD_DEBUG_MSG_ENTER( 0, 0, 0 );

    ret = dtvd_tuner_ber_com_start_set();
    if( ret != D_DTVD_TUNER_OK )
    {
        DTVD_DEBUG_MSG_ENTER( 1, 0, 0 );

        dtvd_tuner_ber_inevt_core_deverr();

        DTVD_DEBUG_MSG_EXIT();
        return;
    }

    tdtvd_tuner_monitor.rx.ber.state = D_DTVD_TUNER_MEASURE_STATE_OFF;

    dtvd_tuner_timer_start( D_DTVD_TUNER_TIMER_MEASURE_BER_FST,
		                    tdtvd_tuner_ber.wait_time );

    dtvd_tuner_ber_com_set_status( D_DTVD_TUNER_BER_002 );

    DTVD_DEBUG_MSG_EXIT();
    return;
}
示例#2
0
void dtvd_tuner_cn_mtx_001_msg_core_measure( void )
{
    signed int ret;

    DTVD_TUNER_INEVT_CN_CORE_MEASURE_t *data = &tdtvd_tuner_msg.buff.in_cn_core_measure;

    DTVD_DEBUG_MSG_ENTER( 0, 0, 0 );

    ret = dtvd_tuner_cn_com_start_set();
    if( ret != D_DTVD_TUNER_OK )
    {
        DTVD_DEBUG_MSG_ENTER( 1, 0, 0 );

        dtvd_tuner_cn_inevt_core_deverr();

        DTVD_DEBUG_MSG_EXIT();

        return;

    }

    dtvd_tuner_timer_start( D_DTVD_TUNER_TIMER_MEASURE_CN_FST,
                            tdtvd_tuner_cn.wait_time );

    tdtvd_tuner_cn.stabilize_times = 0;

    tdtvd_tuner_cn.seq_id = data->seq_id;

    dtvd_tuner_cn_com_set_status( D_DTVD_TUNER_CN_002 );

    DTVD_DEBUG_MSG_EXIT();
    return;
}
示例#3
0
void dtvd_tuner_state_com_watch_timer_start( void )
{

    dtvd_tuner_timer_start( D_DTVD_TUNER_TIMER_WATCH_STATE,
                            tdtvd_tuner_state.cycle_time );

    return;
}
示例#4
0
void dtvd_tuner_cn_com_watch_timer_start( void )
{
    DTVD_DEBUG_MSG_ENTER( 0, 0, 0 );

    dtvd_tuner_timer_start( D_DTVD_TUNER_TIMER_WATCH_CN,
                            tdtvd_tuner_cn.cycle_time );

    DTVD_DEBUG_MSG_EXIT();
    return;
}
示例#5
0
void dtvd_tuner_timer_pwron_halfway( void )

{

    unsigned long addr;
    unsigned char data;

    addr = D_DTVD_TUNER_PSCNT_LDO7;
    dtvd_tuner_com_dev_powic_read( addr,           
                                   &data );        

    data =  (unsigned char)  ( data | D_DTVD_TUNER_PSCNT_LDO7_ON );
    dtvd_tuner_com_dev_powic_write( addr,          
                                    data );        

    dtvd_tuner_timer_start( D_DTVD_TUNER_TIMER_PWRON,
                            D_DTVD_TUNER_TIMER_PWRON2_MSEC );

    return ;
}
示例#6
0
void dtvd_tuner_tuner_mtx_000_msg_core_pwron( void )
{
    unsigned long flags;

    DTVD_DEBUG_MSG_ENTER( 0, 0, 0 );

    flags = 0;
    spin_lock_irqsave( &tdtvd_tuner_tuner.lock, flags );

    dtvd_tuner_tuner_com_infoinit();

	
    dtvd_tuner_tuner_com_pwr_on_pega();
    dtvd_tuner_timer_start( D_DTVD_TUNER_TIMER_PWRON_HALFWAY,
                            D_DTVD_TUNER_TIMER_PWRON1_MSEC );

    spin_unlock_irqrestore( &tdtvd_tuner_tuner.lock, flags );

    dtvd_tuner_tuner_com_set_status( D_DTVD_TUNER_TUNER_001 );

    DTVD_DEBUG_MSG_EXIT();
    return;
}
示例#7
0
void dtvd_tuner_autoeco_mtx_003_msg_timeout_autoeco_watch_omt( void )
{
    signed int     ret;
    unsigned int   result;
    unsigned char  agc_data;
    unsigned int   cn_data;
    unsigned int   ext;
    unsigned int   up;
    unsigned int   low;
    DTVD_TUNER_INEVT_AUTOECO_CN_NOTICE_t *cn_msg_data;
    DTVD_TUNER_INEVT_AUTOECO_CN_NOTICE_t dummy_msg_data;

    DTVD_DEBUG_MSG_ENTER( 0, 0, 0 );

    memset( &dummy_msg_data, 0x00, sizeof(dummy_msg_data) );

    cn_msg_data = &dummy_msg_data;

    ext = cn_msg_data->cn.ext;
    up = cn_msg_data->cn.up;
    low = cn_msg_data->cn.low;

    cn_data = ( ( ( ext << 16 ) |                        
                     ( up << 8 ) ) |                     
                     ( low ) );                          

    ret = dtvd_tuner_autoeco_com_agc_read( &agc_data );

    if( ret != D_DTVD_TUNER_OK )
    {
        DTVD_DEBUG_MSG_ENTER( 1, 0, 0 );

        dtvd_tuner_autoeco_inevt_core_deverr();

        dtvd_tuner_autoeco_com_set_status( D_DTVD_TUNER_AUTOECO_001 );

        DTVD_DEBUG_MSG_EXIT();
        return;
    }

    dtvd_tuner_autoeco_com_eco_judge( agc_data, cn_data, &result );

    if (tdtvd_tuner_nonvola.reserved4 != D_DTVD_TUNER_ON)
    {
        DTVD_DEBUG_MSG_ENTER( 2, 0, 0 );

        dtvd_tuner_timer_start( D_DTVD_TUNER_TIMER_WATCH_AUTOECO_OMT,
                                         tdtvd_tuner_nonvola.cn_cycle * D_DTVD_TUNER_COEFFICIENT_CN_CYCLE_TIME);

        DTVD_DEBUG_MSG_EXIT();
        return;
    }

    if( result == D_DTVD_TUNER_AUTOECO_DEF_TO_ECO )
    {
        DTVD_DEBUG_MSG_ENTER( 3, 0, 0 );

        tdtvd_tuner_autoeco.autoeco_flg = D_DTVD_TUNER_ON;

        dtvd_tuner_autoeco_inevt_core_notice( D_DTVD_TUNER_AUTOECO_ECO_OK );
    }

    else if( result == D_DTVD_TUNER_AUTOECO_ECO_TO_DEF )
    {
        DTVD_DEBUG_MSG_ENTER( 4, 0, 0 );

        tdtvd_tuner_autoeco.autoeco_flg = D_DTVD_TUNER_OFF;

        dtvd_tuner_autoeco_inevt_core_notice( D_DTVD_TUNER_AUTOECO_ECO_NG );
    }

    else if( result == D_DTVD_TUNER_AUTOECO_NON )
    {
        DTVD_DEBUG_MSG_ENTER( 5, 0, 0 );

    }

    else
    {
        DTVD_DEBUG_MSG_ENTER( 6, 0, 0 );

    }

    dtvd_tuner_timer_start( D_DTVD_TUNER_TIMER_WATCH_AUTOECO_OMT,
                                             tdtvd_tuner_nonvola.cn_cycle * D_DTVD_TUNER_COEFFICIENT_CN_CYCLE_TIME);

    DTVD_DEBUG_MSG_EXIT();

    return;
}