aboutsummaryrefslogtreecommitdiffstats
path: root/roms/u-boot/arch/sandbox/include/asm/rtc.h
diff options
context:
space:
mode:
Diffstat (limited to 'roms/u-boot/arch/sandbox/include/asm/rtc.h')
-rw-r--r--roms/u-boot/arch/sandbox/include/asm/rtc.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/roms/u-boot/arch/sandbox/include/asm/rtc.h b/roms/u-boot/arch/sandbox/include/asm/rtc.h
new file mode 100644
index 000000000..025cd6c67
--- /dev/null
+++ b/roms/u-boot/arch/sandbox/include/asm/rtc.h
@@ -0,0 +1,56 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Simulate an I2C real time clock
+ *
+ * Copyright (c) 2015 Google, Inc
+ * Written by Simon Glass <sjg@chromium.org>
+ */
+
+#ifndef __asm_rtc_h
+#define __asm_rtc_h
+
+#include <dt-structs.h>
+
+/* Register numbers in the sandbox RTC */
+enum {
+ REG_SEC = 5,
+ REG_MIN,
+ REG_HOUR,
+ REG_MDAY,
+ REG_MON,
+ REG_YEAR,
+ REG_WDAY,
+
+ REG_RESET = 0x20,
+
+ REG_AUX0 = 0x30,
+ REG_AUX1,
+ REG_AUX2,
+ REG_AUX3,
+
+ REG_COUNT = 0x80,
+};
+
+/**
+ * struct sandbox_i2c_rtc_plat_data - platform data for the RTC
+ *
+ * @base_time: Base system time when RTC device was bound
+ * @offset: RTC offset from current system time
+ * @use_system_time: true to use system time, false to use @base_time
+ * @reg: Register values
+ */
+struct sandbox_i2c_rtc_plat_data {
+#if CONFIG_IS_ENABLED(OF_PLATDATA)
+ struct dtd_sandbox_i2c_rtc_emul dtplat;
+#endif
+ long base_time;
+ long offset;
+ bool use_system_time;
+ u8 reg[REG_COUNT];
+};
+
+struct sandbox_i2c_rtc {
+ unsigned int offset_secs;
+};
+
+#endif