static void update_adc_attribute(struct adc_attribute * instance)
{
	if( instance->adc_code != 0 ) {
		instance->last_value =
			ab8500_gpadc_read_raw(ab8500_gpadc_get(),
					      instance->adc_code, SAMPLE_16, RISING_EDGE, 0, ADC_SW);

		if (instance->average)
			update_average(instance->average ,instance->last_value);
	}

}
static int sec_bat_adc_ap_read(unsigned int channel)
{
	int adc;

	switch (channel) {
	case SEC_BAT_ADC_CHANNEL_TEMP:
	case SEC_BAT_ADC_CHANNEL_TEMP_AMBIENT:
		adc = ab8500_gpadc_read_raw(
			ab8500_gpadc_get(), BTEMP_BALL,
			SAMPLE_16, RISING_EDGE, 0, ADC_SW);
		break;
	case SEC_BAT_ADC_CHANNEL_FULL_CHECK:
		adc = ab8500_gpadc_convert(
			ab8500_gpadc_get(), USB_CHARGER_C);
		break;
	default:
		return -1;
		break;
	}
	return adc;
}