mvrtc.h 868 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. * Copyright (C) 2011
  3. * Jason Cooper <u-boot@lakedaemon.net>
  4. *
  5. * SPDX-License-Identifier: GPL-2.0+
  6. */
  7. /*
  8. * Date & Time support for Marvell Integrated RTC
  9. */
  10. #ifndef _MVRTC_H_
  11. #define _MVRTC_H_
  12. #include <asm/arch/soc.h>
  13. #include <linux/compiler.h>
  14. /* RTC registers */
  15. struct mvrtc_registers {
  16. u32 time;
  17. u32 date;
  18. };
  19. /* time register */
  20. #define MVRTC_SEC_SFT 0
  21. #define MVRTC_SEC_MSK 0x7f
  22. #define MVRTC_MIN_SFT 8
  23. #define MVRTC_MIN_MSK 0x7f
  24. #define MVRTC_HOUR_SFT 16
  25. #define MVRTC_HOUR_MSK 0x3f
  26. #define MVRTC_DAY_SFT 24
  27. #define MVRTC_DAY_MSK 0x7
  28. /*
  29. * Hour format bit
  30. * 1 = 12 hour clock
  31. * 0 = 24 hour clock
  32. */
  33. #define MVRTC_HRFMT_MSK 0x00400000
  34. /* date register */
  35. #define MVRTC_DATE_SFT 0
  36. #define MVRTC_DATE_MSK 0x3f
  37. #define MVRTC_MON_SFT 8
  38. #define MVRTC_MON_MSK 0x1f
  39. #define MVRTC_YEAR_SFT 16
  40. #define MVRTC_YEAR_MSK 0xff
  41. #endif