static void mtk_ta_detector(void) { int real_v_chrA; int real_v_chrB; kal_bool retransmit = KAL_TRUE; kal_uint32 retransmit_count=0; U32 charging_enable = true; battery_log(BAT_LOG_CRTI, "mtk_ta_detector() start\n"); battery_charging_control(CHARGING_CMD_ENABLE,&charging_enable); do { real_v_chrA = ta_get_charger_voltage(); mtk_ta_decrease(); mtk_ta_decrease(); real_v_chrB = ta_get_charger_voltage(); if(real_v_chrA - real_v_chrB >= 300) { /* 0.3V */ retransmit = KAL_FALSE; is_ta_connect = KAL_TRUE; } else { retransmit_count++; battery_log(BAT_LOG_CRTI, "mtk_ta_detector(): retransmit_count =%d, chrA=%d, chrB=%d\n", retransmit_count, real_v_chrA, real_v_chrB); mtk_ta_reset_vchr(); } if((retransmit_count == 3) || (BMT_status.charger_exist == KAL_FALSE)) { retransmit = KAL_FALSE; is_ta_connect = KAL_FALSE; } } while((retransmit == KAL_TRUE) && (ta_cable_out_occur == KAL_FALSE)); battery_log(BAT_LOG_CRTI, "mtk_ta_detector() ta_current_level=%d, real_v_chrA=%d, real_v_chrB=%d, is_ta_connect=%d\n", ta_current_level, real_v_chrA, real_v_chrB,is_ta_connect); battery_log(BAT_LOG_CRTI, "mtk_ta_detector() end, retry_count=%d, ta_cable_out_occur=%d \n",retransmit_count,ta_cable_out_occur); }
static void mtk_tuning_voltage(int curr_level, int target_level) { int is_increase = 0; int exec_level = 0; CHR_CURRENT_ENUM chr_current = CHARGE_CURRENT_70_00_MA; /* if(BMT_status.charger_exist == KAL_TRUE) */ if(ta_cable_out_occur == KAL_FALSE) { battery_log(BAT_LOG_CRTI, "mtk_tuning_voltage() start\n"); if(curr_level >= target_level) { exec_level = (curr_level-target_level)/200; is_increase = 0; } else { exec_level = (target_level-curr_level)/200; is_increase = 1; } if(exec_level == 0) { /* curr_level == target_level */ battery_charging_control(CHARGING_CMD_SET_CURRENT,&chr_current); msleep(50); // for VChr reading to check error occur or not } battery_log(BAT_LOG_CRTI, "mtk_tuning_voltage() before : ta_current_level=%d, real_v_chr=%d, is_ta_connect=%d, is_increase=%d, exec_level=%d\n", ta_current_level, battery_meter_get_charger_voltage(), is_ta_connect, is_increase, exec_level); while((exec_level > 0) && (ta_cable_out_occur == KAL_FALSE)) { if(is_increase == 1) mtk_ta_increase(); else mtk_ta_decrease(); battery_log(BAT_LOG_CRTI, "mtk_tuning_voltage() after ta_current_level=%d, real_v_chr=%d, is_ta_connect=%d, is_increase=%d, exec_level=%d\n", ta_current_level, battery_meter_get_charger_voltage(), is_ta_connect, is_increase, exec_level); exec_level--; } battery_log(BAT_LOG_CRTI, "mtk_tuning_voltage() end\n"); } else { ta_check_chr_type = KAL_TRUE; //is_ta_connect = KAL_FALSE; battery_log(BAT_LOG_CRTI, "mtk_tuning_voltage(), Cable Out\n"); } }