2018-05-06 21:58:06 +00:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0+ */
|
2011-08-04 15:56:16 +00:00
|
|
|
/*
|
|
|
|
* Copyright (C) 2011
|
|
|
|
* Jason Cooper <u-boot@lakedaemon.net>
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Date & Time support for Marvell Integrated RTC
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _MVRTC_H_
|
|
|
|
#define _MVRTC_H_
|
|
|
|
|
2014-10-22 10:13:06 +00:00
|
|
|
#include <asm/arch/soc.h>
|
2014-11-26 07:00:58 +00:00
|
|
|
#include <linux/compiler.h>
|
2011-08-04 15:56:16 +00:00
|
|
|
|
|
|
|
/* RTC registers */
|
|
|
|
struct mvrtc_registers {
|
|
|
|
u32 time;
|
|
|
|
u32 date;
|
|
|
|
};
|
|
|
|
|
2018-05-28 11:39:58 +00:00
|
|
|
/* Platform data */
|
|
|
|
struct mvrtc_pdata {
|
|
|
|
phys_addr_t iobase;
|
|
|
|
};
|
|
|
|
|
2011-08-04 15:56:16 +00:00
|
|
|
/* time register */
|
|
|
|
#define MVRTC_SEC_SFT 0
|
|
|
|
#define MVRTC_SEC_MSK 0x7f
|
|
|
|
#define MVRTC_MIN_SFT 8
|
|
|
|
#define MVRTC_MIN_MSK 0x7f
|
|
|
|
#define MVRTC_HOUR_SFT 16
|
|
|
|
#define MVRTC_HOUR_MSK 0x3f
|
|
|
|
#define MVRTC_DAY_SFT 24
|
|
|
|
#define MVRTC_DAY_MSK 0x7
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Hour format bit
|
|
|
|
* 1 = 12 hour clock
|
|
|
|
* 0 = 24 hour clock
|
|
|
|
*/
|
|
|
|
#define MVRTC_HRFMT_MSK 0x00400000
|
|
|
|
|
|
|
|
/* date register */
|
|
|
|
#define MVRTC_DATE_SFT 0
|
|
|
|
#define MVRTC_DATE_MSK 0x3f
|
|
|
|
#define MVRTC_MON_SFT 8
|
|
|
|
#define MVRTC_MON_MSK 0x1f
|
|
|
|
#define MVRTC_YEAR_SFT 16
|
|
|
|
#define MVRTC_YEAR_MSK 0xff
|
|
|
|
|
|
|
|
#endif
|