//*****************************************************************************
//
//  am_reg_rtc.h
//! @file
//!
//! @brief Register macros for the RTC module
//
//*****************************************************************************

//*****************************************************************************
//
// Copyright (c) 2017, Ambiq Micro
// All rights reserved.
// 
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
// 
// 1. Redistributions of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer.
// 
// 2. Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in the
// documentation and/or other materials provided with the distribution.
// 
// 3. Neither the name of the copyright holder nor the names of its
// contributors may be used to endorse or promote products derived from this
// software without specific prior written permission.
// 
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
// POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision v1.2.10-2-gea660ad-hotfix2 of the AmbiqSuite Development Package.
//
//*****************************************************************************
#ifndef AM_REG_RTC_H
#define AM_REG_RTC_H

//*****************************************************************************
//
// Instance finder. (1 instance(s) available)
//
//*****************************************************************************
#define AM_REG_RTC_NUM_MODULES                       1
#define AM_REG_RTCn(n) \
    (REG_RTC_BASEADDR + 0x00000000 * n)

//*****************************************************************************
//
// Register offsets.
//
//*****************************************************************************
#define AM_REG_RTC_CTRLOW_O                          0x00000040
#define AM_REG_RTC_CTRUP_O                           0x00000044
#define AM_REG_RTC_ALMLOW_O                          0x00000048
#define AM_REG_RTC_ALMUP_O                           0x0000004C
#define AM_REG_RTC_RTCCTL_O                          0x00000050
#define AM_REG_RTC_INTEN_O                           0x00000100
#define AM_REG_RTC_INTSTAT_O                         0x00000104
#define AM_REG_RTC_INTCLR_O                          0x00000108
#define AM_REG_RTC_INTSET_O                          0x0000010C

//*****************************************************************************
//
// RTC_INTEN - RTC Interrupt Register: Enable
//
//*****************************************************************************
// RTC Alarm interrupt
#define AM_REG_RTC_INTEN_ALM_S                       3
#define AM_REG_RTC_INTEN_ALM_M                       0x00000008
#define AM_REG_RTC_INTEN_ALM(n)                      (((uint32_t)(n) << 3) & 0x00000008)

// XT Oscillator Fail interrupt
#define AM_REG_RTC_INTEN_OF_S                        2
#define AM_REG_RTC_INTEN_OF_M                        0x00000004
#define AM_REG_RTC_INTEN_OF(n)                       (((uint32_t)(n) << 2) & 0x00000004)

// Autocalibration Complete interrupt
#define AM_REG_RTC_INTEN_ACC_S                       1
#define AM_REG_RTC_INTEN_ACC_M                       0x00000002
#define AM_REG_RTC_INTEN_ACC(n)                      (((uint32_t)(n) << 1) & 0x00000002)

// Autocalibration Fail interrupt
#define AM_REG_RTC_INTEN_ACF_S                       0
#define AM_REG_RTC_INTEN_ACF_M                       0x00000001
#define AM_REG_RTC_INTEN_ACF(n)                      (((uint32_t)(n) << 0) & 0x00000001)

//*****************************************************************************
//
// RTC_INTSTAT - RTC Interrupt Register: Status
//
//*****************************************************************************
// RTC Alarm interrupt
#define AM_REG_RTC_INTSTAT_ALM_S                     3
#define AM_REG_RTC_INTSTAT_ALM_M                     0x00000008
#define AM_REG_RTC_INTSTAT_ALM(n)                    (((uint32_t)(n) << 3) & 0x00000008)

// XT Oscillator Fail interrupt
#define AM_REG_RTC_INTSTAT_OF_S                      2
#define AM_REG_RTC_INTSTAT_OF_M                      0x00000004
#define AM_REG_RTC_INTSTAT_OF(n)                     (((uint32_t)(n) << 2) & 0x00000004)

// Autocalibration Complete interrupt
#define AM_REG_RTC_INTSTAT_ACC_S                     1
#define AM_REG_RTC_INTSTAT_ACC_M                     0x00000002
#define AM_REG_RTC_INTSTAT_ACC(n)                    (((uint32_t)(n) << 1) & 0x00000002)

// Autocalibration Fail interrupt
#define AM_REG_RTC_INTSTAT_ACF_S                     0
#define AM_REG_RTC_INTSTAT_ACF_M                     0x00000001
#define AM_REG_RTC_INTSTAT_ACF(n)                    (((uint32_t)(n) << 0) & 0x00000001)

//*****************************************************************************
//
// RTC_INTCLR - RTC Interrupt Register: Clear
//
//*****************************************************************************
// RTC Alarm interrupt
#define AM_REG_RTC_INTCLR_ALM_S                      3
#define AM_REG_RTC_INTCLR_ALM_M                      0x00000008
#define AM_REG_RTC_INTCLR_ALM(n)                     (((uint32_t)(n) << 3) & 0x00000008)

// XT Oscillator Fail interrupt
#define AM_REG_RTC_INTCLR_OF_S                       2
#define AM_REG_RTC_INTCLR_OF_M                       0x00000004
#define AM_REG_RTC_INTCLR_OF(n)                      (((uint32_t)(n) << 2) & 0x00000004)

// Autocalibration Complete interrupt
#define AM_REG_RTC_INTCLR_ACC_S                      1
#define AM_REG_RTC_INTCLR_ACC_M                      0x00000002
#define AM_REG_RTC_INTCLR_ACC(n)                     (((uint32_t)(n) << 1) & 0x00000002)

// Autocalibration Fail interrupt
#define AM_REG_RTC_INTCLR_ACF_S                      0
#define AM_REG_RTC_INTCLR_ACF_M                      0x00000001
#define AM_REG_RTC_INTCLR_ACF(n)                     (((uint32_t)(n) << 0) & 0x00000001)

//*****************************************************************************
//
// RTC_INTSET - RTC Interrupt Register: Set
//
//*****************************************************************************
// RTC Alarm interrupt
#define AM_REG_RTC_INTSET_ALM_S                      3
#define AM_REG_RTC_INTSET_ALM_M                      0x00000008
#define AM_REG_RTC_INTSET_ALM(n)                     (((uint32_t)(n) << 3) & 0x00000008)

// XT Oscillator Fail interrupt
#define AM_REG_RTC_INTSET_OF_S                       2
#define AM_REG_RTC_INTSET_OF_M                       0x00000004
#define AM_REG_RTC_INTSET_OF(n)                      (((uint32_t)(n) << 2) & 0x00000004)

// Autocalibration Complete interrupt
#define AM_REG_RTC_INTSET_ACC_S                      1
#define AM_REG_RTC_INTSET_ACC_M                      0x00000002
#define AM_REG_RTC_INTSET_ACC(n)                     (((uint32_t)(n) << 1) & 0x00000002)

// Autocalibration Fail interrupt
#define AM_REG_RTC_INTSET_ACF_S                      0
#define AM_REG_RTC_INTSET_ACF_M                      0x00000001
#define AM_REG_RTC_INTSET_ACF(n)                     (((uint32_t)(n) << 0) & 0x00000001)

//*****************************************************************************
//
// RTC_CTRLOW - RTC Counters Lower
//
//*****************************************************************************
// Hours Counter
#define AM_REG_RTC_CTRLOW_CTRHR_S                    24
#define AM_REG_RTC_CTRLOW_CTRHR_M                    0x3F000000
#define AM_REG_RTC_CTRLOW_CTRHR(n)                   (((uint32_t)(n) << 24) & 0x3F000000)

// Minutes Counter
#define AM_REG_RTC_CTRLOW_CTRMIN_S                   16
#define AM_REG_RTC_CTRLOW_CTRMIN_M                   0x007F0000
#define AM_REG_RTC_CTRLOW_CTRMIN(n)                  (((uint32_t)(n) << 16) & 0x007F0000)

// Seconds Counter
#define AM_REG_RTC_CTRLOW_CTRSEC_S                   8
#define AM_REG_RTC_CTRLOW_CTRSEC_M                   0x00007F00
#define AM_REG_RTC_CTRLOW_CTRSEC(n)                  (((uint32_t)(n) << 8) & 0x00007F00)

// 100ths of a second Counter
#define AM_REG_RTC_CTRLOW_CTR100_S                   0
#define AM_REG_RTC_CTRLOW_CTR100_M                   0x000000FF
#define AM_REG_RTC_CTRLOW_CTR100(n)                  (((uint32_t)(n) << 0) & 0x000000FF)

//*****************************************************************************
//
// RTC_CTRUP - RTC Counters Upper
//
//*****************************************************************************
// Counter read error status
#define AM_REG_RTC_CTRUP_CTERR_S                     31
#define AM_REG_RTC_CTRUP_CTERR_M                     0x80000000
#define AM_REG_RTC_CTRUP_CTERR(n)                    (((uint32_t)(n) << 31) & 0x80000000)
#define AM_REG_RTC_CTRUP_CTERR_NOERR                 0x00000000
#define AM_REG_RTC_CTRUP_CTERR_RDERR                 0x80000000

// Century enable
#define AM_REG_RTC_CTRUP_CEB_S                       28
#define AM_REG_RTC_CTRUP_CEB_M                       0x10000000
#define AM_REG_RTC_CTRUP_CEB(n)                      (((uint32_t)(n) << 28) & 0x10000000)
#define AM_REG_RTC_CTRUP_CEB_DIS                     0x00000000
#define AM_REG_RTC_CTRUP_CEB_EN                      0x10000000

// Century
#define AM_REG_RTC_CTRUP_CB_S                        27
#define AM_REG_RTC_CTRUP_CB_M                        0x08000000
#define AM_REG_RTC_CTRUP_CB(n)                       (((uint32_t)(n) << 27) & 0x08000000)
#define AM_REG_RTC_CTRUP_CB_2000                     0x00000000
#define AM_REG_RTC_CTRUP_CB_1900_2100                0x08000000

// Weekdays Counter
#define AM_REG_RTC_CTRUP_CTRWKDY_S                   24
#define AM_REG_RTC_CTRUP_CTRWKDY_M                   0x07000000
#define AM_REG_RTC_CTRUP_CTRWKDY(n)                  (((uint32_t)(n) << 24) & 0x07000000)

// Years Counter
#define AM_REG_RTC_CTRUP_CTRYR_S                     16
#define AM_REG_RTC_CTRUP_CTRYR_M                     0x00FF0000
#define AM_REG_RTC_CTRUP_CTRYR(n)                    (((uint32_t)(n) << 16) & 0x00FF0000)

// Months Counter
#define AM_REG_RTC_CTRUP_CTRMO_S                     8
#define AM_REG_RTC_CTRUP_CTRMO_M                     0x00001F00
#define AM_REG_RTC_CTRUP_CTRMO(n)                    (((uint32_t)(n) << 8) & 0x00001F00)

// Date Counter
#define AM_REG_RTC_CTRUP_CTRDATE_S                   0
#define AM_REG_RTC_CTRUP_CTRDATE_M                   0x0000003F
#define AM_REG_RTC_CTRUP_CTRDATE(n)                  (((uint32_t)(n) << 0) & 0x0000003F)

//*****************************************************************************
//
// RTC_ALMLOW - RTC Alarms Lower
//
//*****************************************************************************
// Hours Alarm
#define AM_REG_RTC_ALMLOW_ALMHR_S                    24
#define AM_REG_RTC_ALMLOW_ALMHR_M                    0x3F000000
#define AM_REG_RTC_ALMLOW_ALMHR(n)                   (((uint32_t)(n) << 24) & 0x3F000000)

// Minutes Alarm
#define AM_REG_RTC_ALMLOW_ALMMIN_S                   16
#define AM_REG_RTC_ALMLOW_ALMMIN_M                   0x007F0000
#define AM_REG_RTC_ALMLOW_ALMMIN(n)                  (((uint32_t)(n) << 16) & 0x007F0000)

// Seconds Alarm
#define AM_REG_RTC_ALMLOW_ALMSEC_S                   8
#define AM_REG_RTC_ALMLOW_ALMSEC_M                   0x00007F00
#define AM_REG_RTC_ALMLOW_ALMSEC(n)                  (((uint32_t)(n) << 8) & 0x00007F00)

// 100ths of a second Alarm
#define AM_REG_RTC_ALMLOW_ALM100_S                   0
#define AM_REG_RTC_ALMLOW_ALM100_M                   0x000000FF
#define AM_REG_RTC_ALMLOW_ALM100(n)                  (((uint32_t)(n) << 0) & 0x000000FF)

//*****************************************************************************
//
// RTC_ALMUP - RTC Alarms Upper
//
//*****************************************************************************
// Weekdays Alarm
#define AM_REG_RTC_ALMUP_ALMWKDY_S                   16
#define AM_REG_RTC_ALMUP_ALMWKDY_M                   0x00070000
#define AM_REG_RTC_ALMUP_ALMWKDY(n)                  (((uint32_t)(n) << 16) & 0x00070000)

// Months Alarm
#define AM_REG_RTC_ALMUP_ALMMO_S                     8
#define AM_REG_RTC_ALMUP_ALMMO_M                     0x00001F00
#define AM_REG_RTC_ALMUP_ALMMO(n)                    (((uint32_t)(n) << 8) & 0x00001F00)

// Date Alarm
#define AM_REG_RTC_ALMUP_ALMDATE_S                   0
#define AM_REG_RTC_ALMUP_ALMDATE_M                   0x0000003F
#define AM_REG_RTC_ALMUP_ALMDATE(n)                  (((uint32_t)(n) << 0) & 0x0000003F)

//*****************************************************************************
//
// RTC_RTCCTL - RTC Control Register
//
//*****************************************************************************
// Hours Counter mode
#define AM_REG_RTC_RTCCTL_HR1224_S                   5
#define AM_REG_RTC_RTCCTL_HR1224_M                   0x00000020
#define AM_REG_RTC_RTCCTL_HR1224(n)                  (((uint32_t)(n) << 5) & 0x00000020)
#define AM_REG_RTC_RTCCTL_HR1224_24HR                0x00000000
#define AM_REG_RTC_RTCCTL_HR1224_12HR                0x00000020

// RTC input clock control
#define AM_REG_RTC_RTCCTL_RSTOP_S                    4
#define AM_REG_RTC_RTCCTL_RSTOP_M                    0x00000010
#define AM_REG_RTC_RTCCTL_RSTOP(n)                   (((uint32_t)(n) << 4) & 0x00000010)
#define AM_REG_RTC_RTCCTL_RSTOP_RUN                  0x00000000
#define AM_REG_RTC_RTCCTL_RSTOP_STOP                 0x00000010

// Alarm repeat interval
#define AM_REG_RTC_RTCCTL_RPT_S                      1
#define AM_REG_RTC_RTCCTL_RPT_M                      0x0000000E
#define AM_REG_RTC_RTCCTL_RPT(n)                     (((uint32_t)(n) << 1) & 0x0000000E)
#define AM_REG_RTC_RTCCTL_RPT_DIS                    0x00000000
#define AM_REG_RTC_RTCCTL_RPT_YEAR                   0x00000002
#define AM_REG_RTC_RTCCTL_RPT_MONTH                  0x00000004
#define AM_REG_RTC_RTCCTL_RPT_WEEK                   0x00000006
#define AM_REG_RTC_RTCCTL_RPT_DAY                    0x00000008
#define AM_REG_RTC_RTCCTL_RPT_HR                     0x0000000A
#define AM_REG_RTC_RTCCTL_RPT_MIN                    0x0000000C
#define AM_REG_RTC_RTCCTL_RPT_SEC                    0x0000000E

// Counter write control
#define AM_REG_RTC_RTCCTL_WRTC_S                     0
#define AM_REG_RTC_RTCCTL_WRTC_M                     0x00000001
#define AM_REG_RTC_RTCCTL_WRTC(n)                    (((uint32_t)(n) << 0) & 0x00000001)
#define AM_REG_RTC_RTCCTL_WRTC_DIS                   0x00000000
#define AM_REG_RTC_RTCCTL_WRTC_EN                    0x00000001

#endif // AM_REG_RTC_H
