diff options
Diffstat (limited to 'roms/u-boot/arch/sandbox/include/asm/rtc.h')
-rw-r--r-- | roms/u-boot/arch/sandbox/include/asm/rtc.h | 56 |
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 |