/*
 * Copyright (c) 2020, Renesas Electronics Corporation. All rights reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

#ifndef DRAM_SUB_FUNC_H
#define DRAM_SUB_FUNC_H

#define DRAM_UPDATE_STATUS_ERR	-1
#define DRAM_BOOT_STATUS_COLD	0
#define DRAM_BOOT_STATUS_WARM	1

#endif /* DRAM_SUB_FUNC_H */
