1 /* SPDX-License-Identifier: GPL-2.0 */ 2 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2019-2022 Linaro Ltd. 5 */ 6 #ifndef _IPA_VERSION_H_ 7 #define _IPA_VERSION_H_ 8 9 /** 10 * enum ipa_version 11 * @IPA_VERSION_3_0: IPA version 3.0/GSI version 1.0 12 * @IPA_VERSION_3_1: IPA version 3.1/GSI version 1.0 13 * @IPA_VERSION_3_5: IPA version 3.5/GSI version 1.2 14 * @IPA_VERSION_3_5_1: IPA version 3.5.1/GSI version 1.3 15 * @IPA_VERSION_4_0: IPA version 4.0/GSI version 2.0 16 * @IPA_VERSION_4_1: IPA version 4.1/GSI version 2.0 17 * @IPA_VERSION_4_2: IPA version 4.2/GSI version 2.2 18 * @IPA_VERSION_4_5: IPA version 4.5/GSI version 2.5 19 * @IPA_VERSION_4_7: IPA version 4.7/GSI version 2.7 20 * @IPA_VERSION_4_9: IPA version 4.9/GSI version 2.9 21 * @IPA_VERSION_4_11: IPA version 4.11/GSI version 2.11 (2.1.1) 22 * @IPA_VERSION_5_0: IPA version 5.0/GSI version 3.0 23 * @IPA_VERSION_5_1: IPA version 5.1/GSI version 3.0 24 * @IPA_VERSION_5_5: IPA version 5.5/GSI version 5.5 25 * @IPA_VERSION_COUNT: Number of defined IPA versions 26 * 27 * Defines the version of IPA (and GSI) hardware present on the platform. 28 * Please update ipa_version_string() whenever a new version is added. 29 */ 30 enum ipa_version { 31 IPA_VERSION_3_0, 32 IPA_VERSION_3_1, 33 IPA_VERSION_3_5, 34 IPA_VERSION_3_5_1, 35 IPA_VERSION_4_0, 36 IPA_VERSION_4_1, 37 IPA_VERSION_4_2, 38 IPA_VERSION_4_5, 39 IPA_VERSION_4_7, 40 IPA_VERSION_4_9, 41 IPA_VERSION_4_11, 42 IPA_VERSION_5_0, 43 IPA_VERSION_5_1, 44 IPA_VERSION_5_5, 45 IPA_VERSION_COUNT, /* Last; not a version */ 46 }; 47 48 static inline bool ipa_version_supported(enum ipa_version version) 49 { 50 switch (version) { 51 case IPA_VERSION_3_1: 52 case IPA_VERSION_3_5_1: 53 case IPA_VERSION_4_2: 54 case IPA_VERSION_4_5: 55 case IPA_VERSION_4_7: 56 case IPA_VERSION_4_9: 57 case IPA_VERSION_4_11: 58 case IPA_VERSION_5_0: 59 case IPA_VERSION_5_5: 60 return true; 61 default: 62 return false; 63 } 64 } 65 66 /* Execution environment IDs */ 67 enum gsi_ee_id { 68 GSI_EE_AP = 0x0, 69 GSI_EE_MODEM = 0x1, 70 GSI_EE_UC = 0x2, 71 GSI_EE_TZ = 0x3, 72 }; 73 74 #endif /* _IPA_VERSION_H_ */ 75