static int get_hw_btsmdpa_temp(void) { int ret = 0, data[4], i, ret_value = 0, ret_temp = 0, output; int times=1, Channel=g_RAP_ADC_channel;//6752=0(AUX_IN1_NTC) if( IMM_IsAdcInitReady() == 0 ) { printk("[thermal_auxadc_get_data]: AUXADC is not ready\n"); return 0; } i = times; while (i--) { ret_value = IMM_GetOneChannelValue(Channel, data, &ret_temp); ret += ret_temp; mtkts_btsmdpa_dprintk("[thermal_auxadc_get_data(AUX_IN1_NTC)]: ret_temp=%d\n",ret_temp); mtkts_btsmdpa_dprintk("[thermal_auxadc_get_data(AUX_IN1_NTC)]: ret_temp=%d\n",ret_temp); } //ret = ret*1500/4096 ; ret = ret*1800/4096;//82's ADC power mtkts_btsmdpa_dprintk("APtery output mV = %d\n",ret); output = mtk_ts_btsmdpa_volt_to_temp(ret); mtkts_btsmdpa_dprintk("BTSMDPA output temperature = %d\n",output); return output; }
static int get_hw_battery2_temp(void) { int ret = 0, data[4], i, ret_value = 0, ret_temp = 0, output; int times=1, Channel=0;//6589=1,6582=0(AUX_IN0_NTC) if( IMM_IsAdcInitReady() == 0 ) { printk("[thermal_auxadc_get_data]: AUXADC is not ready\n"); return 0; } i = times; while (i--) { ret_value = IMM_GetOneChannelValue(Channel, data, &ret_temp); ret += ret_temp; mtktsbattery2_dprintk("[thermal_auxadc_get_data(AUX_IN0_NTC)]: ret_temp=%d\n",ret_temp); } #if 0 Channel = 0; ret = 0 ; ret_temp = 0; i = times; while (i--) { ret_value = IMM_GetOneChannelValue(Channel, data, &ret_temp); ret += ret_temp; printk("[thermal_auxadc_get_data(ADCIN %d)]: ret_temp=%d\n",Channel,ret_temp); } Channel = 2; ret = 0 ; ret_temp = 0; i = times; while (i--) { ret_value = IMM_GetOneChannelValue(Channel, data, &ret_temp); ret += ret_temp; printk("[thermal_auxadc_get_data(ADCIN %d)]: ret_temp=%d\n",Channel,ret_temp); } #endif //ret = ret*1500/4096 ; ret = ret*1800/4096;//82's ADC power mtktsbattery2_dprintk("Battery output mV = %d\n",ret); output = BattVoltToTemp(ret); mtktsbattery2_dprintk("Battery output temperature = %d\n",output); return output; }
static int get_hw_battery2_temp(void) { int data[4], ret_value = 0, ret_temp = 0, output; if( IMM_IsAdcInitReady() == 0 ) { mtktsbattery2_dprintk("[thermal_auxadc_get_data]: AUXADC is not ready\n"); return 0; } ret_value = IMM_GetOneChannelValue(AUXADC_CHANNEL, data, &ret_temp); mtktsbattery2_dprintk("[thermal_auxadc_get_data(ADCIN1)]: ret_temp=%d\n",ret_temp); ret_temp = ret_temp*1500/4096; output = BattVoltageToTemp(ret_temp); mtktsbattery2_dprintk("Battery output temperature mV= %d %d\n",output, ret_temp); return output; }
static int thermal_auxadc_get_data(int times, int Channel) { int ret = 0, data[4], i, ret_value = 0, ret_temp = 0; if( IMM_IsAdcInitReady() == 0 ) { // mtktscpu_dprintk("[thermal_auxadc_get_data]: AUXADC is not ready\n"); return 0; } i = times; while (i--) { ret_value = IMM_GetOneChannelValue(Channel, data, &ret_temp); ret += ret_temp; // mtktscpu_dprintk("[thermal_auxadc_get_data(ADCIN5)]: ret_temp=%d\n",ret_temp); } ret = ret / times; return ret; }
static int get_hw_bts_temp(void) { int ret = 0, data[4], i, ret_value = 0, ret_temp = 0, output; int times=1, Channel=g_RAP_ADC_channel;//6752=0(AUX_IN0_NTC) static int valid_temp; if( IMM_IsAdcInitReady() == 0 ) { printk("[thermal_auxadc_get_data]: AUXADC is not ready\n"); return 0; } i = times; while (i--) { ret_value = IMM_GetOneChannelValue(Channel, data, &ret_temp); if (ret_value == -1) // AUXADC is busy { ret_temp = valid_temp; } else { valid_temp = ret_temp; } ret += ret_temp; mtkts_bts_dprintk("[thermal_auxadc_get_data(AUX_IN0_NTC)]: ret_temp=%d\n",ret_temp); } //Mt_auxadc_hal.c //#define VOLTAGE_FULL_RANGE 1500 // VA voltage //#define AUXADC_PRECISE 4096 // 12 bits ret = ret*1500/4096 ; //ret = ret*1800/4096;//82's ADC power mtkts_bts_dprintk("APtery output mV = %d\n",ret); output = mtk_ts_bts_volt_to_temp(ret); mtkts_bts_dprintk("BTS output temperature = %d\n",output); return output; }
static kal_int32 read_adc_v_bat_temp(void *data) { #if defined(CONFIG_POWER_EXT) *(kal_int32*)(data) = 0; #else #if defined(MTK_PCB_TBAT_FEATURE) int ret = 0, data[4], i, ret_value = 0, ret_temp = 0; int Channel=1; if( IMM_IsAdcInitReady() == 0 ) { bm_print(BM_LOG_CRTI, "[get_tbat_volt] AUXADC is not ready"); return 0; } i = times; while (i--) { ret_value = IMM_GetOneChannelValue(Channel, data, &ret_temp); ret += ret_temp; bm_print(BM_LOG_FULL, "[get_tbat_volt] ret_temp=%d\n",ret_temp); } ret = ret*1500/4096 ; ret = ret/times; bm_print(BM_LOG_CRTI, "[get_tbat_volt] Battery output mV = %d\n",ret); *(kal_int32*)(data) = ret; #else bm_print(BM_LOG_FULL, "[read_adc_v_charger] return PMIC_IMM_GetOneChannelValue(4,times,1);\n"); *(kal_int32*)(data) = PMIC_IMM_GetOneChannelValue(VBATTEMP_CHANNEL_NUMBER,*(kal_int32*)(data),1); #endif #endif return STATUS_OK; }