Home
last modified time | relevance | path

Searched refs:freq_ppb (Results 1 – 4 of 4) sorted by relevance

/Zephyr-latest/drivers/rtc/
Drtc_bq32002.c256 static int bq32002_set_calibration(const struct device *dev, int32_t freq_ppb) in bq32002_set_calibration() argument
263 if ((freq_ppb < BQ32002_CAL_PPB_MIN) || (freq_ppb > BQ32002_CAL_PPB_MAX)) { in bq32002_set_calibration()
264 LOG_ERR("Calibration value %d ppb out of range", freq_ppb); in bq32002_set_calibration()
275 if (freq_ppb > 0) { in bq32002_set_calibration()
278 DIV_ROUND_CLOSEST(freq_ppb, BQ32002_CAL_PPB_PER_LSB_NEG) & BQ32002_CAL_MASK; in bq32002_set_calibration()
280 offset = DIV_ROUND_CLOSEST(-freq_ppb, BQ32002_CAL_PPB_PER_LSB_POS) & in bq32002_set_calibration()
290 LOG_DBG("Set calibration: frequency ppb: %d, offset value: %d, sign: %d", freq_ppb, offset, in bq32002_set_calibration()
291 freq_ppb > 0); in bq32002_set_calibration()
296 static int bq32002_get_calibration(const struct device *dev, int32_t *freq_ppb) in bq32002_get_calibration() argument
311 *freq_ppb = offset * BQ32002_CAL_PPB_PER_LSB_NEG; in bq32002_get_calibration()
[all …]
Drtc_rx8130ce.c586 static int rx8130ce_set_calibration(const struct device *dev, int32_t freq_ppb) in rx8130ce_set_calibration() argument
593 if (freq_ppb < DIGITAL_OFFSET_MIN || freq_ppb > DIGITAL_OFFSET_MAX) { in rx8130ce_set_calibration()
594 LOG_ERR("Invalid calibration value: %d", freq_ppb); in rx8130ce_set_calibration()
600 if (freq_ppb < 0) { in rx8130ce_set_calibration()
603 offset |= 128 - (-freq_ppb / DIGITAL_OFFSET_STEP_PPB); in rx8130ce_set_calibration()
604 } else if (freq_ppb > 0) { in rx8130ce_set_calibration()
606 offset |= freq_ppb / DIGITAL_OFFSET_STEP_PPB; in rx8130ce_set_calibration()
608 LOG_DBG("set calibration: offset = 0x%02x, from %d", offset, freq_ppb); in rx8130ce_set_calibration()
620 static int rx8130ce_get_calibration(const struct device *dev, int32_t *freq_ppb) in rx8130ce_get_calibration() argument
626 *freq_ppb = 0; in rx8130ce_get_calibration()
[all …]
Drtc_rv8803.c697 static int rv8803_set_calibration(const struct device *dev, int32_t freq_ppb) in rv8803_set_calibration() argument
701 if ((freq_ppb < RV8803_OFFSET_PPB_MIN) || (freq_ppb > RV8803_OFFSET_PPB_MAX)) { in rv8803_set_calibration()
702 LOG_ERR("Calibration value %d ppb out of range", freq_ppb); in rv8803_set_calibration()
706 offset = (freq_ppb / RV8803_OFFSET_PPB_PER_LSB) & RV8803_OFFSET_MASK; in rv8803_set_calibration()
708 LOG_DBG("Set calibration: frequency ppb: %d, offset value: %d", freq_ppb, offset); in rv8803_set_calibration()
713 static int rv8803_get_calibration(const struct device *dev, int32_t *freq_ppb) in rv8803_get_calibration() argument
723 *freq_ppb = sign_extend(offset, RV8803_OFFSET_SIGN_BIT_INDEX) * RV8803_OFFSET_PPB_PER_LSB; in rv8803_get_calibration()
725 LOG_DBG("Get calibration: frequency ppb: %d, offset value: %d", *freq_ppb, offset); in rv8803_get_calibration()
Drtc_pcf8523.c718 static int pcf8523_set_calibration(const struct device *dev, int32_t freq_ppb) in pcf8523_set_calibration() argument
720 int32_t period_ppb = freq_ppb * -1; in pcf8523_set_calibration()
724 LOG_WRN("calibration value (%d ppb) out of range", freq_ppb); in pcf8523_set_calibration()
734 LOG_DBG("freq_ppb = %d, period_ppb = %d, offset = %d", freq_ppb, period_ppb, offset); in pcf8523_set_calibration()
739 static int pcf8523_get_calibration(const struct device *dev, int32_t *freq_ppb) in pcf8523_get_calibration() argument
754 *freq_ppb = period_ppb * -1; in pcf8523_get_calibration()
756 LOG_DBG("freq_ppb = %d, period_ppb = %d, offset = %d", *freq_ppb, period_ppb, offset); in pcf8523_get_calibration()