static void mt_hotplug_mechanism_early_suspend(struct early_suspend *h)
{
    HOTPLUG_INFO("mt_hotplug_mechanism_early_suspend");

    if (g_enable)
    {
        //int i = 0;
    
    #ifdef CONFIG_CPU_FREQ_GOV_HOTPLUG
        mutex_lock(&hp_onoff_mutex);
        hp_disable_cpu_hp(1);
    #endif
        
        //for (i = (num_possible_cpus() - 1); i > 0; i--)
        //{
        //    if (cpu_online(i))
        //        cpu_down(i);
        //}
        
        if (num_online_cpus() != 1)
        {
            wake_lock_timeout(&hotplug_wake_lock, FORCE_CPU_OFF_WAKE_LOCK_TIME * HZ);
            schedule_delayed_work_on(0, &hotplug_delayed_work, FORCE_CPU_OFF_DELAYED_WORK_TIME * HZ);
        }
    
    #ifdef CONFIG_CPU_FREQ_GOV_HOTPLUG
        mutex_unlock(&hp_onoff_mutex);
    #endif
        
    }

    g_cur_state = STATE_ENTER_EARLY_SUSPEND;

    return;
}
static void mt_hotplug_mechanism_early_suspend(struct early_suspend *h)
{
    HOTPLUG_INFO("mt_hotplug_mechanism_early_suspend");

    if (g_enable)
    {
        int i = 0;
        
        mutex_lock(&hp_onoff_mutex);
        
        hp_disable_cpu_hp(1);

        for (i = (num_possible_cpus() - 1); i > 0; i--)
        {
            if (cpu_online(i))
                cpu_down(i);
        }
        
        mutex_unlock(&hp_onoff_mutex);
    }

    g_cur_state = STATE_ENTER_EARLY_SUSPEND;

    return;
}
static void mt_hotplug_mechanism_late_resume(struct power_suspend *h)
{
    HOTPLUG_INFO("mt_hotplug_mechanism_late_resume");

    if (g_enable)
    {
        hp_disable_cpu_hp(0);
    }

    g_cur_state = STATE_ENTER_LATE_RESUME;

    return;
}
static void mt_hotplug_mechanism_late_resume(struct early_suspend *h)
{
    HOTPLUG_INFO("mt_hotplug_mechanism_late_resume");

    if (g_enable)
    {
        wake_unlock(&hotplug_wake_lock);
        cancel_delayed_work_sync(&hotplug_delayed_work);
    #ifdef CONFIG_CPU_FREQ_GOV_HOTPLUG
        hp_disable_cpu_hp(0);
    #endif
    }

    g_cur_state = STATE_ENTER_LATE_RESUME;

    return;
}
static void mt_hotplug_mechanism_power_suspend(struct power_suspend *h)
{
    HOTPLUG_INFO("mt_hotplug_mechanism_power_suspend");

    if (g_enable)
    {
        int i = 0;
        
        hp_disable_cpu_hp(1);

        for (i = (num_possible_cpus() - 1); i > 0; i--)
        {
            if (cpu_online(i))
                cpu_down(i);
        }
    }

    g_cur_state = STATE_ENTER_POWER_SUSPEND;

    return;
}