static int adc_get_ocv(struct i2c_client *client) { struct sec_fuelgauge_info *fuelgauge = i2c_get_clientdata(client); int voltage_ocv; voltage_ocv = (int)adc_calculate_average(fuelgauge, ADC_CHANNEL_VOLTAGE_OCV, fuelgauge->info.voltage_avg); return voltage_ocv; }
static int adc_get_avg_vcell(struct i2c_client *client) { struct sec_fuelgauge_info *fuelgauge = i2c_get_clientdata(client); int voltage_avg; voltage_avg = (int)adc_calculate_average(fuelgauge, ADC_CHANNEL_VOLTAGE_AVG, fuelgauge->info.voltage_now); return voltage_avg; }
static int adc_get_ocv(struct i2c_client *client) { struct sec_fuelgauge_info *fuelgauge = i2c_get_clientdata(client); int voltage_ocv; voltage_ocv = (int)adc_calculate_average(fuelgauge, ADC_CHANNEL_VOLTAGE_OCV, fuelgauge->info.voltage_avg); #if defined(DEBUG) { int i; printk("%s : ", __func__); for(i=0;i<ADC_HISTORY_SIZE;i++) printk("%d, ", fuelgauge->info. adc_sample[ADC_CHANNEL_VOLTAGE_OCV].adc_arr[i]); printk("\n"); } #endif return voltage_ocv; }
static void adc_reset_voltage_ocv(struct i2c_client *client, int voltage_avg) { struct sec_fuelgauge_info *fuelgauge = i2c_get_clientdata(client); int i; for (i = 0; i < ADC_HISTORY_SIZE; i++) adc_calculate_average(fuelgauge, ADC_CHANNEL_VOLTAGE_OCV, voltage_avg); #if defined(DEBUG) { int k; printk("%s : ", __func__); for(k=0;k<ADC_HISTORY_SIZE;k++) printk("%d, ", fuelgauge->info. adc_sample[ADC_CHANNEL_VOLTAGE_OCV].adc_arr[k]); printk("\n"); } #endif dev_dbg(&client->dev, "%s: reset open circuit voltage as %dmV\n", __func__, voltage_avg); }
static void adc_reset_voltage_avg( struct i2c_client *client, int voltage_now, int percentage) { struct sec_fuelgauge_info *fuelgauge = i2c_get_clientdata(client); int i; for (i = 0; i < (ADC_HISTORY_SIZE * percentage / 100); i++) adc_calculate_average(fuelgauge, ADC_CHANNEL_VOLTAGE_AVG, voltage_now); #if defined(DEBUG) { int k; printk("%s : ", __func__); for(k=0;k<ADC_HISTORY_SIZE;k++) printk("%d, ", fuelgauge->info. adc_sample[ADC_CHANNEL_VOLTAGE_AVG].adc_arr[k]); printk("\n"); } #endif dev_dbg(&client->dev, "%s: reset average voltage as %dmV (%d%%)\n", __func__, voltage_now, percentage); }