mc146818rtc.h 970 B

123456789101112131415161718192021222324252627282930313233343536
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Carsten Langgaard, carstenl@mips.com
  4. * Copyright (C) 1999,2000 MIPS Technologies, Inc. All rights reserved.
  5. * Copyright (C) 2003 by Ralf Baechle
  6. *
  7. * RTC routines for Malta style attached PIIX4 device, which contains a
  8. * Motorola MC146818A-compatible Real Time Clock.
  9. */
  10. #ifndef __ASM_MACH_MALTA_MC146818RTC_H
  11. #define __ASM_MACH_MALTA_MC146818RTC_H
  12. #include <asm/io.h>
  13. #include <asm/mips-boards/generic.h>
  14. #include <asm/mips-boards/malta.h>
  15. #define RTC_PORT(x) (0x70 + (x))
  16. #define RTC_IRQ 8
  17. static inline unsigned char CMOS_READ(unsigned long addr)
  18. {
  19. outb(addr, MALTA_RTC_ADR_REG);
  20. return inb(MALTA_RTC_DAT_REG);
  21. }
  22. static inline void CMOS_WRITE(unsigned char data, unsigned long addr)
  23. {
  24. outb(addr, MALTA_RTC_ADR_REG);
  25. outb(data, MALTA_RTC_DAT_REG);
  26. }
  27. #define RTC_ALWAYS_BCD 0
  28. #define mc146818_decode_year(year) ((year) < 70 ? (year) + 2000 : (year) + 1900)
  29. #endif /* __ASM_MACH_MALTA_MC146818RTC_H */