mc146818rtc.h 720 B

12345678910111213141516171819202122232425262728293031
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Machine dependent access functions for RTC registers.
  4. */
  5. #ifndef _ASM_MC146818RTC_H
  6. #define _ASM_MC146818RTC_H
  7. #include <linux/io.h>
  8. #include <linux/kernel.h>
  9. #define RTC_IRQ BUILD_BUG_ON(1)
  10. #ifndef RTC_PORT
  11. #define RTC_PORT(x) (0x70 + (x))
  12. #define RTC_ALWAYS_BCD 1 /* RTC operates in binary mode */
  13. #endif
  14. /*
  15. * The yet supported machines all access the RTC index register via
  16. * an ISA port access but the way to access the date register differs ...
  17. */
  18. #define CMOS_READ(addr) ({ \
  19. outb_p((addr),RTC_PORT(0)); \
  20. inb_p(RTC_PORT(1)); \
  21. })
  22. #define CMOS_WRITE(val, addr) ({ \
  23. outb_p((addr),RTC_PORT(0)); \
  24. outb_p((val),RTC_PORT(1)); \
  25. })
  26. #endif /* _ASM_MC146818RTC_H */