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

#ifdef IN_MPERS

# error static const struct xlat mtd_type_options in mpers mode

#else

static
const struct xlat mtd_type_options[] = {
#if defined(MTD_ABSENT) || (defined(HAVE_DECL_MTD_ABSENT) && HAVE_DECL_MTD_ABSENT)
  XLAT(MTD_ABSENT),
#endif
#if defined(MTD_RAM) || (defined(HAVE_DECL_MTD_RAM) && HAVE_DECL_MTD_RAM)
  XLAT(MTD_RAM),
#endif
#if defined(MTD_ROM) || (defined(HAVE_DECL_MTD_ROM) && HAVE_DECL_MTD_ROM)
  XLAT(MTD_ROM),
#endif
#if defined(MTD_NORFLASH) || (defined(HAVE_DECL_MTD_NORFLASH) && HAVE_DECL_MTD_NORFLASH)
  XLAT(MTD_NORFLASH),
#endif
#if defined(MTD_NANDFLASH) || (defined(HAVE_DECL_MTD_NANDFLASH) && HAVE_DECL_MTD_NANDFLASH)
  XLAT(MTD_NANDFLASH),
#endif
#if defined(MTD_DATAFLASH) || (defined(HAVE_DECL_MTD_DATAFLASH) && HAVE_DECL_MTD_DATAFLASH)
  XLAT(MTD_DATAFLASH),
#endif
#if defined(MTD_UBIVOLUME) || (defined(HAVE_DECL_MTD_UBIVOLUME) && HAVE_DECL_MTD_UBIVOLUME)
  XLAT(MTD_UBIVOLUME),
#endif
#if defined(MTD_MLCNANDFLASH) || (defined(HAVE_DECL_MTD_MLCNANDFLASH) && HAVE_DECL_MTD_MLCNANDFLASH)
  XLAT(MTD_MLCNANDFLASH),
#endif
 XLAT_END
};

#endif /* !IN_MPERS */
