Home | History | Annotate | Download | only in i2c

Lines Matching defs:dt

281 	struct clock_ymdhms dt;
285 if ((err = pcfrtc_clock_read(sc, &dt, &centi)))
288 tv->tv_sec = clock_ymdhms_to_secs(&dt);
298 struct clock_ymdhms dt;
301 clock_secs_to_ymdhms(tv->tv_sec, &dt);
303 if ((err = pcfrtc_clock_write(sc, &dt, tv->tv_usec / 10000)) != 0)
323 pcfrtc_clock_read(struct pcfrtc_softc *sc, struct clock_ymdhms *dt,
358 dt->dt_sec = bcdtobin(bcd[PCF8583_REG_SEC]);
359 dt->dt_min = bcdtobin(bcd[PCF8583_REG_MIN]);
360 dt->dt_hour = bcdtobin(bcd[PCF8583_REG_HOUR] & PCF8583_HOUR_MASK);
362 dt->dt_hour %= 12; /* 12AM -> 0, 12PM -> 12 */
364 dt->dt_hour += 12;
367 dt->dt_day = bcdtobin(bcd[PCF8583_REG_YEARDATE] & PCF8583_DATE_MASK);
368 dt->dt_mon = bcdtobin(bcd[PCF8583_REG_WKDYMON] & PCF8583_MON_MASK);
370 dt->dt_year = bcd[8] + (bcd[9] * 100);
376 while (dt->dt_year % 4 !=
379 dt->dt_year++;
386 pcfrtc_clock_write(struct pcfrtc_softc *sc, struct clock_ymdhms *dt,
397 bcd[PCF8583_REG_SEC] = bintobcd(dt->dt_sec);
398 bcd[PCF8583_REG_MIN] = bintobcd(dt->dt_min);
399 bcd[PCF8583_REG_HOUR] = bintobcd(dt->dt_hour) & PCF8583_HOUR_MASK;
400 bcd[PCF8583_REG_YEARDATE] = bintobcd(dt->dt_day) |
401 ((dt->dt_year % 4) << PCF8583_YEAR_SHIFT);
402 bcd[PCF8583_REG_WKDYMON] = bintobcd(dt->dt_mon) |
403 ((dt->dt_wday % 4) << PCF8583_WKDY_SHIFT);
404 bcd[8] = dt->dt_year % 100;
405 bcd[9] = dt->dt_year / 100;