/* Generated by ./src/xlat/gen.sh from ./src/xlat/rtc_features.in; do not edit. */

#include "gcc_compat.h"
#include "static_assert.h"

#undef XLAT_PREV_VAL

#ifndef XLAT_MACROS_ONLY

# ifdef IN_MPERS

extern const struct xlat rtc_features[];

# else

DIAG_PUSH_IGNORE_TAUTOLOGICAL_CONSTANT_COMPARE
static const struct xlat_data rtc_features_xdata[] = {
#if defined(RTC_FEATURE_ALARM) || (defined(HAVE_DECL_RTC_FEATURE_ALARM) && HAVE_DECL_RTC_FEATURE_ALARM)
  XLAT_PAIR(1ULL<<RTC_FEATURE_ALARM, "1<<RTC_FEATURE_ALARM"),
 #define XLAT_VAL_0 ((unsigned) (1ULL<<RTC_FEATURE_ALARM))
 #define XLAT_STR_0 "1<<RTC_FEATURE_ALARM"
#endif
#if defined(RTC_FEATURE_ALARM_RES_MINUTE) || (defined(HAVE_DECL_RTC_FEATURE_ALARM_RES_MINUTE) && HAVE_DECL_RTC_FEATURE_ALARM_RES_MINUTE)
  XLAT_PAIR(1ULL<<RTC_FEATURE_ALARM_RES_MINUTE, "1<<RTC_FEATURE_ALARM_RES_MINUTE"),
 #define XLAT_VAL_1 ((unsigned) (1ULL<<RTC_FEATURE_ALARM_RES_MINUTE))
 #define XLAT_STR_1 "1<<RTC_FEATURE_ALARM_RES_MINUTE"
#endif
#if defined(RTC_FEATURE_NEED_WEEK_DAY) || (defined(HAVE_DECL_RTC_FEATURE_NEED_WEEK_DAY) && HAVE_DECL_RTC_FEATURE_NEED_WEEK_DAY)
  XLAT_PAIR(1ULL<<RTC_FEATURE_NEED_WEEK_DAY, "1<<RTC_FEATURE_NEED_WEEK_DAY"),
 #define XLAT_VAL_2 ((unsigned) (1ULL<<RTC_FEATURE_NEED_WEEK_DAY))
 #define XLAT_STR_2 "1<<RTC_FEATURE_NEED_WEEK_DAY"
#endif
#if defined(RTC_FEATURE_ALARM_RES_2S) || (defined(HAVE_DECL_RTC_FEATURE_ALARM_RES_2S) && HAVE_DECL_RTC_FEATURE_ALARM_RES_2S)
  XLAT_PAIR(1ULL<<RTC_FEATURE_ALARM_RES_2S, "1<<RTC_FEATURE_ALARM_RES_2S"),
 #define XLAT_VAL_3 ((unsigned) (1ULL<<RTC_FEATURE_ALARM_RES_2S))
 #define XLAT_STR_3 "1<<RTC_FEATURE_ALARM_RES_2S"
#endif
#if defined(RTC_FEATURE_UPDATE_INTERRUPT) || (defined(HAVE_DECL_RTC_FEATURE_UPDATE_INTERRUPT) && HAVE_DECL_RTC_FEATURE_UPDATE_INTERRUPT)
  XLAT_PAIR(1ULL<<RTC_FEATURE_UPDATE_INTERRUPT, "1<<RTC_FEATURE_UPDATE_INTERRUPT"),
 #define XLAT_VAL_4 ((unsigned) (1ULL<<RTC_FEATURE_UPDATE_INTERRUPT))
 #define XLAT_STR_4 "1<<RTC_FEATURE_UPDATE_INTERRUPT"
#endif
#if defined(RTC_FEATURE_CORRECTION) || (defined(HAVE_DECL_RTC_FEATURE_CORRECTION) && HAVE_DECL_RTC_FEATURE_CORRECTION)
  XLAT_PAIR(1ULL<<RTC_FEATURE_CORRECTION, "1<<RTC_FEATURE_CORRECTION"),
 #define XLAT_VAL_5 ((unsigned) (1ULL<<RTC_FEATURE_CORRECTION))
 #define XLAT_STR_5 "1<<RTC_FEATURE_CORRECTION"
#endif
#if defined(RTC_FEATURE_BACKUP_SWITCH_MODE) || (defined(HAVE_DECL_RTC_FEATURE_BACKUP_SWITCH_MODE) && HAVE_DECL_RTC_FEATURE_BACKUP_SWITCH_MODE)
  XLAT_PAIR(1ULL<<RTC_FEATURE_BACKUP_SWITCH_MODE, "1<<RTC_FEATURE_BACKUP_SWITCH_MODE"),
 #define XLAT_VAL_6 ((unsigned) (1ULL<<RTC_FEATURE_BACKUP_SWITCH_MODE))
 #define XLAT_STR_6 "1<<RTC_FEATURE_BACKUP_SWITCH_MODE"
#endif
#if defined(RTC_FEATURE_ALARM_WAKEUP_ONLY) || (defined(HAVE_DECL_RTC_FEATURE_ALARM_WAKEUP_ONLY) && HAVE_DECL_RTC_FEATURE_ALARM_WAKEUP_ONLY)
  XLAT_PAIR(1ULL<<RTC_FEATURE_ALARM_WAKEUP_ONLY, "1<<RTC_FEATURE_ALARM_WAKEUP_ONLY"),
 #define XLAT_VAL_7 ((unsigned) (1ULL<<RTC_FEATURE_ALARM_WAKEUP_ONLY))
 #define XLAT_STR_7 "1<<RTC_FEATURE_ALARM_WAKEUP_ONLY"
#endif

};
#  if !(defined HAVE_M32_MPERS || defined HAVE_MX32_MPERS)
static
#  endif
const struct xlat rtc_features[1] = { {
 .data = rtc_features_xdata,
 .size = ARRAY_SIZE(rtc_features_xdata),
 .type = XT_NORMAL,
 .flags_mask = 0
#  ifdef XLAT_VAL_0
  | XLAT_VAL_0
#  endif
#  ifdef XLAT_VAL_1
  | XLAT_VAL_1
#  endif
#  ifdef XLAT_VAL_2
  | XLAT_VAL_2
#  endif
#  ifdef XLAT_VAL_3
  | XLAT_VAL_3
#  endif
#  ifdef XLAT_VAL_4
  | XLAT_VAL_4
#  endif
#  ifdef XLAT_VAL_5
  | XLAT_VAL_5
#  endif
#  ifdef XLAT_VAL_6
  | XLAT_VAL_6
#  endif
#  ifdef XLAT_VAL_7
  | XLAT_VAL_7
#  endif
  ,
 .flags_strsz = 0
#  ifdef XLAT_STR_0
  + sizeof(XLAT_STR_0)
#  endif
#  ifdef XLAT_STR_1
  + sizeof(XLAT_STR_1)
#  endif
#  ifdef XLAT_STR_2
  + sizeof(XLAT_STR_2)
#  endif
#  ifdef XLAT_STR_3
  + sizeof(XLAT_STR_3)
#  endif
#  ifdef XLAT_STR_4
  + sizeof(XLAT_STR_4)
#  endif
#  ifdef XLAT_STR_5
  + sizeof(XLAT_STR_5)
#  endif
#  ifdef XLAT_STR_6
  + sizeof(XLAT_STR_6)
#  endif
#  ifdef XLAT_STR_7
  + sizeof(XLAT_STR_7)
#  endif
  ,
} };
DIAG_POP_IGNORE_TAUTOLOGICAL_CONSTANT_COMPARE

#  undef XLAT_STR_0
#  undef XLAT_VAL_0
#  undef XLAT_STR_1
#  undef XLAT_VAL_1
#  undef XLAT_STR_2
#  undef XLAT_VAL_2
#  undef XLAT_STR_3
#  undef XLAT_VAL_3
#  undef XLAT_STR_4
#  undef XLAT_VAL_4
#  undef XLAT_STR_5
#  undef XLAT_VAL_5
#  undef XLAT_STR_6
#  undef XLAT_VAL_6
#  undef XLAT_STR_7
#  undef XLAT_VAL_7
# endif /* !IN_MPERS */

#endif /* !XLAT_MACROS_ONLY */
