/*
 * Copyright (C) 2014 Nest labs, Inc.
 *
 * Configuration settings for the nest board
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License as
 * published by the Free Software Foundation; either version 2 of
 * the License, or (at your option) any later version.
 */

#ifndef __DIAMOND3_H
#define __DIAMOND3_H

#include <asm/arch/imx-regs.h>
#include <linux/sizes.h>

#define CONFIG_BACKLIGHT_PARAM "lm3695_bl.default_brightness=${brightness} "
#include "flintstone_core.h"

#define PHYS_SDRAM_SIZE			SZ_512M
#define PHYS_SDRAM_HIGH			"0x9fffffff" // Needs to equal SDRAM base + PHYS_SDRAM_SIZE - 1

#define NL_MODEL			"Display-3.4" // This is the default DTB that will boot if the environment variables are blank

#define CONFIG_DEFAULT_DEVICE_TREE	diamond3

#define CONFIG_LDO_BYPASS_CHECK
#define CONFIG_PFUZE100_PMIC_I2C

#define CONFIG_MACH_DIAMOND3
#endif				/* __DIAMOND3_H */
