Lines Matching full:calibration
222 static int ab8500_rtc_set_calibration(struct device *dev, int calibration) in ab8500_rtc_set_calibration() argument
228 * Check that the calibration value (which is in units of 0.5 in ab8500_rtc_set_calibration()
234 if ((calibration < -127) || (calibration > 127)) { in ab8500_rtc_set_calibration()
244 if (calibration >= 0) in ab8500_rtc_set_calibration()
245 rtccal = 0x7F & calibration; in ab8500_rtc_set_calibration()
247 rtccal = ~(calibration - 1) | 0x80; in ab8500_rtc_set_calibration()
255 static int ab8500_rtc_get_calibration(struct device *dev, int *calibration) in ab8500_rtc_get_calibration() argument
269 *calibration = 0 - (rtccal & 0x7F); in ab8500_rtc_get_calibration()
271 *calibration = 0x7F & rtccal; in ab8500_rtc_get_calibration()
282 int calibration = 0; in ab8500_sysfs_store_rtc_calibration() local
284 if (sscanf(buf, " %i ", &calibration) != 1) { in ab8500_sysfs_store_rtc_calibration()
285 dev_err(dev, "Failed to store RTC calibration attribute\n"); in ab8500_sysfs_store_rtc_calibration()
289 retval = ab8500_rtc_set_calibration(dev, calibration); in ab8500_sysfs_store_rtc_calibration()
298 int calibration = 0; in ab8500_sysfs_show_rtc_calibration() local
300 retval = ab8500_rtc_get_calibration(dev, &calibration); in ab8500_sysfs_show_rtc_calibration()
302 dev_err(dev, "Failed to read RTC calibration attribute\n"); in ab8500_sysfs_show_rtc_calibration()
307 return sprintf(buf, "%d\n", calibration); in ab8500_sysfs_show_rtc_calibration()