/*
 * =====================================================================================
 *
 *       Filename:  systemConfig.h
 *
 *    Description:  Configuration for system.
 *
 *        Version:  1.0
 *        Created:  03/27/2017 10:15:57 AM
 *       Compiler:  armcc
 *
 *         Author:  Dongwook Shim (), dw.shim@samsung.com
 *        Company:  Samsung Electronics
 *
 *        Copyright (c) 2017 by Samsung Electronics, All rights reserved. 
 *
 * =====================================================================================
 */

#ifndef __SYSTEM_CONFIG_H__
#define __SYSTEM_CONFIG_H__

#if (defined USE_ANDROID)
	#define COMMON_DIR                  "/efs"

	#define UID_SYSTEM                   1000

	#define PROPERTY_MODEL              "ro.product.model"
	#define PROPERTY_BASE_MODEL         "ro.product.base_model"
#elif (defined USE_TIZEN)
	#define COMMON_DIR                  "/csa"

	#define UID_SYSTEM                  200

	#define PROPERTY_MODEL              "tizen.org/system/model_name"
#else
	#error                              "Unsupported system."
#endif	// End of USE_ANDROID

#if (defined USE_QSEE)
#if (defined USE_ANDROID)
#if (defined SYSTEM_ROOT_IMAGE_ENABLED)
	#define TA_DIR                      "/vendor/firmware_mnt/image/"
#else
	#define TA_DIR                      "/firmware/image/"
#endif // End of SYSTEM_ROOT_IMAGE_ENABLED
#elif (defined USE_TIZEN)
	#define TA_DIR                      "/lib/firmware/"
#else
	#error                              "Unsupported system."
#endif	// End of USE_ANDROID
	// Common configuration of USE_QSEE.
	#define TEMP_TA_DIR                 COMMON_DIR"/prov/"
	#define PROV_FILE_0                "prov.b00"
	#define PROV_FILE_1                "prov.b01"
	#define PROV_FILE_2                "prov.b02"
	#define PROV_FILE_3                "prov.b03"
	#define PROV_FILE_4                "prov.b04"     // MSM8996 Only.
	#define PROV_FILE_5                "prov.b05"     // MSM8996 Only.
	#define PROV_FILE_6                "prov.b06"     // MSM8996 Only.
	#define PROV_FILE_7                "prov.b07"     // MSM8998 Only.
	#define PROV_FILE_M                "prov.mdt"
	#define PROV_FILES_LIST            { PROV_FILE_0, PROV_FILE_1, PROV_FILE_2, PROV_FILE_3, PROV_FILE_4, PROV_FILE_5, PROV_FILE_6, PROV_FILE_7, PROV_FILE_M }
#endif	// End of USE_QSEE

#if (defined USE_MOBICORE)
#if (defined USE_ANDROID)
	#define TA_DIR                      TA_ROOT_DIR"/app/mcRegistry/"
	#define TEMP_TA_DIR                 COMMON_DIR"/prov/"
#elif (defined USE_TIZEN)
	#define TA_DIR                      "/usr/apps/mcRegistry/"
	#define TEMP_TA_DIR                 "/opt/usr/apps/mcRegistry/"
#else
	#error                              "Unsupported system."
#endif	// End of USE_ANDROID
	// Common configuration of USE_MOBICORE.
	#define PROV_FILE                   "ffffffff00000000000000000000000c.tlbin"
	#define PROV_FILES_LIST             { PROV_FILE }
#endif	// End of USE_MOBICORE

#if (defined USE_BLOWFISH)
	#define TA_DIR                      TA_ROOT_DIR"/tee/"
	#define TEMP_TA_DIR                 COMMON_DIR"/prov/"
	#define PROV_FILE                   "00000000-0000-0000-0000-505256544545"
	#define PROV_FILES_LIST             { PROV_FILE }
	#define SKM_FILE                    "00000000-0000-0000-0000-000000534b4d"
	#define KEYMASTER_FILE              ""
#endif	// End of USE_BLOWFISH

#define DRK_DIR                          COMMON_DIR"/prov_data"

#define PROV_LOCK_FILE_PATH              COMMON_DIR"/prov/libdevkm.lock"
#endif	// End of __SYSTEM_CONFIG_H__
