Searched refs:freq_ppb (Results 1 – 4 of 4) sorted by relevance
/Zephyr-latest/drivers/rtc/ |
D | rtc_bq32002.c | 256 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 …]
|
D | rtc_rx8130ce.c | 586 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 …]
|
D | rtc_rv8803.c | 697 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()
|
D | rtc_pcf8523.c | 718 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()
|