Esempio n. 1
0
void dtvd_tuner_core_mtx_013_cnr_stop_omt( void )
{
    DTVD_DEBUG_MSG_ENTER( 0, 0, 0 );

    dtvd_tuner_core_set_result( D_DTVD_TUNER_NG );

    dtvd_tuner_core_wakeup( D_DTVD_TUNER_WAKEUP_CNR_STOP_OMT );

    DTVD_DEBUG_MSG_EXIT();
    return;
}
Esempio n. 2
0
void dtvd_tuner_core_mtx_013_ber_get_omt( void )
{
    DTVD_DEBUG_MSG_ENTER( 0, 0, 0 );

    dtvd_tuner_core_set_result( D_DTVD_TUNER_NG );

    dtvd_tuner_core_wakeup( D_DTVD_TUNER_WAKEUP_BER_GET_OMT );

    DTVD_DEBUG_MSG_EXIT();
    return;
}
Esempio n. 3
0
void dtvd_tuner_core_mtx_013_agc_start_omt( void )
{
    DTVD_DEBUG_MSG_ENTER( 0, 0, 0 );

    dtvd_tuner_core_set_result( D_DTVD_TUNER_NG );

    dtvd_tuner_core_wakeup( D_DTVD_TUNER_WAKEUP_AGC_START_OMT );

    DTVD_DEBUG_MSG_EXIT();
    return;
}
Esempio n. 4
0
void dtvd_tuner_core_mtx_013_stop_omt( void )
{
    DTVD_DEBUG_MSG_ENTER( 0, 0, 0 );

    dtvd_tuner_core_set_result( D_DTVD_TUNER_OK );

    dtvd_tuner_core_wakeup( D_DTVD_TUNER_WAKEUP_STOP_OMT );

    dtvd_tuner_core_com_set_status( D_DTVD_TUNER_CORE_002 );

    DTVD_DEBUG_MSG_EXIT();
    return;
}
Esempio n. 5
0
void dtvd_tuner_core_mtx_008_msg_tuner_deverr( void )
{
    DTVD_DEBUG_MSG_ENTER( 0, 0, 0 );

    dtvd_tuner_core_set_result( D_DTVD_TUNER_NG );

    dtvd_tuner_core_wakeup( D_DTVD_TUNER_WAKEUP_STOP );

    dtvd_tuner_core_com_set_status( D_DTVD_TUNER_CORE_002 );

    DTVD_DEBUG_MSG_EXIT();
    return;
}
Esempio n. 6
0
int dtvd_tuner_main
(
    void* param                         
)
{
    signed int              evtcode;
    DTVD_TUNER_FUNC_t       procp;
    DTVD_TUNER_CONTROL_t    *info = &tdtvd_tuner_info;

    dtvd_tuner_main_init();

    for(;;)
    {

        if( atomic_read( &info->event_flg ) == 0 )
        {

            wait_event_interruptible( tdtvd_tuner_info.wait_queue,
                                      atomic_read(&info->event_flg) );

        }

        if( atomic_read( &info->event_flg ) == 0 )
        {
            DTVD_DEBUG_MSG_INFO("missing signal\n");
            continue;
        }

        dtvd_tuner_main_exevt_rcv();

        DTVD_DEBUG_MSG_INFO("dtvd recv event from_id(%d) command(%d)\n", tdtvd_tuner_msg.fromid, tdtvd_tuner_msg.command);

        if( (tdtvd_tuner_msg.fromid  == D_DTVD_TUNER_BLK_TIMER) && 
            (tdtvd_tuner_msg.command == D_DTVD_TUNER_CMD_TIMER_PWR_HALFTIMEOUT) )
        {

            dtvd_tuner_timer_pwron_halfway();
            continue;
        }

        evtcode = dtvd_tuner_main_exevt_analyze();

        do
        {
            DTVD_DEBUG_MSG_INFO( "evtcode=%d\n", evtcode );

            procp = dtvd_tuner_main_matrix( evtcode );
            if( procp != D_DTVD_TUNER_NULL )
            {

                (*procp)();
            }
            else
            {

                DTVD_TUNER_SYSERR_RANK_A( D_DTVD_TUNER_SYSERR_DRV_STATE,
                                          DTVD_TUNER_MAIN,
                                          (unsigned long)evtcode,
                                          ((unsigned long)tdtvd_tuner_core.status << 16 )  | (unsigned long)tdtvd_tuner_ant.status ,
                                          ((unsigned long)tdtvd_tuner_tuner.status << 16 ) | (unsigned long)tdtvd_tuner_agc.status ,
                                          ((unsigned long)tdtvd_tuner_tmcc.status << 16 )  | (unsigned long)tdtvd_tuner_cn.status ,
                                          ((unsigned long)tdtvd_tuner_ber.status << 16 )   | (unsigned long)tdtvd_tuner_state.status ,

                                          (unsigned long)tdtvd_tuner_autoeco.status << 16 );
	      printk("******procp == D_DTVD_TUNER_NULL\n");
                dtvd_tuner_core_wakeup(0xFFFFFFFF);
            }

            dtvd_tuner_main_inevt_rcv();

            evtcode = dtvd_tuner_main_inevt_analyze();
        }
        while( evtcode != D_DTVD_TUNER_NOEVENT );
    }

    return 0;
}