/* * Copyright (c) 2016 Samsung Electronics Co., Ltd. * http://www.samsung.com/ * * EXYNOS - EL3 Monitor support * Author: Junho Choi * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #ifndef __EXYNOS_EL3_MON_H #define __EXYNOS_EL3_MON_H /* Error code */ #define EXYNOS_ERROR_TZASC_WRONG_REGION (-1) #define EXYNOS_ERROR_ALREADY_INITIALIZED (1) #define EXYNOS_ERROR_NOT_VALID_ADDRESS (0x1000) /* Parameters for TZPC of power domains */ #define EXYNOS_GET_IN_PD_DOWN (0) #define EXYNOS_WAKEUP_PD_DOWN (1) #define EXYNOS_PD_RUNTIME_PM (0) #define EXYNOS_PD_CONNECTIVITY (1) /* Connectivity sub system */ #define EXYNOS_GNSS (0) #define EXYNOS_WLBT (1) #define EXYNOS_SHUB (u64)(2) /* Target to set */ #define EXYNOS_SET_CONN_TZPC (0) /* Mask */ #define SHIFT_CONN_IP (32) #define MASK_CONN_IP_TARGET (0xFFFFFFFF) #ifndef __ASSEMBLY__ enum __error_flag { CONN_NO_ERROR = 0, CONN_ALREADY_SET, CONN_INVALID_TARGET, CONN_INVALID_CONN_IP }; int exynos_pd_tz_save(unsigned int addr); int exynos_pd_tz_restore(unsigned int addr); int exynos_conn_tz_save(unsigned int addr); int exynos_conn_tz_restore(unsigned int addr); #endif /* __ASSEMBLY__ */ #endif /* __EXYNOS_EL3_MON_H */