xref: /optee_os/CHANGELOG.md (revision b63e12e4bacb9d35002839c7e837e3372d84d813)
1# OP-TEE - version 4.6.0 (2025-04-25)
2
3- Links to the release pages, commits and pull requests merged into this release for:
4  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_4_6_0], [commits][OP_TEE_optee_os_commits_4_6_0] and [pull requests][OP_TEE_optee_os_pr_4_6_0]
5  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_4_6_0], [commits][OP_TEE_optee_client_commits_4_6_0] and [pull requests][OP_TEE_optee_client_pr_4_6_0]
6  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_4_6_0], [commits][OP_TEE_optee_test_commits_4_6_0] and [pull requests][OP_TEE_optee_test_pr_4_6_0]
7  - OP-TEE/build: [release page][OP_TEE_build_release_4_6_0], [commits][OP_TEE_build_commits_4_6_0] and [pull requests][OP_TEE_build_pr_4_6_0]
8  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_4_6_0], [commits][linaro_swg_optee_examples_commits_4_6_0] and [pull requests][linaro_swg_optee_examples_pr_4_6_0]
9
10
11[OP_TEE_optee_os_release_4_6_0]: https://github.com/OP-TEE/optee_os/releases/tag/4.6.0
12[OP_TEE_optee_os_commits_4_6_0]: https://github.com/OP-TEE/optee_os/compare/4.5.0...4.6.0
13[OP_TEE_optee_os_pr_4_6_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-01-17..2025-04-25
14
15[OP_TEE_optee_client_release_4_6_0]: https://github.com/OP-TEE/optee_client/releases/tag/4.6.0
16[OP_TEE_optee_client_commits_4_6_0]: https://github.com/OP-TEE/optee_client/compare/4.5.0...4.6.0
17[OP_TEE_optee_client_pr_4_6_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-01-17..2025-04-25
18
19[OP_TEE_optee_test_release_4_6_0]: https://github.com/OP-TEE/optee_test/releases/tag/4.6.0
20[OP_TEE_optee_test_commits_4_6_0]: https://github.com/OP-TEE/optee_test/compare/4.5.0...4.6.0
21[OP_TEE_optee_test_pr_4_6_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-01-17..2025-04-25
22
23[OP_TEE_build_release_4_6_0]: https://github.com/OP-TEE/build/releases/tag/4.6.0
24[OP_TEE_build_commits_4_6_0]: https://github.com/OP-TEE/build/compare/4.5.0...4.6.0
25[OP_TEE_build_pr_4_6_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-01-17..2025-04-25
26
27[linaro_swg_optee_examples_release_4_6_0]: https://github.com/linaro-swg/optee_examples/releases/tag/4.6.0
28[linaro_swg_optee_examples_commits_4_6_0]: https://github.com/linaro-swg/optee_examples/compare/4.5.0...4.6.0
29[linaro_swg_optee_examples_pr_4_6_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-01-17..2025-04-25
30
31# OP-TEE - version 4.5.0 (2025-01-17)
32
33- Links to the release pages, commits and pull requests merged into this release for:
34  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_4_5_0], [commits][OP_TEE_optee_os_commits_4_5_0] and [pull requests][OP_TEE_optee_os_pr_4_5_0]
35  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_4_5_0], [commits][OP_TEE_optee_client_commits_4_5_0] and [pull requests][OP_TEE_optee_client_pr_4_5_0]
36  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_4_5_0], [commits][OP_TEE_optee_test_commits_4_5_0] and [pull requests][OP_TEE_optee_test_pr_4_5_0]
37  - OP-TEE/build: [release page][OP_TEE_build_release_4_5_0], [commits][OP_TEE_build_commits_4_5_0] and [pull requests][OP_TEE_build_pr_4_5_0]
38  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_4_5_0], [commits][linaro_swg_optee_examples_commits_4_5_0] and [pull requests][linaro_swg_optee_examples_pr_4_5_0]
39
40
41[OP_TEE_optee_os_release_4_5_0]: https://github.com/OP-TEE/optee_os/releases/tag/4.5.0
42[OP_TEE_optee_os_commits_4_5_0]: https://github.com/OP-TEE/optee_os/compare/4.4.0...4.5.0
43[OP_TEE_optee_os_pr_4_5_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-10-18..2025-01-17
44
45[OP_TEE_optee_client_release_4_5_0]: https://github.com/OP-TEE/optee_client/releases/tag/4.5.0
46[OP_TEE_optee_client_commits_4_5_0]: https://github.com/OP-TEE/optee_client/compare/4.4.0...4.5.0
47[OP_TEE_optee_client_pr_4_5_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-10-18..2025-01-17
48
49[OP_TEE_optee_test_release_4_5_0]: https://github.com/OP-TEE/optee_test/releases/tag/4.5.0
50[OP_TEE_optee_test_commits_4_5_0]: https://github.com/OP-TEE/optee_test/compare/4.4.0...4.5.0
51[OP_TEE_optee_test_pr_4_5_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-10-18..2025-01-17
52
53[OP_TEE_build_release_4_5_0]: https://github.com/OP-TEE/build/releases/tag/4.5.0
54[OP_TEE_build_commits_4_5_0]: https://github.com/OP-TEE/build/compare/4.4.0...4.5.0
55[OP_TEE_build_pr_4_5_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-10-18..2025-01-17
56
57[linaro_swg_optee_examples_release_4_5_0]: https://github.com/linaro-swg/optee_examples/releases/tag/4.5.0
58[linaro_swg_optee_examples_commits_4_5_0]: https://github.com/linaro-swg/optee_examples/compare/4.4.0...4.5.0
59[linaro_swg_optee_examples_pr_4_5_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-10-18..2025-01-17
60
61# OP-TEE - version 4.4.0 (2024-10-18)
62
63- Links to the release pages, commits and pull requests merged into this release for:
64  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_4_4_0], [commits][OP_TEE_optee_os_commits_4_4_0] and [pull requests][OP_TEE_optee_os_pr_4_4_0]
65  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_4_4_0], [commits][OP_TEE_optee_client_commits_4_4_0] and [pull requests][OP_TEE_optee_client_pr_4_4_0]
66  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_4_4_0], [commits][OP_TEE_optee_test_commits_4_4_0] and [pull requests][OP_TEE_optee_test_pr_4_4_0]
67  - OP-TEE/build: [release page][OP_TEE_build_release_4_4_0], [commits][OP_TEE_build_commits_4_4_0] and [pull requests][OP_TEE_build_pr_4_4_0]
68  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_4_4_0], [commits][linaro_swg_optee_examples_commits_4_4_0] and [pull requests][linaro_swg_optee_examples_pr_4_4_0]
69
70
71[OP_TEE_optee_os_release_4_4_0]: https://github.com/OP-TEE/optee_os/releases/tag/4.4.0
72[OP_TEE_optee_os_commits_4_4_0]: https://github.com/OP-TEE/optee_os/compare/4.3.0...4.4.0
73[OP_TEE_optee_os_pr_4_4_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-07-12..2024-10-18
74
75[OP_TEE_optee_client_release_4_4_0]: https://github.com/OP-TEE/optee_client/releases/tag/4.4.0
76[OP_TEE_optee_client_commits_4_4_0]: https://github.com/OP-TEE/optee_client/compare/4.3.0...4.4.0
77[OP_TEE_optee_client_pr_4_4_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-07-12..2024-10-18
78
79[OP_TEE_optee_test_release_4_4_0]: https://github.com/OP-TEE/optee_test/releases/tag/4.4.0
80[OP_TEE_optee_test_commits_4_4_0]: https://github.com/OP-TEE/optee_test/compare/4.3.0...4.4.0
81[OP_TEE_optee_test_pr_4_4_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-07-12..2024-10-18
82
83[OP_TEE_build_release_4_4_0]: https://github.com/OP-TEE/build/releases/tag/4.4.0
84[OP_TEE_build_commits_4_4_0]: https://github.com/OP-TEE/build/compare/4.3.0...4.4.0
85[OP_TEE_build_pr_4_4_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-07-12..2024-10-18
86
87[linaro_swg_optee_examples_release_4_4_0]: https://github.com/linaro-swg/optee_examples/releases/tag/4.4.0
88[linaro_swg_optee_examples_commits_4_4_0]: https://github.com/linaro-swg/optee_examples/compare/4.3.0...4.4.0
89[linaro_swg_optee_examples_pr_4_4_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-07-12..2024-10-18
90
91# OP-TEE - version 4.3.0 (2024-07-12)
92
93- Links to the release pages, commits and pull requests merged into this release for:
94  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_4_3_0], [commits][OP_TEE_optee_os_commits_4_3_0] and [pull requests][OP_TEE_optee_os_pr_4_3_0]
95  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_4_3_0], [commits][OP_TEE_optee_client_commits_4_3_0] and [pull requests][OP_TEE_optee_client_pr_4_3_0]
96  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_4_3_0], [commits][OP_TEE_optee_test_commits_4_3_0] and [pull requests][OP_TEE_optee_test_pr_4_3_0]
97  - OP-TEE/build: [release page][OP_TEE_build_release_4_3_0], [commits][OP_TEE_build_commits_4_3_0] and [pull requests][OP_TEE_build_pr_4_3_0]
98  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_4_3_0], [commits][linaro_swg_optee_examples_commits_4_3_0] and [pull requests][linaro_swg_optee_examples_pr_4_3_0]
99
100
101[OP_TEE_optee_os_release_4_3_0]: https://github.com/OP-TEE/optee_os/releases/tag/4.3.0
102[OP_TEE_optee_os_commits_4_3_0]: https://github.com/OP-TEE/optee_os/compare/4.2.0...4.3.0
103[OP_TEE_optee_os_pr_4_3_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-04-12..2024-07-12
104
105[OP_TEE_optee_client_release_4_3_0]: https://github.com/OP-TEE/optee_client/releases/tag/4.3.0
106[OP_TEE_optee_client_commits_4_3_0]: https://github.com/OP-TEE/optee_client/compare/4.2.0...4.3.0
107[OP_TEE_optee_client_pr_4_3_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-04-12..2024-07-12
108
109[OP_TEE_optee_test_release_4_3_0]: https://github.com/OP-TEE/optee_test/releases/tag/4.3.0
110[OP_TEE_optee_test_commits_4_3_0]: https://github.com/OP-TEE/optee_test/compare/4.2.0...4.3.0
111[OP_TEE_optee_test_pr_4_3_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-04-12..2024-07-12
112
113[OP_TEE_build_release_4_3_0]: https://github.com/OP-TEE/build/releases/tag/4.3.0
114[OP_TEE_build_commits_4_3_0]: https://github.com/OP-TEE/build/compare/4.2.0...4.3.0
115[OP_TEE_build_pr_4_3_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-04-12..2024-07-12
116
117[linaro_swg_optee_examples_release_4_3_0]: https://github.com/linaro-swg/optee_examples/releases/tag/4.3.0
118[linaro_swg_optee_examples_commits_4_3_0]: https://github.com/linaro-swg/optee_examples/compare/4.2.0...4.3.0
119[linaro_swg_optee_examples_pr_4_3_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-04-12..2024-07-12
120
121# OP-TEE - version 4.2.0 (2024-04-12)
122
123- Links to the release pages, commits and pull requests merged into this release for:
124  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_4_2_0], [commits][OP_TEE_optee_os_commits_4_2_0] and [pull requests][OP_TEE_optee_os_pr_4_2_0]
125  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_4_2_0], [commits][OP_TEE_optee_client_commits_4_2_0] and [pull requests][OP_TEE_optee_client_pr_4_2_0]
126  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_4_2_0], [commits][OP_TEE_optee_test_commits_4_2_0] and [pull requests][OP_TEE_optee_test_pr_4_2_0]
127  - OP-TEE/build: [release page][OP_TEE_build_release_4_2_0], [commits][OP_TEE_build_commits_4_2_0] and [pull requests][OP_TEE_build_pr_4_2_0]
128  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_4_2_0], [commits][linaro_swg_optee_examples_commits_4_2_0] and [pull requests][linaro_swg_optee_examples_pr_4_2_0]
129
130
131[OP_TEE_optee_os_release_4_2_0]: https://github.com/OP-TEE/optee_os/releases/tag/4.2.0
132[OP_TEE_optee_os_commits_4_2_0]: https://github.com/OP-TEE/optee_os/compare/4.1.0...4.2.0
133[OP_TEE_optee_os_pr_4_2_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-01-19..2024-04-12
134
135[OP_TEE_optee_client_release_4_2_0]: https://github.com/OP-TEE/optee_client/releases/tag/4.2.0
136[OP_TEE_optee_client_commits_4_2_0]: https://github.com/OP-TEE/optee_client/compare/4.1.0...4.2.0
137[OP_TEE_optee_client_pr_4_2_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-01-19..2024-04-12
138
139[OP_TEE_optee_test_release_4_2_0]: https://github.com/OP-TEE/optee_test/releases/tag/4.2.0
140[OP_TEE_optee_test_commits_4_2_0]: https://github.com/OP-TEE/optee_test/compare/4.1.0...4.2.0
141[OP_TEE_optee_test_pr_4_2_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-01-19..2024-04-12
142
143[OP_TEE_build_release_4_2_0]: https://github.com/OP-TEE/build/releases/tag/4.2.0
144[OP_TEE_build_commits_4_2_0]: https://github.com/OP-TEE/build/compare/4.1.0...4.2.0
145[OP_TEE_build_pr_4_2_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-01-19..2024-04-12
146
147[linaro_swg_optee_examples_release_4_2_0]: https://github.com/linaro-swg/optee_examples/releases/tag/4.2.0
148[linaro_swg_optee_examples_commits_4_2_0]: https://github.com/linaro-swg/optee_examples/compare/4.1.0...4.2.0
149[linaro_swg_optee_examples_pr_4_2_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2024-01-19..2024-04-12
150
151# OP-TEE - version 4.1.0 (2024-01-19)
152
153- Links to the release pages, commits and pull requests merged into this release for:
154  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_4_1], [commits][OP_TEE_optee_os_commits_4_1] and [pull requests][OP_TEE_optee_os_pr_4_1]
155  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_4_1], [commits][OP_TEE_optee_client_commits_4_1] and [pull requests][OP_TEE_optee_client_pr_4_1]
156  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_4_1], [commits][OP_TEE_optee_test_commits_4_1] and [pull requests][OP_TEE_optee_test_pr_4_1]
157  - OP-TEE/build: [release page][OP_TEE_build_release_4_1], [commits][OP_TEE_build_commits_4_1] and [pull requests][OP_TEE_build_pr_4_1]
158  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_4_1], [commits][linaro_swg_optee_examples_commits_4_1] and [pull requests][linaro_swg_optee_examples_pr_4_1]
159
160
161[OP_TEE_optee_os_release_4_1]: https://github.com/OP-TEE/optee_os/releases/tag/4.1.0
162[OP_TEE_optee_os_commits_4_1]: https://github.com/OP-TEE/optee_os/compare/4.0.0...4.1.0
163[OP_TEE_optee_os_pr_4_1]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-10-20..2024-01-19
164
165[OP_TEE_optee_client_release_4_1]: https://github.com/OP-TEE/optee_client/releases/tag/4.1.0
166[OP_TEE_optee_client_commits_4_1]: https://github.com/OP-TEE/optee_client/compare/4.0.0...4.1.0
167[OP_TEE_optee_client_pr_4_1]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-10-20..2024-01-19
168
169[OP_TEE_optee_test_release_4_1]: https://github.com/OP-TEE/optee_test/releases/tag/4.1.0
170[OP_TEE_optee_test_commits_4_1]: https://github.com/OP-TEE/optee_test/compare/4.0.0...4.1.0
171[OP_TEE_optee_test_pr_4_1]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-10-20..2024-01-19
172
173[OP_TEE_build_release_4_1]: https://github.com/OP-TEE/build/releases/tag/4.1.0
174[OP_TEE_build_commits_4_1]: https://github.com/OP-TEE/build/compare/4.0.0...4.1.0
175[OP_TEE_build_pr_4_1]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-10-20..2024-01-19
176
177[linaro_swg_optee_examples_release_4_1]: https://github.com/linaro-swg/optee_examples/releases/tag/4.1.0
178[linaro_swg_optee_examples_commits_4_1]: https://github.com/linaro-swg/optee_examples/compare/4.0.0...4.1.0
179[linaro_swg_optee_examples_pr_4_1]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-10-20..2024-01-19
180
181# OP-TEE - version 4.0.0 (2023-10-20)
182
183- Links to the release pages, commits and pull requests merged into this release for:
184  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_4_0], [commits][OP_TEE_optee_os_commits_4_0] and [pull requests][OP_TEE_optee_os_pr_4_0]
185  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_4_0], [commits][OP_TEE_optee_client_commits_4_0] and [pull requests][OP_TEE_optee_client_pr_4_0]
186  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_4_0], [commits][OP_TEE_optee_test_commits_4_0] and [pull requests][OP_TEE_optee_test_pr_4_0]
187  - OP-TEE/build: [release page][OP_TEE_build_release_4_0], [commits][OP_TEE_build_commits_4_0] and [pull requests][OP_TEE_build_pr_4_0]
188  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_4_0], [commits][linaro_swg_optee_examples_commits_4_0] and [pull requests][linaro_swg_optee_examples_pr_4_0]
189
190
191[OP_TEE_optee_os_release_4_0]: https://github.com/OP-TEE/optee_os/releases/tag/4.0.0
192[OP_TEE_optee_os_commits_4_0]: https://github.com/OP-TEE/optee_os/compare/3.22.0...4.0.0
193[OP_TEE_optee_os_pr_4_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-07-07..2023-10-20
194
195[OP_TEE_optee_client_release_4_0]: https://github.com/OP-TEE/optee_client/releases/tag/4.0.0
196[OP_TEE_optee_client_commits_4_0]: https://github.com/OP-TEE/optee_client/compare/3.22.0...4.0.0
197[OP_TEE_optee_client_pr_4_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-07-07..2023-10-20
198
199[OP_TEE_optee_test_release_4_0]: https://github.com/OP-TEE/optee_test/releases/tag/4.0.0
200[OP_TEE_optee_test_commits_4_0]: https://github.com/OP-TEE/optee_test/compare/3.22.0...4.0.0
201[OP_TEE_optee_test_pr_4_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-07-07..2023-10-20
202
203[OP_TEE_build_release_4_0]: https://github.com/OP-TEE/build/releases/tag/4.0.0
204[OP_TEE_build_commits_4_0]: https://github.com/OP-TEE/build/compare/3.22.0...4.0.0
205[OP_TEE_build_pr_4_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-07-07..2023-10-20
206
207[linaro_swg_optee_examples_release_4_0]: https://github.com/linaro-swg/optee_examples/releases/tag/4.0.0
208[linaro_swg_optee_examples_commits_4_0]: https://github.com/linaro-swg/optee_examples/compare/3.22.0...4.0.0
209[linaro_swg_optee_examples_pr_4_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-07-07..2023-10-20
210
211# OP-TEE - version 3.22.0 (2023-07-07)
212
213- Links to the release pages, commits and pull requests merged into this release for:
214  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_22], [commits][OP_TEE_optee_os_commits_3_22] and [pull requests][OP_TEE_optee_os_pr_3_22]
215  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_22], [commits][OP_TEE_optee_client_commits_3_22] and [pull requests][OP_TEE_optee_client_pr_3_22]
216  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_22], [commits][OP_TEE_optee_test_commits_3_22] and [pull requests][OP_TEE_optee_test_pr_3_22]
217  - OP-TEE/build: [release page][OP_TEE_build_release_3_22], [commits][OP_TEE_build_commits_3_22] and [pull requests][OP_TEE_build_pr_3_22]
218  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_22], [commits][linaro_swg_optee_examples_commits_3_22] and [pull requests][linaro_swg_optee_examples_pr_3_22]
219
220
221[OP_TEE_optee_os_release_3_22]: https://github.com/OP-TEE/optee_os/releases/tag/3.22.0
222[OP_TEE_optee_os_commits_3_22]: https://github.com/OP-TEE/optee_os/compare/3.21.0...3.22.0
223[OP_TEE_optee_os_pr_3_22]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-04-14..2023-07-07
224
225[OP_TEE_optee_client_release_3_22]: https://github.com/OP-TEE/optee_client/releases/tag/3.22.0
226[OP_TEE_optee_client_commits_3_22]: https://github.com/OP-TEE/optee_client/compare/3.21.0...3.22.0
227[OP_TEE_optee_client_pr_3_22]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-04-14..2023-07-07
228
229[OP_TEE_optee_test_release_3_22]: https://github.com/OP-TEE/optee_test/releases/tag/3.22.0
230[OP_TEE_optee_test_commits_3_22]: https://github.com/OP-TEE/optee_test/compare/3.21.0...3.22.0
231[OP_TEE_optee_test_pr_3_22]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-04-14..2023-07-07
232
233[OP_TEE_build_release_3_22]: https://github.com/OP-TEE/build/releases/tag/3.22.0
234[OP_TEE_build_commits_3_22]: https://github.com/OP-TEE/build/compare/3.21.0...3.22.0
235[OP_TEE_build_pr_3_22]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-04-14..2023-07-07
236
237[linaro_swg_optee_examples_release_3_22]: https://github.com/linaro-swg/optee_examples/releases/tag/3.22.0
238[linaro_swg_optee_examples_commits_3_22]: https://github.com/linaro-swg/optee_examples/compare/3.21.0...3.22.0
239[linaro_swg_optee_examples_pr_3_22]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-04-14..2023-07-07
240
241# OP-TEE - version 3.21.0 (2023-04-14)
242
243- Links to the release pages, commits and pull requests merged into this release for:
244  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_21], [commits][OP_TEE_optee_os_commits_3_21] and [pull requests][OP_TEE_optee_os_pr_3_21]
245  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_21], [commits][OP_TEE_optee_client_commits_3_21] and [pull requests][OP_TEE_optee_client_pr_3_21]
246  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_21], [commits][OP_TEE_optee_test_commits_3_21] and [pull requests][OP_TEE_optee_test_pr_3_21]
247  - OP-TEE/build: [release page][OP_TEE_build_release_3_21], [commits][OP_TEE_build_commits_3_21] and [pull requests][OP_TEE_build_pr_3_21]
248  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_21], [commits][linaro_swg_optee_examples_commits_3_21] and [pull requests][linaro_swg_optee_examples_pr_3_21]
249
250
251[OP_TEE_optee_os_release_3_21]: https://github.com/OP-TEE/optee_os/releases/tag/3.21.0
252[OP_TEE_optee_os_commits_3_21]: https://github.com/OP-TEE/optee_os/compare/3.20.0...3.21.0
253[OP_TEE_optee_os_pr_3_21]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-01-20..2023-04-14
254
255[OP_TEE_optee_client_release_3_21]: https://github.com/OP-TEE/optee_client/releases/tag/3.21.0
256[OP_TEE_optee_client_commits_3_21]: https://github.com/OP-TEE/optee_client/compare/3.20.0...3.21.0
257[OP_TEE_optee_client_pr_3_21]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-01-20..2023-04-14
258
259[OP_TEE_optee_test_release_3_21]: https://github.com/OP-TEE/optee_test/releases/tag/3.21.0
260[OP_TEE_optee_test_commits_3_21]: https://github.com/OP-TEE/optee_test/compare/3.20.0...3.21.0
261[OP_TEE_optee_test_pr_3_21]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-01-20..2023-04-14
262
263[OP_TEE_build_release_3_21]: https://github.com/OP-TEE/build/releases/tag/3.21.0
264[OP_TEE_build_commits_3_21]: https://github.com/OP-TEE/build/compare/3.20.0...3.21.0
265[OP_TEE_build_pr_3_21]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-01-20..2023-04-14
266
267[linaro_swg_optee_examples_release_3_21]: https://github.com/linaro-swg/optee_examples/releases/tag/3.21.0
268[linaro_swg_optee_examples_commits_3_21]: https://github.com/linaro-swg/optee_examples/compare/3.20.0...3.21.0
269[linaro_swg_optee_examples_pr_3_21]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2023-01-20..2023-04-14
270
271# OP-TEE - version 3.20.0 (2023-01-20)
272
273- Links to the release pages, commits and pull requests merged into this release for:
274  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_20], [commits][OP_TEE_optee_os_commits_3_20] and [pull requests][OP_TEE_optee_os_pr_3_20]
275  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_20], [commits][OP_TEE_optee_client_commits_3_20] and [pull requests][OP_TEE_optee_client_pr_3_20]
276  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_20], [commits][OP_TEE_optee_test_commits_3_20] and [pull requests][OP_TEE_optee_test_pr_3_20]
277  - OP-TEE/build: [release page][OP_TEE_build_release_3_20], [commits][OP_TEE_build_commits_3_20] and [pull requests][OP_TEE_build_pr_3_20]
278  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_20], [commits][linaro_swg_optee_examples_commits_3_20] and [pull requests][linaro_swg_optee_examples_pr_3_20]
279
280
281[OP_TEE_optee_os_release_3_20]: https://github.com/OP-TEE/optee_os/releases/tag/3.20.0
282[OP_TEE_optee_os_commits_3_20]: https://github.com/OP-TEE/optee_os/compare/3.19.0...3.20.0
283[OP_TEE_optee_os_pr_3_20]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-10-14..2023-01-20
284
285[OP_TEE_optee_client_release_3_20]: https://github.com/OP-TEE/optee_client/releases/tag/3.20.0
286[OP_TEE_optee_client_commits_3_20]: https://github.com/OP-TEE/optee_client/compare/3.19.0...3.20.0
287[OP_TEE_optee_client_pr_3_20]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-10-14..2023-01-20
288
289[OP_TEE_optee_test_release_3_20]: https://github.com/OP-TEE/optee_test/releases/tag/3.20.0
290[OP_TEE_optee_test_commits_3_20]: https://github.com/OP-TEE/optee_test/compare/3.19.0...3.20.0
291[OP_TEE_optee_test_pr_3_20]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-10-14..2023-01-20
292
293[OP_TEE_build_release_3_20]: https://github.com/OP-TEE/build/releases/tag/3.20.0
294[OP_TEE_build_commits_3_20]: https://github.com/OP-TEE/build/compare/3.19.0...3.20.0
295[OP_TEE_build_pr_3_20]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-10-14..2023-01-20
296
297[linaro_swg_optee_examples_release_3_20]: https://github.com/linaro-swg/optee_examples/releases/tag/3.20.0
298[linaro_swg_optee_examples_commits_3_20]: https://github.com/linaro-swg/optee_examples/compare/3.19.0...3.20.0
299[linaro_swg_optee_examples_pr_3_20]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-10-14..2023-01-20
300
301# OP-TEE - version 3.19.0 (2022-10-14)
302
303- Links to the release pages, commits and pull requests merged into this release for:
304  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_19], [commits][OP_TEE_optee_os_commits_3_19] and [
305pull requests][OP_TEE_optee_os_pr_3_19]
306  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_19], [commits][OP_TEE_optee_client_commits_3_19] and [pull requests][OP_TEE_optee_client_pr_3_19]
307  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_19], [commits][OP_TEE_optee_test_commits_3_19] and [pull requests][OP_TEE_optee_test_pr_3_19]
308  - OP-TEE/build: [release page][OP_TEE_build_release_3_19], [commits][OP_TEE_build_commits_3_19] and [pull requests][OP_TEE_build_pr_3_19]
309  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_19], [commits][linaro_swg_optee_examples_commits_3_19] and [pull requests][linaro_swg_optee_examples_pr_3_19]
310
311
312[OP_TEE_optee_os_release_3_19]: https://github.com/OP-TEE/optee_os/releases/tag/3.19.0
313[OP_TEE_optee_os_commits_3_19]: https://github.com/OP-TEE/optee_os/compare/3.18.0...3.19.0
314[OP_TEE_optee_os_pr_3_19]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-07-15..2022-10-14
315
316[OP_TEE_optee_client_release_3_19]: https://github.com/OP-TEE/optee_client/releases/tag/3.19.0
317[OP_TEE_optee_client_commits_3_19]: https://github.com/OP-TEE/optee_client/compare/3.18.0...3.19.0
318[OP_TEE_optee_client_pr_3_19]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-07-15..2022-10-14
319
320[OP_TEE_optee_test_release_3_19]: https://github.com/OP-TEE/optee_test/releases/tag/3.19.0
321[OP_TEE_optee_test_commits_3_19]: https://github.com/OP-TEE/optee_test/compare/3.18.0...3.19.0
322[OP_TEE_optee_test_pr_3_19]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-07-15..2022-10-14
323
324[OP_TEE_build_release_3_19]: https://github.com/OP-TEE/build/releases/tag/3.19.0
325[OP_TEE_build_commits_3_19]: https://github.com/OP-TEE/build/compare/3.18.0...3.19.0
326[OP_TEE_build_pr_3_19]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-07-15..2022-10-14
327
328[linaro_swg_optee_examples_release_3_19]: https://github.com/linaro-swg/optee_examples/releases/tag/3.19.0
329[linaro_swg_optee_examples_commits_3_19]: https://github.com/linaro-swg/optee_examples/compare/3.18.0...3.19.0
330[linaro_swg_optee_examples_pr_3_19]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-07-15..2022-10-14
331
332# OP-TEE - version 3.18.0 (2022-07-15)
333
334- Links to the release pages, commits and pull requests merged into this release for:
335  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_18_0], [commits][OP_TEE_optee_os_commits_3_18_0] and [pull requests][OP_TEE_optee_os_pr_3_18_0]
336  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_18_0], [commits][OP_TEE_optee_client_commits_3_18_0] and [pull requests][OP_TEE_optee_client_pr_3_18_0]
337  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_18_0], [commits][OP_TEE_optee_test_commits_3_18_0] and [pull requests][OP_TEE_optee_test_pr_3_18_0]
338  - OP-TEE/build: [release page][OP_TEE_build_release_3_18_0], [commits][OP_TEE_build_commits_3_18_0] and [pull requests][OP_TEE_build_pr_3_18_0]
339  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_18_0], [commits][linaro_swg_optee_examples_commits_3_18_0] and [pull requests][linaro_swg_optee_examples_pr_3_18_0]
340
341
342[OP_TEE_optee_os_release_3_18_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.18.0
343[OP_TEE_optee_os_commits_3_18_0]: https://github.com/OP-TEE/optee_os/compare/3.17.0...3.18.0
344[OP_TEE_optee_os_pr_3_18_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-04-15..2022-07-15
345
346[OP_TEE_optee_client_release_3_18_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.18.0
347[OP_TEE_optee_client_commits_3_18_0]: https://github.com/OP-TEE/optee_client/compare/3.17.0...3.18.0
348[OP_TEE_optee_client_pr_3_18_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-04-15..2022-07-15
349
350[OP_TEE_optee_test_release_3_18_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.18.0
351[OP_TEE_optee_test_commits_3_18_0]: https://github.com/OP-TEE/optee_test/compare/3.17.0...3.18.0
352[OP_TEE_optee_test_pr_3_18_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-04-15..2022-07-15
353
354[OP_TEE_build_release_3_18_0]: https://github.com/OP-TEE/build/releases/tag/3.18.0
355[OP_TEE_build_commits_3_18_0]: https://github.com/OP-TEE/build/compare/3.17.0...3.18.0
356[OP_TEE_build_pr_3_18_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-04-15..2022-07-15
357
358[linaro_swg_optee_examples_release_3_18_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.18.0
359[linaro_swg_optee_examples_commits_3_18_0]: https://github.com/linaro-swg/optee_examples/compare/3.17.0...3.18.0
360[linaro_swg_optee_examples_pr_3_18_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-04-15..2022-07-15
361
362# OP-TEE - version 3.17.0 (2022-04-15)
363
364- Links to the release pages, commits and pull requests merged into this release for:
365  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_17_0], [commits][OP_TEE_optee_os_commits_3_17_0] and [pull requests][OP_TEE_optee_os_pr_3_17_0]
366  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_17_0], [commits][OP_TEE_optee_client_commits_3_17_0] and [pull requests][OP_TEE_optee_client_pr_3_17_0]
367  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_17_0], [commits][OP_TEE_optee_test_commits_3_17_0] and [pull requests][OP_TEE_optee_test_pr_3_17_0]
368  - OP-TEE/build: [release page][OP_TEE_build_release_3_17_0], [commits][OP_TEE_build_commits_3_17_0] and [pull requests][OP_TEE_build_pr_3_17_0]
369  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_17_0], [commits][linaro_swg_optee_examples_commits_3_17_0] and [pull requests][linaro_swg_optee_examples_pr_3_17_0]
370
371
372[OP_TEE_optee_os_release_3_17_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.17.0
373[OP_TEE_optee_os_commits_3_17_0]: https://github.com/OP-TEE/optee_os/compare/3.16.0...3.17.0
374[OP_TEE_optee_os_pr_3_17_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-28..2022-04-15
375
376[OP_TEE_optee_client_release_3_17_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.17.0
377[OP_TEE_optee_client_commits_3_17_0]: https://github.com/OP-TEE/optee_client/compare/3.16.0...3.17.0
378[OP_TEE_optee_client_pr_3_17_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-01-28..2022-04-15
379
380[OP_TEE_optee_test_release_3_17_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.17.0
381[OP_TEE_optee_test_commits_3_17_0]: https://github.com/OP-TEE/optee_test/compare/3.16.0...3.17.0
382[OP_TEE_optee_test_pr_3_17_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-01-28..2022-04-15
383
384[OP_TEE_build_release_3_17_0]: https://github.com/OP-TEE/build/releases/tag/3.17.0
385[OP_TEE_build_commits_3_17_0]: https://github.com/OP-TEE/build/compare/3.16.0...3.17.0
386[OP_TEE_build_pr_3_17_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-28..2022-04-15
387
388[linaro_swg_optee_examples_release_3_17_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.17.0
389[linaro_swg_optee_examples_commits_3_17_0]: https://github.com/linaro-swg/optee_examples/compare/3.16.0...3.17.0
390[linaro_swg_optee_examples_pr_3_17_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2022-01-28..2022-04-15
391
392# OP-TEE - version 3.16.0 (2022-01-28)
393
394- Links to the release pages, commits and pull requests merged into this release for:
395  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_16_0], [commits][OP_TEE_optee_os_commits_3_16_0] and [pull requests][OP_TEE_optee_os_pr_3_16_0]
396  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_16_0], [commits][OP_TEE_optee_client_commits_3_16_0] and [pull requests][OP_TEE_optee_client_pr_3_16_0]
397  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_16_0], [commits][OP_TEE_optee_test_commits_3_16_0] and [pull requests][OP_TEE_optee_test_pr_3_16_0]
398  - OP-TEE/build: [release page][OP_TEE_build_release_3_16_0], [commits][OP_TEE_build_commits_3_16_0] and [pull requests][OP_TEE_build_pr_3_16_0]
399  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_16_0], [commits][linaro_swg_optee_examples_commits_3_16_0] and [pull requests][linaro_swg_optee_examples_pr_3_16_0]
400
401
402[OP_TEE_optee_os_release_3_16_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.16.0
403[OP_TEE_optee_os_commits_3_16_0]: https://github.com/OP-TEE/optee_os/compare/3.15.0...3.16.0
404[OP_TEE_optee_os_pr_3_16_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-10-18..2022-01-28
405
406[OP_TEE_optee_client_release_3_16_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.16.0
407[OP_TEE_optee_client_commits_3_16_0]: https://github.com/OP-TEE/optee_client/compare/3.15.0...3.16.0
408[OP_TEE_optee_client_pr_3_16_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-10-18..2022-01-28
409
410[OP_TEE_optee_test_release_3_16_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.16.0
411[OP_TEE_optee_test_commits_3_16_0]: https://github.com/OP-TEE/optee_test/compare/3.15.0...3.16.0
412[OP_TEE_optee_test_pr_3_16_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-10-18..2022-01-28
413
414[OP_TEE_build_release_3_16_0]: https://github.com/OP-TEE/build/releases/tag/3.16.0
415[OP_TEE_build_commits_3_16_0]: https://github.com/OP-TEE/build/compare/3.15.0...3.16.0
416[OP_TEE_build_pr_3_16_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-10-18..2022-01-28
417
418[linaro_swg_optee_examples_release_3_16_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.16.0
419[linaro_swg_optee_examples_commits_3_16_0]: https://github.com/linaro-swg/optee_examples/compare/3.15.0...3.16.0
420[linaro_swg_optee_examples_pr_3_16_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-10-18..2022-01-28
421
422# OP-TEE - version 3.15.0 (2021-10-18)
423
424- Links to the release pages, commits and pull requests merged into this release for:
425  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_15_0], [commits][OP_TEE_optee_os_commits_3_15_0] and [pull requests][OP_TEE_optee_os_pr_3_15_0]
426  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_15_0], [commits][OP_TEE_optee_client_commits_3_15_0] and [pull requests][OP_TEE_optee_client_pr_3_15_0]
427  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_15_0], [commits][OP_TEE_optee_test_commits_3_15_0] and [pull requests][OP_TEE_optee_test_pr_3_15_0]
428  - OP-TEE/build: [release page][OP_TEE_build_release_3_15_0], [commits][OP_TEE_build_commits_3_15_0] and [pull requests][OP_TEE_build_pr_3_15_0]
429  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_15_0], [commits][linaro_swg_optee_examples_commits_3_15_0] and [pull requests][linaro_swg_optee_examples_pr_3_15_0]
430
431
432[OP_TEE_optee_os_release_3_15_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.15.0
433[OP_TEE_optee_os_commits_3_15_0]: https://github.com/OP-TEE/optee_os/compare/3.14.0...3.15.0
434[OP_TEE_optee_os_pr_3_15_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-07-16..2021-10-18
435
436[OP_TEE_optee_client_release_3_15_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.15.0
437[OP_TEE_optee_client_commits_3_15_0]: https://github.com/OP-TEE/optee_client/compare/3.14.0...3.15.0
438[OP_TEE_optee_client_pr_3_15_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-07-16..2021-10-18
439
440[OP_TEE_optee_test_release_3_15_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.15.0
441[OP_TEE_optee_test_commits_3_15_0]: https://github.com/OP-TEE/optee_test/compare/3.14.0...3.15.0
442[OP_TEE_optee_test_pr_3_15_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-07-16..2021-10-18
443
444[OP_TEE_build_release_3_15_0]: https://github.com/OP-TEE/build/releases/tag/3.15.0
445[OP_TEE_build_commits_3_15_0]: https://github.com/OP-TEE/build/compare/3.14.0...3.15.0
446[OP_TEE_build_pr_3_15_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-07-16..2021-10-18
447
448[linaro_swg_optee_examples_release_3_15_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.15.0
449[linaro_swg_optee_examples_commits_3_15_0]: https://github.com/linaro-swg/optee_examples/compare/3.14.0...3.15.0
450[linaro_swg_optee_examples_pr_3_15_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-07-16..2021-10-18
451
452# OP-TEE - version 3.14.0 (target date: 2021-07-16)
453
454- Links to the release pages, commits and pull requests merged into this release for:
455  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_14_0], [commits][OP_TEE_optee_os_commits_3_14_0] and [pull requests][OP_TEE_optee_os_pr_3_14_0]
456  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_14_0], [commits][OP_TEE_optee_client_commits_3_14_0] and [pull requests][OP_TEE_optee_client_pr_3_14_0]
457  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_14_0], [commits][OP_TEE_optee_test_commits_3_14_0] and [pull requests][OP_TEE_optee_test_pr_3_14_0]
458  - OP-TEE/build: [release page][OP_TEE_build_release_3_14_0], [commits][OP_TEE_build_commits_3_14_0] and [pull requests][OP_TEE_build_pr_3_14_0]
459  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_14_0], [commits][linaro_swg_optee_examples_commits_3_14_0] and [pull requests][linaro_swg_optee_examples_pr_3_14_0]
460
461
462[OP_TEE_optee_os_release_3_14_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.14.0
463[OP_TEE_optee_os_commits_3_14_0]: https://github.com/OP-TEE/optee_os/compare/3.13.0...3.14.0
464[OP_TEE_optee_os_pr_3_14_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-05-01..2021-07-16
465
466[OP_TEE_optee_client_release_3_14_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.14.0
467[OP_TEE_optee_client_commits_3_14_0]: https://github.com/OP-TEE/optee_client/compare/3.13.0...3.14.0
468[OP_TEE_optee_client_pr_3_14_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-05-01-..2021-07-16
469
470[OP_TEE_optee_test_release_3_14_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.14.0
471[OP_TEE_optee_test_commits_3_14_0]: https://github.com/OP-TEE/optee_test/compare/3.13.0...3.14.0
472[OP_TEE_optee_test_pr_3_14_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-05-01..2021-07-16
473
474[OP_TEE_build_release_3_14_0]: https://github.com/OP-TEE/build/releases/tag/3.14.0
475[OP_TEE_build_commits_3_14_0]: https://github.com/OP-TEE/build/compare/3.13.0...3.14.0
476[OP_TEE_build_pr_3_14_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-05-01..2021-07-16
477
478[linaro_swg_optee_examples_release_3_14_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.14.0
479[linaro_swg_optee_examples_commits_3_14_0]: https://github.com/linaro-swg/optee_examples/compare/3.13.0...3.14.0
480[linaro_swg_optee_examples_pr_3_14_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-05-01..2021-07-16
481
482# OP-TEE - version 3.13.0 (2021-04-30)
483
484- Links to the release pages, commits and pull requests merged into this release for:
485  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_13_0], [commits][OP_TEE_optee_os_commits_3_13_0] and [pull requests][OP_TEE_optee_os_pr_3_13_0]
486  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_13_0], [commits][OP_TEE_optee_client_commits_3_13_0] and [pull requests][OP_TEE_optee_client_pr_3_13_0]
487  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_13_0], [commits][OP_TEE_optee_test_commits_3_13_0] and [pull requests][OP_TEE_optee_test_pr_3_13_0]
488  - OP-TEE/build: [release page][OP_TEE_build_release_3_13_0], [commits][OP_TEE_build_commits_3_13_0] and [pull requests][OP_TEE_build_pr_3_13_0]
489  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_13_0], [commits][linaro_swg_optee_examples_commits_3_13_0] and [pull requests][linaro_swg_optee_examples_pr_3_13_0]
490
491
492[OP_TEE_optee_os_release_3_13_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.13.0
493[OP_TEE_optee_os_commits_3_13_0]: https://github.com/OP-TEE/optee_os/compare/3.12.0...3.13.0
494[OP_TEE_optee_os_pr_3_13_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-20..2021-04-30
495
496[OP_TEE_optee_client_release_3_13_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.13.0
497[OP_TEE_optee_client_commits_3_13_0]: https://github.com/OP-TEE/optee_client/compare/3.12.0...3.13.0
498[OP_TEE_optee_client_pr_3_13_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-20..2021-04-30
499
500[OP_TEE_optee_test_release_3_13_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.13.0
501[OP_TEE_optee_test_commits_3_13_0]: https://github.com/OP-TEE/optee_test/compare/3.12.0...3.13.0
502[OP_TEE_optee_test_pr_3_13_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-20..2021-04-30
503
504[OP_TEE_build_release_3_13_0]: https://github.com/OP-TEE/build/releases/tag/3.13.0
505[OP_TEE_build_commits_3_13_0]: https://github.com/OP-TEE/build/compare/3.12.0...3.13.0
506[OP_TEE_build_pr_3_13_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-20..2021-04-30
507
508[linaro_swg_optee_examples_release_3_13_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.13.0
509[linaro_swg_optee_examples_commits_3_13_0]: https://github.com/linaro-swg/optee_examples/compare/3.12.0...3.13.0
510[linaro_swg_optee_examples_pr_3_13_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-20..2021-04-30
511
512# OP-TEE - version 3.12.0 (2021-01-20)
513
514- Links to the release pages, commits and pull requests merged into this release for:
515  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_12_0], [commits][OP_TEE_optee_os_commits_3_12_0] and [pull requests][OP_TEE_optee_os_pr_3_12_0]
516  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_12_0], [commits][OP_TEE_optee_client_commits_3_12_0] and [pull requests][OP_TEE_optee_client_pr_3_12_0]
517  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_12_0], [commits][OP_TEE_optee_test_commits_3_12_0] and [pull requests][OP_TEE_optee_test_pr_3_12_0]
518  - OP-TEE/build: [release page][OP_TEE_build_release_3_12_0], [commits][OP_TEE_build_commits_3_12_0] and [pull requests][OP_TEE_build_pr_3_12_0]
519  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_12_0], [commits][linaro_swg_optee_examples_commits_3_12_0] and [pull requests][linaro_swg_optee_examples_pr_3_12_0]
520
521
522[OP_TEE_optee_os_release_3_12_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.12.0
523[OP_TEE_optee_os_commits_3_12_0]: https://github.com/OP-TEE/optee_os/compare/3.11.0...3.12.0
524[OP_TEE_optee_os_pr_3_12_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-10-16..2021-01-20
525
526[OP_TEE_optee_client_release_3_12_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.12.0
527[OP_TEE_optee_client_commits_3_12_0]: https://github.com/OP-TEE/optee_client/compare/3.11.0...3.12.0
528[OP_TEE_optee_client_pr_3_12_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-10-16..2021-01-20
529
530[OP_TEE_optee_test_release_3_12_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.12.0
531[OP_TEE_optee_test_commits_3_12_0]: https://github.com/OP-TEE/optee_test/compare/3.11.0...3.12.0
532[OP_TEE_optee_test_pr_3_12_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-10-16..2021-01-20
533
534[OP_TEE_build_release_3_12_0]: https://github.com/OP-TEE/build/releases/tag/3.12.0
535[OP_TEE_build_commits_3_12_0]: https://github.com/OP-TEE/build/compare/3.11.0...3.12.0
536[OP_TEE_build_pr_3_12_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-10-16..2021-01-20
537
538[linaro_swg_optee_examples_release_3_12_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.12.0
539[linaro_swg_optee_examples_commits_3_12_0]: https://github.com/linaro-swg/optee_examples/compare/3.11.0...3.12.0
540[linaro_swg_optee_examples_pr_3_12_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-10-16..2021-01-20
541
542# OP-TEE - version 3.11.0 (2020-10-16)
543
544- Links to the release pages, commits and pull requests merged into this release for:
545  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_11_0], [commits][OP_TEE_optee_os_commits_3_11_0] and [pull requests][OP_TEE_optee_os_pr_3_11_0]
546  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_11_0], [commits][OP_TEE_optee_client_commits_3_11_0] and [pull requests][OP_TEE_optee_client_pr_3_11_0]
547  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_11_0], [commits][OP_TEE_optee_test_commits_3_11_0] and [pull requests][OP_TEE_optee_test_pr_3_11_0]
548  - OP-TEE/build: [release page][OP_TEE_build_release_3_11_0], [commits][OP_TEE_build_commits_3_11_0] and [pull requests][OP_TEE_build_pr_3_11_0]
549  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_11_0], [commits][linaro_swg_optee_examples_commits_3_11_0] and [pull requests][linaro_swg_optee_examples_pr_3_11_0]
550
551
552[OP_TEE_optee_os_release_3_11_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.11.0
553[OP_TEE_optee_os_commits_3_11_0]: https://github.com/OP-TEE/optee_os/compare/3.10.0...3.11.0
554[OP_TEE_optee_os_pr_3_11_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-08-21..2020-10-16
555
556[OP_TEE_optee_client_release_3_11_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.11.0
557[OP_TEE_optee_client_commits_3_11_0]: https://github.com/OP-TEE/optee_client/compare/3.10.0...3.11.0
558[OP_TEE_optee_client_pr_3_11_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-08-21..2020-10-16
559
560[OP_TEE_optee_test_release_3_11_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.11.0
561[OP_TEE_optee_test_commits_3_11_0]: https://github.com/OP-TEE/optee_test/compare/3.10.0...3.11.0
562[OP_TEE_optee_test_pr_3_11_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-08-21..2020-10-16
563
564[OP_TEE_build_release_3_11_0]: https://github.com/OP-TEE/build/releases/tag/3.11.0
565[OP_TEE_build_commits_3_11_0]: https://github.com/OP-TEE/build/compare/3.10.0...3.11.0
566[OP_TEE_build_pr_3_11_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-08-21..2020-10-16
567
568[linaro_swg_optee_examples_release_3_11_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.11.0
569[linaro_swg_optee_examples_commits_3_11_0]: https://github.com/linaro-swg/optee_examples/compare/3.10.0...3.11.0
570[linaro_swg_optee_examples_pr_3_11_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-08-21..2020-10-16
571
572# OP-TEE - version 3.10.0 (2020-08-21)
573
574- Links to the release pages, commits and pull requests merged into this release for:
575  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_10_0], [commits][OP_TEE_optee_os_commits_3_10_0] and [pull requests][OP_TEE_optee_os_pr_3_10_0]
576  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_10_0], [commits][OP_TEE_optee_client_commits_3_10_0] and [pull requests][OP_TEE_optee_client_pr_3_10_0]
577  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_10_0], [commits][OP_TEE_optee_test_commits_3_10_0] and [pull requests][OP_TEE_optee_test_pr_3_10_0]
578  - OP-TEE/build: [release page][OP_TEE_build_release_3_10_0], [commits][OP_TEE_build_commits_3_10_0] and [pull requests][OP_TEE_build_pr_3_10_0]
579  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_10_0], [commits][linaro_swg_optee_examples_commits_3_10_0] and [pull requests][linaro_swg_optee_examples_pr_3_10_0]
580
581
582[OP_TEE_optee_os_release_3_10_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.10.0
583[OP_TEE_optee_os_commits_3_10_0]: https://github.com/OP-TEE/optee_os/compare/3.9.0...3.10.0
584[OP_TEE_optee_os_pr_3_10_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-04-22..2020-08-21
585
586[OP_TEE_optee_client_release_3_10_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.10.0
587[OP_TEE_optee_client_commits_3_10_0]: https://github.com/OP-TEE/optee_client/compare/3.9.0...3.10.0
588[OP_TEE_optee_client_pr_3_10_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-04-22..2020-08-21
589
590[OP_TEE_optee_test_release_3_10_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.10.0
591[OP_TEE_optee_test_commits_3_10_0]: https://github.com/OP-TEE/optee_test/compare/3.9.0...3.10.0
592[OP_TEE_optee_test_pr_3_10_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-04-22..2020-08-21
593
594[OP_TEE_build_release_3_10_0]: https://github.com/OP-TEE/build/releases/tag/3.10.0
595[OP_TEE_build_commits_3_10_0]: https://github.com/OP-TEE/build/compare/3.9.0...3.10.0
596[OP_TEE_build_pr_3_10_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-04-22..2020-08-21
597
598[linaro_swg_optee_examples_release_3_10_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.10.0
599[linaro_swg_optee_examples_commits_3_10_0]: https://github.com/linaro-swg/optee_examples/compare/3.9.0...3.10.0
600[linaro_swg_optee_examples_pr_3_10_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-04-22..2020-08-21
601
602# OP-TEE - version 3.9.0 (2020-04-22)
603
604- Links to the release pages, commits and pull requests merged into this release for:
605  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_9_0], [commits][OP_TEE_optee_os_commits_3_9_0] and [pull requests][OP_TEE_optee_os_pr_3_9_0]
606  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_9_0], [commits][OP_TEE_optee_client_commits_3_9_0] and [pull requests][OP_TEE_optee_client_pr_3_9_0]
607  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_9_0], [commits][OP_TEE_optee_test_commits_3_9_0] and [pull requests][OP_TEE_optee_test_pr_3_9_0]
608  - OP-TEE/build: [release page][OP_TEE_build_release_3_9_0], [commits][OP_TEE_build_commits_3_9_0] and [pull requests][OP_TEE_build_pr_3_9_0]
609  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_9_0], [commits][linaro_swg_optee_examples_commits_3_9_0] and [pull requests][linaro_swg_optee_examples_pr_3_9_0]
610
611
612[OP_TEE_optee_os_release_3_9_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.9.0
613[OP_TEE_optee_os_commits_3_9_0]: https://github.com/OP-TEE/optee_os/compare/3.8.0...3.9.0
614[OP_TEE_optee_os_pr_3_9_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-05-22
615
616[OP_TEE_optee_client_release_3_9_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.9.0
617[OP_TEE_optee_client_commits_3_9_0]: https://github.com/OP-TEE/optee_client/compare/3.8.0...3.9.0
618[OP_TEE_optee_client_pr_3_9_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-05-22
619
620[OP_TEE_optee_test_release_3_9_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.9.0
621[OP_TEE_optee_test_commits_3_9_0]: https://github.com/OP-TEE/optee_test/compare/3.8.0...3.9.0
622[OP_TEE_optee_test_pr_3_9_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-05-22
623
624[OP_TEE_build_release_3_9_0]: https://github.com/OP-TEE/build/releases/tag/3.9.0
625[OP_TEE_build_commits_3_9_0]: https://github.com/OP-TEE/build/compare/3.8.0...3.9.0
626[OP_TEE_build_pr_3_9_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-05-22
627
628[linaro_swg_optee_examples_release_3_9_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.9.0
629[linaro_swg_optee_examples_commits_3_9_0]: https://github.com/linaro-swg/optee_examples/compare/3.8.0...3.9.0
630[linaro_swg_optee_examples_pr_3_9_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-05-22
631
632# OP-TEE - version 3.8.0 (2020-01-24)
633
634- Links to the release pages, commits and pull requests merged into this release for:
635  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_8_0], [commits][OP_TEE_optee_os_commits_3_8_0] and [pull requests][OP_TEE_optee_os_pr_3_8_0]
636  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_8_0], [commits][OP_TEE_optee_client_commits_3_8_0] and [pull requests][OP_TEE_optee_client_pr_3_8_0]
637  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_8_0], [commits][OP_TEE_optee_test_commits_3_8_0] and [pull requests][OP_TEE_optee_test_pr_3_8_0]
638  - OP-TEE/build: [release page][OP_TEE_build_release_3_8_0], [commits][OP_TEE_build_commits_3_8_0] and [pull requests][OP_TEE_build_pr_3_8_0]
639  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_8_0], [commits][linaro_swg_optee_examples_commits_3_8_0] and [pull requests][linaro_swg_optee_examples_pr_3_8_0]
640
641
642[OP_TEE_optee_os_release_3_8_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.8.0
643[OP_TEE_optee_os_commits_3_8_0]: https://github.com/OP-TEE/optee_os/compare/3.7.0...3.8.0
644[OP_TEE_optee_os_pr_3_8_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-01-24
645
646[OP_TEE_optee_client_release_3_8_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.8.0
647[OP_TEE_optee_client_commits_3_8_0]: https://github.com/OP-TEE/optee_client/compare/3.7.0...3.8.0
648[OP_TEE_optee_client_pr_3_8_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2020-01-24
649
650[OP_TEE_optee_test_release_3_8_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.8.0
651[OP_TEE_optee_test_commits_3_8_0]: https://github.com/OP-TEE/optee_test/compare/3.7.0...3.8.0
652[OP_TEE_optee_test_pr_3_8_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2020-01-24
653
654[OP_TEE_build_release_3_8_0]: https://github.com/OP-TEE/build/releases/tag/3.8.0
655[OP_TEE_build_commits_3_8_0]: https://github.com/OP-TEE/build/compare/3.7.0...3.8.0
656[OP_TEE_build_pr_3_8_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2020-01-24
657
658[linaro_swg_optee_examples_release_3_8_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.8.0
659[linaro_swg_optee_examples_commits_3_8_0]: https://github.com/linaro-swg/optee_examples/compare/3.7.0...3.8.0
660[linaro_swg_optee_examples_pr_3_8_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2020-01-24
661
662# OP-TEE - version 3.7.0 (2019-10-18)
663
664- Links to the release pages, commits and pull requests merged into this release for:
665  - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_7_0], [commits][OP_TEE_optee_os_commits_3_7_0] and [pull requests][OP_TEE_optee_os_pr_3_7_0]
666  - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_7_0], [commits][OP_TEE_optee_client_commits_3_7_0] and [pull requests][OP_TEE_optee_client_pr_3_7_0]
667  - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_7_0], [commits][OP_TEE_optee_test_commits_3_7_0] and [pull requests][OP_TEE_optee_test_pr_3_7_0]
668  - OP-TEE/build: [release page][OP_TEE_build_release_3_7_0], [commits][OP_TEE_build_commits_3_7_0] and [pull requests][OP_TEE_build_pr_3_7_0]
669  - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_7_0], [commits][linaro_swg_optee_examples_commits_3_7_0] and [pull requests][linaro_swg_optee_examples_pr_3_7_0]
670
671
672[OP_TEE_optee_os_release_3_7_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.7.0
673[OP_TEE_optee_os_commits_3_7_0]: https://github.com/OP-TEE/optee_os/compare/3.6.0...3.7.0
674[OP_TEE_optee_os_pr_3_7_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2019-10-18
675
676[OP_TEE_optee_client_release_3_7_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.7.0
677[OP_TEE_optee_client_commits_3_7_0]: https://github.com/OP-TEE/optee_client/compare/3.6.0...3.7.0
678[OP_TEE_optee_client_pr_3_7_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2019-10-18
679
680[OP_TEE_optee_test_release_3_7_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.7.0
681[OP_TEE_optee_test_commits_3_7_0]: https://github.com/OP-TEE/optee_test/compare/3.6.0...3.7.0
682[OP_TEE_optee_test_pr_3_7_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2019-10-18
683
684[OP_TEE_build_release_3_7_0]: https://github.com/OP-TEE/build/releases/tag/3.7.0
685[OP_TEE_build_commits_3_7_0]: https://github.com/OP-TEE/build/compare/3.6.0...3.7.0
686[OP_TEE_build_pr_3_7_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2019-10-18
687
688[linaro_swg_optee_examples_release_3_7_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.7.0
689[linaro_swg_optee_examples_commits_3_7_0]: https://github.com/linaro-swg/optee_examples/compare/3.6.0...3.7.0
690[linaro_swg_optee_examples_pr_3_7_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2019-10-18
691
692# OP-TEE - version 3.6.0 (2019-07-05)
693
694- Link to the GitHub [release page][github_release_3_6_0].
695- Links to the [commits][github_commits_3_6_0] and
696[pull requests][github_pr_3_6_0] merged into this release.
697
698[github_release_3_6_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.6.0
699[github_commits_3_6_0]: https://github.com/OP-TEE/optee_os/compare/3.5.0...3.6.0
700[github_pr_3_6_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-04-26..2019-07-05
701
702# OP-TEE - version 3.5.0 (2019-04-26)
703
704- Link to the GitHub [release page][github_release_3_5_0].
705- Links to the [commits][github_commits_3_5_0] and
706[pull requests][github_pr_3_5_0] merged into this release.
707
708[github_release_3_5_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.5.0
709[github_commits_3_5_0]: https://github.com/OP-TEE/optee_os/compare/3.4.0...3.5.0
710[github_pr_3_5_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-01-26..2019-04-26
711
712# OP-TEE - version 3.4.0 (2019-01-25)
713
714- Link to the GitHub [release page][github_release_3_4_0].
715- Links to the [commits][github_commits_3_4_0] and
716[pull requests][github_pr_3_4_0] merged into this release.
717
718[github_release_3_4_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.4.0
719[github_commits_3_4_0]: https://github.com/OP-TEE/optee_os/compare/3.3.0...3.4.0
720[github_pr_3_4_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2018-10-12..2019-01-25
721
722# OP-TEE - version 3.3.0 (2018-10-12)
723
724- Link to the GitHub [release page][github_release_3_3_0].
725- Links to the [commits][github_commits_3_3_0] and
726[pull requests][github_pr_3_3_0] merged into this release.
727
728[github_release_3_3_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.3.0
729[github_commits_3_3_0]: https://github.com/OP-TEE/optee_os/compare/3.2.0...3.3.0
730[github_pr_3_3_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2018-07-04..2018-10-12
731
732# OP-TEE - version 3.2.0 (2018-07-04)
733
734- Link to the GitHub [release page][github_release_3_2_0].
735- Links to the [commits][github_commits_3_2_0] and
736[pull requests][github_pr_3_2_0] merged into this release.
737
738## Known issues
739
740* HiKey960: assertion in bget create_free_block() \[memalign() self-test\] ([#2414])
741* D02: assertion '!have_spinlock()' ([#2437])
742
743[github_commits_3_2_0]: https://github.com/OP-TEE/optee_os/compare/3.1.0...3.2.0
744[github_pr_3_2_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2018-04-13..2018-07-04
745[github_release_3_2_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.2.0
746[#2414]: https://github.com/OP-TEE/optee_os/issues/2414
747[#2437]: https://github.com/OP-TEE/optee_os/issues/2437
748
749# OP-TEE - version 3.1.0 (2018-04-13)
750
751- Link to the GitHub [release page][github_release_3_1_0].
752- Links to the [commits][github_commits_3_1_0] and
753[pull requests][github_pr_3_1_0] merged into this release.
754
755[github_commits_3_1_0]: https://github.com/OP-TEE/optee_os/compare/3.0.0...3.1.0
756[github_pr_3_1_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2018-01-26..2018-04-13
757[github_release_3_1_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.1.0
758
759# OP-TEE - version 3.0.0 (2018-01-26)
760
761[Link][github_commits_3_0_0] to a list of all commits between this release and
762the previous one (2.6.0).
763
764About backwards compatibility: Trusted Applications built with OP-TEE 2.5.0 or
765earlier will not run properly with a *debug* build of this release due
766to commit [0e1c6e8e][commit_0e1c6e8e] ("Dump call stack on TA panic").
767Non-debug builds are not affected.
768
769## New features
770
771* New supported platforms: Armada 3700 ([#1946]), Poplar ([#1999]), 64-bit
772  support for FSL ls1012ardb ([#1941]), i.MX6SX Sabreauto ([#1974]).
773* arm32: sm: init CNTVOFF ([#2052])
774* Debug/info/error traces: make output more compact ([#2011])
775* tzc380: implement new functions ([#1994])
776* Secure Data Path: add pseudo-TA to convert VA to PA (#1993])
777* Pager: use NEON AES GCM implementation ([#1959])
778* Crypto: add optimized AES GCM implementation using NEON ([#1949])
779* Add support for using secure storage for TA anti-rollback ([#1928])
780* Crypto: replace struct crypto_ops with function interface ([#1923],
781  [#1931])
782* aosp_optee.mk: define OPTEE_BIN ([#1922])
783* Add build option to allow concurrent execution of single-instance TAs
784  ([#1915])
785* Pager: support for address sanitizer ([#1856])
786* Pager: make memory between CFG_TEE_RAM_START and TEE load address usable by
787  pager ([#1826])
788
789## Bug fixes
790
791* Fix crash in tee_mmu_final() on TA loading error ([#2092])
792* LibTomCrypt: fix issue causing invalid output when using AES CTR with
793hardware acceleration (CFG_CRYPTO_WITH_CE) ([#2086])
794* pl310: fix cache sync ([#2035])
795* tzc380: do not write reserved bits ([#1994])
796* Fix potential double free in ta_open() ([#1970])
797* libfdt: fix undefined behaviour in fdt_offset_ptr() ([#1969])
798* imx_wdog: fix register access ([#1966])
799* Secure storage: fix potential memory leak after early return ([#1961])
800* LibTomCrypt: fix double free in dsa_import() ([#1963])
801* RPMB: fix TA independance issue in secure storage ([#1921])
802* RPMB: return TEE_ERROR_ACCESS_CONFLICT instead of panicking when a TA
803  attempts to create an existing persistent object without the overwrite flag
804  ([#1919])
805* PSCI: pass non-secure context to psci_system_suspend() ([#1916])
806* Fix "Argument list too long" during "make clean" ([#1897])
807
808## Security fixes
809
810* Mitigations and hardening against the Spectre and Meltdown vulnerabilities
811  (CVE-2017-5753, CVE-2017-5715, CVE-2017-5754).
812
813## Known issues
814
815* Secure storage (REE FS): storage size not updated after
816TEE_TruncateObjectData() ([#2094])
817* Possible deadlock with CFG_WITH_PAGER=y when loading a TA and not enough
818page tables are available in pgt_cache ([#2080])
819
820## Tested on
821
822The release was tested successfully on the platforms listed below.
823
824<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
825* d02
826* hikey
827* hikey-hikey960
828* imx-mx6ulevk
829* imx-mx7dsabresd
830* marvell-armada7k8k
831* marvell-armada3700
832* mediatek-mt8173
833* rcar-salvator_m3
834* rockchip-rk322x
835* rpi3
836* sam
837* ti
838* vexpress-juno
839* vexpress-qemu_armv8a
840* vexpress-qemu_virt
841
842[commit_0e1c6e8e]: https://github.com/OP-TEE/optee_os/commit/0e1c6e8e
843[github_commits_3_0_0]: https://github.com/OP-TEE/optee_os/compare/2.6.0...3.0.0
844[#2092]: https://github.com/OP-TEE/optee_os/pull/2092
845[#2086]: https://github.com/OP-TEE/optee_os/pull/2086
846[#2094]: https://github.com/OP-TEE/optee_os/issues/2094
847[#2080]: https://github.com/OP-TEE/optee_os/issues/2080
848[#2052]: https://github.com/OP-TEE/optee_os/pull/2052
849[#2035]: https://github.com/OP-TEE/optee_os/pull/2035
850[#2011]: https://github.com/OP-TEE/optee_os/pull/2011
851[#1999]: https://github.com/OP-TEE/optee_os/pull/1999
852[#1994]: https://github.com/OP-TEE/optee_os/pull/1994
853[#1993]: https://github.com/OP-TEE/optee_os/pull/1993
854[#1974]: https://github.com/OP-TEE/optee_os/pull/1974
855[#1970]: https://github.com/OP-TEE/optee_os/pull/1970
856[#1969]: https://github.com/OP-TEE/optee_os/pull/1969
857[#1966]: https://github.com/OP-TEE/optee_os/pull/1966
858[#1963]: https://github.com/OP-TEE/optee_os/pull/1963
859[#1961]: https://github.com/OP-TEE/optee_os/pull/1961
860[#1959]: https://github.com/OP-TEE/optee_os/pull/1959
861[#1949]: https://github.com/OP-TEE/optee_os/pull/1949
862[#1946]: https://github.com/OP-TEE/optee_os/pull/1946
863[#1941]: https://github.com/OP-TEE/optee_os/pull/1941
864[#1931]: https://github.com/OP-TEE/optee_os/pull/1931
865[#1928]: https://github.com/OP-TEE/optee_os/pull/1928
866[#1923]: https://github.com/OP-TEE/optee_os/pull/1923
867[#1922]: https://github.com/OP-TEE/optee_os/pull/1922
868[#1921]: https://github.com/OP-TEE/optee_os/pull/1921
869[#1919]: https://github.com/OP-TEE/optee_os/pull/1919
870[#1916]: https://github.com/OP-TEE/optee_os/pull/1916
871[#1915]: https://github.com/OP-TEE/optee_os/pull/1915
872[#1897]: https://github.com/OP-TEE/optee_os/pull/1897
873[#1856]: https://github.com/OP-TEE/optee_os/pull/1856
874[#1826]: https://github.com/OP-TEE/optee_os/pull/1826
875
876# OP-TEE - version 2.6.0
877
878[Link][github_commits_2_6_0] to a list of all commits between this release and
879the previous one (2.5.0).
880
881## New features
882
883* New supported platforms: Atmel SAMA5 ([#1714]), HiSilicon HiKey960 ([#1684]),
884  Rockchip RK322X ([#1666]), NXP LS1043A-RDB/LS1046A-RDB ([#1787]), Marvell
885  Armada 70x0/80x0 ([#1807]).
886* Dynamic shared memory (non-contiguous, non-secure memory can be mapped into
887  Trusted Applications VA space) ([#1631])
888* Dump TA call stack on panic ([#1858])
889* i.MX: PSCI reset ([#1849])
890* plat-ti: AM43xx: suspend/resume support ([#1822])
891* QEMU SMP support ([#1820])
892* plat-ti: AM43xx: disable TRNG ([#1816])
893* plat-ti: enable Secure Data Path by default ([#1815])
894* Improve symbolize.py ([#1778], [#1767], [#1766])
895* Early TAs (TAs linked in tee.bin) ([#1733])
896* Suspend/resume framework for arm32 and imx7d support ([#1729])
897* RK322X PSCI version, features and suspend support ([#1720])
898* arm32: handle aborts in system mode ([#1703])
899* i.MX: add SNVS SRTC support ([#1700])
900* GCC7 support ([#1693])
901* Improve detection of programming errors in locking code ([#1671], [#1670])
902* Support TEE RAM size larger than page directory size ([#1669])
903
904## Removed features
905
906* Remove TUI code ([#1842])
907
908## Bug fixes
909
910* Add missing synchronization barrier in core_mmu_map_pages() ([#1827])
911* Secure storage: REE FS: fix bug in error path ([#1801])
912* ASAN bug fixes ([#1799])
913* Fix race in core_mmu_user_mapping_is_active() ([#1785])
914* libutee: printf() and puts() fixes, add putchar() ([#1759], [#1754])
915* arm32: GICv3: fix FIQ masking in IRQ/ABT/SVC/UND handlers ([#1748])
916* arm32: preserve r12 in native_intr_handler() ([#1682])
917* arm64: fix print_kernel_stack() ([#1664])
918* benchmark: fix core data-abort ([#1658])
919
920## Security fixes or enhancements
921
922* crypto: fix software PRNG weaknesses
923  ([OP-TEE-2017-0001][OP-TEE-2017-0001]) ([#1843])
924
925## Tested on
926
927The release was tested successfully on the platforms listed below.
928If a platform is not listed, it means the release was not tested on this
929platform.
930
931<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
932* d02
933* hikey
934* hikey-hikey960
935* imx-mx6ulevk
936* imx-mx7dsabresd
937* ls-ls1021a??? (single core)
938* ls-ls1043ardb
939* ls-ls1046ardb
940* mediatek-mt8173
941* rcar
942* rockchip-rk322x
943* rpi3
944* sam
945* stm-b2260
946* stm-cannes
947* ti-???
948* vexpress-fvp
949* vexpress-juno
950* vexpress-qemu_armv8a
951* vexpress-qemu_virt
952
953[github_commits_2_6_0]: https://github.com/OP-TEE/optee_os/compare/2.5.0...2.6.0
954[#1858]: https://github.com/OP-TEE/optee_os/issues/1858
955[#1849]: https://github.com/OP-TEE/optee_os/issues/1849
956[#1843]: https://github.com/OP-TEE/optee_os/issues/1843
957[#1842]: https://github.com/OP-TEE/optee_os/issues/1842
958[#1827]: https://github.com/OP-TEE/optee_os/issues/1827
959[#1822]: https://github.com/OP-TEE/optee_os/issues/1822
960[#1820]: https://github.com/OP-TEE/optee_os/issues/1820
961[#1816]: https://github.com/OP-TEE/optee_os/issues/1816
962[#1815]: https://github.com/OP-TEE/optee_os/issues/1815
963[#1807]: https://github.com/OP-TEE/optee_os/issues/1807
964[#1801]: https://github.com/OP-TEE/optee_os/issues/1801
965[#1799]: https://github.com/OP-TEE/optee_os/issues/1799
966[#1787]: https://github.com/OP-TEE/optee_os/issues/1787
967[#1785]: https://github.com/OP-TEE/optee_os/issues/1785
968[#1778]: https://github.com/OP-TEE/optee_os/issues/1778
969[#1767]: https://github.com/OP-TEE/optee_os/issues/1767
970[#1766]: https://github.com/OP-TEE/optee_os/issues/1766
971[#1759]: https://github.com/OP-TEE/optee_os/issues/1759
972[#1754]: https://github.com/OP-TEE/optee_os/issues/1754
973[#1748]: https://github.com/OP-TEE/optee_os/issues/1748
974[#1733]: https://github.com/OP-TEE/optee_os/issues/1733
975[#1729]: https://github.com/OP-TEE/optee_os/issues/1729
976[#1720]: https://github.com/OP-TEE/optee_os/issues/1720
977[#1714]: https://github.com/OP-TEE/optee_os/issues/1714
978[#1703]: https://github.com/OP-TEE/optee_os/issues/1703
979[#1700]: https://github.com/OP-TEE/optee_os/issues/1700
980[#1693]: https://github.com/OP-TEE/optee_os/issues/1693
981[#1684]: https://github.com/OP-TEE/optee_os/issues/1684
982[#1682]: https://github.com/OP-TEE/optee_os/issues/1682
983[#1671]: https://github.com/OP-TEE/optee_os/issues/1671
984[#1670]: https://github.com/OP-TEE/optee_os/issues/1670
985[#1669]: https://github.com/OP-TEE/optee_os/issues/1669
986[#1666]: https://github.com/OP-TEE/optee_os/issues/1666
987[#1664]: https://github.com/OP-TEE/optee_os/issues/1664
988[#1658]: https://github.com/OP-TEE/optee_os/issues/1658
989[#1631]: https://github.com/OP-TEE/optee_os/issues/1631
990[OP-TEE-2017-0001]: https://www.op-tee.org/security-advisories/
991
992# OP-TEE - version 2.5.0
993
994[Link][github_commits_2_5_0] to a list of all commits between this release and
995the previous one (2.4.0).
996
997## New features
998
999* New supported platform: i.MX7D ([#1639])
1000* Secure storage: anti-rollback protection for REE FS using RPMB FS ([#1630])
1001* Assign non-secure DDR configuration from DT if CFG_DT=y ([#1623])
1002* Add new image format: split image into three separate binaries suitable for
1003  upcoming ARM Trusted Firmware ([#1589]).
1004* Make alignment check configurable ([#1586])
1005* drivers: add TZC380 driver ([#1578])
1006* plat-imx: PSCI CPU off ([#1577])
1007* 64-bit paging on QEMU v8 and HiKey ([#1575], [#1592])
1008* Benchmark framework ([#1365])
1009* Dump call stack of user TAs on abort ([#1552])
1010* plat-hikey: enable Secure Data Path ([#1440])
1011* Add interface to load and decrypt/authenticate user TAs ([#1513])
1012* plat-ti: add secure paging support ([#1493])
1013* plat-ti: add OTP hardware key support ([#1492])
1014* Support ARM GICv3 ([#1465])
1015
1016## Removed features
1017
1018* stm-orly2 is not supported anymore ([#1650])
1019* Remove secure storage based on SQL FS (`CFG_SQL_FS=y`) ([#1490])
1020* Remove support for mapping user TAs with 1 MiB or 2 MiB granularity
1021  (`CFG_SMALL_PAGE_USER_TA=n`) ([#1559]). TAs are always mapped using small
1022  pages.
1023
1024## Bug fixes
1025
1026* Reduce size of non-pageable code ([#1621])
1027* Ignore `TA_FLAG_MULTI_SESSION` and `TA_FLAG_INSTANCE_KEEP_ALIVE` when
1028  `TA_FLAG_SINGLE_INSTANCE` is not set ([#1574])
1029* libutee: remove buffering for AES GCM (PR#1573) and AES CTR ([#1580])
1030* Fix ROUNDUP()/ROUNDDOWN() macros ([#1519])
1031* Do not touch other bits in GICD_CTLR ([#1508])
1032* Fix build issue with `DEBUG=y` and `CFG_TEE_CORE_LOG_LEVEL=0` ([#1502])
1033* crypto: do not restrict hash size when algorithm is ECDSA ([#1497])
1034
1035## Security fixes or enhancements
1036
1037- crypto: fix RSA key leakage after fault injection attack
1038  ([OP-TEE-2016-0003][OP-TEE-2016-0003])  ([#1610])
1039* crypto: fix RSA key leakage after side channel attack
1040  ([OP-TEE-2016-0002][OP-TEE-2016-0002]) ([#1610])
1041* Make pager aliased pages not always writable ([#1551])
1042* Support for no-exec RO and RW data ([#1459], [#1550])
1043
1044## New issues
1045
1046* armv7: some platform-specific code (`plat_cpu_reset_early()`) overwrites
1047SCTLR bits configured by generic code. This affects alignment checks (`SCTLR.A`)
1048and write-implies-no-exec (`SCTLR.WXN`, `SCTLR.UWXN`), which can therefore not
1049be configured via the compile-time `CFG_` variables.
1050* armv7: plat-imx: Cortex-A9 cores should enable branch prediction (`SCLTR.Z`)
1051for improved performance.
1052* [#1656] qemu_armv8a: init hangs when secure data path and pager are both
1053  enabled.
1054
1055## Tested on
1056
1057In the list below, _standard_ means that the `xtest` program passed with
1058its default configuration, while _extended_ means it was run successfully
1059with the additional GlobalPlatform™ TEE Initial Configuration Test Suite
1060v1.1.0.4.
1061
1062If a platform is not listed, it means the release was not tested on this
1063platform.
1064
1065<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
1066* d02: extended
1067* hikey: extended
1068* imx-mx6ulevk: standard
1069* imx-mx6ullevk: standard
1070* imx-mx7dsabresd: standard
1071* ls-ls1021atwr: standard
1072* mediatek-mt8173: standard
1073* rcar-h3: standard
1074* rpi3: standard
1075* stm-b2260: extended
1076* stm-cannes: extended
1077* ti-am43xx: standard
1078* ti-am57xx: standard
1079* ti-dra7xx: standard
1080* vexpress-fvp: standard
1081* vexpress-juno: standard
1082* vexpress-qemu_armv8a: standard
1083* vexpress-qemu_virt: standard
1084
1085[github_commits_2_5_0]: https://github.com/OP-TEE/optee_os/compare/2.4.0...2.5.0-rc1
1086[#1656]: https://github.com/OP-TEE/optee_os/issues/1656
1087[#1650]: https://github.com/OP-TEE/optee_os/pull/1650
1088[#1639]: https://github.com/OP-TEE/optee_os/pull/1639
1089[#1630]: https://github.com/OP-TEE/optee_os/pull/1630
1090[#1623]: https://github.com/OP-TEE/optee_os/pull/1623
1091[#1621]: https://github.com/OP-TEE/optee_os/pull/1621
1092[#1610]: https://github.com/OP-TEE/optee_os/pull/1610
1093[#1592]: https://github.com/OP-TEE/optee_os/pull/1592
1094[#1589]: https://github.com/OP-TEE/optee_os/pull/1589
1095[#1586]: https://github.com/OP-TEE/optee_os/pull/1586
1096[#1580]: https://github.com/OP-TEE/optee_os/pull/1580
1097[#1578]: https://github.com/OP-TEE/optee_os/pull/1578
1098[#1577]: https://github.com/OP-TEE/optee_os/pull/1577
1099[#1574]: https://github.com/OP-TEE/optee_os/pull/1574
1100[#1559]: https://github.com/OP-TEE/optee_os/pull/1559
1101[#1551]: https://github.com/OP-TEE/optee_os/pull/1551
1102[#1550]: https://github.com/OP-TEE/optee_os/pull/1550
1103[#1519]: https://github.com/OP-TEE/optee_os/pull/1519
1104[#1502]: https://github.com/OP-TEE/optee_os/pull/1502
1105[#1365]: https://github.com/OP-TEE/optee_os/pull/1365
1106[#1552]: https://github.com/OP-TEE/optee_os/pull/1552
1107[#1513]: https://github.com/OP-TEE/optee_os/pull/1513
1108[#1508]: https://github.com/OP-TEE/optee_os/pull/1508
1109[#1493]: https://github.com/OP-TEE/optee_os/pull/1493
1110[#1497]: https://github.com/OP-TEE/optee_os/pull/1497
1111[#1492]: https://github.com/OP-TEE/optee_os/pull/1492
1112[#1490]: https://github.com/OP-TEE/optee_os/pull/1490
1113[#1465]: https://github.com/OP-TEE/optee_os/pull/1465
1114[#1459]: https://github.com/OP-TEE/optee_os/pull/1459
1115[#1440]: https://github.com/OP-TEE/optee_os/pull/1440
1116[OP-TEE-2016-0003]: https://www.op-tee.org/security-advisories/
1117[OP-TEE-2016-0002]: https://www.op-tee.org/security-advisories/
1118
1119# OP-TEE - version 2.4.0
1120
1121[Link][github_commits_2_4_0] to a list of all commits between this release and
1122the previous one (2.3.0).
1123
1124Please note: this release is API-compatible with the previous one, but the
1125Secure Storage internal format for the REE and SQL FS is not compatible due to
1126commits [a238b74][commit_a238b74] ("core: REE FS: use the new hash tree
1127interface") and [44e900e][commit_44e900e] ("core: SQL FS: use the new hash tree
1128interface").
1129
1130## New features
1131
1132* Add porting guidelines
1133
1134* Add support for Secure Data Path which allows Client and Trusted Applications
1135  to share references to secure memory
1136
1137* New supported platform: Texas Instruments AM57xx (`PLATFORM=ti-am57xx`)
1138
1139* ARMv7-A: add support for platform services in secure monitor and add these
1140  services for the DRA7xx platform
1141
1142* SPI framework and PL022 driver cleanup and improvements
1143
1144* Use CNTPCT (when available) to add entropy to the software PRNG
1145
1146* Add GlobalPlatform Socket API for UDP and TCP (IPv4 and IPv6)
1147
1148* DRA7: add TRNG driver, enable GICv2 driver
1149
1150* Support load address larger than 4G
1151
1152* libutee: preserve error code when calling TEE_Panic() for easier
1153  troubleshooting
1154
1155* Support TA profiling with gprof (-pg compiler switch)
1156
1157* Optimize the ELF loader for TAs when pager is enabled
1158
1159* Update documentation
1160
1161* Add paged secure shared memory that can be transferred between TAs as
1162  needed
1163
1164* Introduce MOBJ abstraction
1165
1166* i.MX6: add PSCI "on" function
1167
1168* arm32: introduce PSCI framework
1169
1170## Bug fixes
1171
1172* Secure storage: improve integrity checking of the REE and SQL filesystems by
1173  adding a hash tree on the internal data structures. Any external modification
1174  is detected, except full rollback. Fixes [#1188][issue1188].
1175
1176* The linux driver will set the 'privileged' flag (TEE_GEN_CAP_PRIVILEGED) on
1177  the device intended for use by tee-supplicant. Fixes [#1199][issue1199].
1178
1179* RPMB: don't try to program the RPMB key by default
1180
1181* Fix "make clean" error cases
1182
1183* Fix issue when resetting persistent storage enumerator [#1332][issue1332]
1184
1185* Fix TA panic when doing AES CTS with specific buffer sizes
1186  [#1203][issue1203].
1187
1188## Known issues
1189
1190* On RPi3 xtest sometimes stall (rcu_sched self-detected stall on CPU) [#1353][issue1353]
1191* For multi-core PSCI support is to be added for ls1021atwr in OP-TEE.
1192* USB keyboard cannot be used to stop the u-boot timeout ([build issue131]).
1193* Travis service (build.git) seems unstable from time to time.
1194
1195## Tested on
1196
1197In the list below, _standard_ means that the `xtest` program passed with
1198its default configuration, while _extended_ means it was run successfully
1199with the additional GlobalPlatform™ TEE Initial Configuration Test Suite
1200v1.1.0.4.
1201
1202If a platform is not listed, it means the release was not tested on this
1203platform.
1204
1205<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
1206* d02: extended
1207* hikey: extended
1208* imx-mx6ulevk: standard
1209* ls-ls1021atwr: standard (single core)
1210* mediatek-mt8173: standard
1211* rcar-h3: standard
1212* rpi3: standard
1213* stm-b2260: extended
1214* ti-dra7xx: standard
1215* vexpress-fvp: standard
1216* vexpress-juno: standard
1217* vexpress-qemu_armv8a: standard
1218* vexpress-qemu_virt: standard
1219* zynqmp-zc1751_dc1: standard
1220* zynqmp-zc1751_dc2: standard
1221* zynqmp-zcu102: standard
1222
1223[github_commits_2_4_0]: https://github.com/OP-TEE/optee_os/compare/2.3.0...2.4.0
1224[issue1332]: https://github.com/OP-TEE/optee_os/issues/1332
1225[issue1353]: https://github.com/OP-TEE/optee_os/issues/1353
1226[build issue131]: https://github.com/OP-TEE/build/issues/131
1227[commit_a238b74]: https://github.com/OP-TEE/optee_os/commit/a238b744b1b3
1228[commit_44e900e]: https://github.com/OP-TEE/optee_os/commit/44e900eabfc1
1229
1230# OP-TEE - version 2.3.0
1231
1232[Link][github_commits_2_3_0] to a list of all commits between this release and
1233the previous one (2.2.0).
1234
1235Please note: this release is API-compatible with the previous one, but the
1236Secure Storage internal format for the REE FS is not compatible due to commit
1237[361fb3e][commit_361fb3e] ("core: REE FS: use a single file per object").
1238
1239[commit_361fb3e]: https://github.com/OP-TEE/optee_os/commit/361fb3e
1240
1241## New features
1242
1243* New supported platform: Xilinx Zynq 7000 ZC702 (`PLATFORM=zynq7k-zc702`)
1244
1245* Add debug assertions to spinlocks and mutexes
1246
1247* Add more CP15 register access macros for Cortex-A9
1248
1249* ARMv7-A: redesign secure monitor to make it easier to register services
1250
1251* ARMv7-A: cleanup boot arguments
1252
1253* libutee: extend `TEE_CheckMemoryAccessRights()` with
1254  `TEE_MEMORY_ACCESS_SECURE` and `TEE_MEMORY_ACCESS_NONSECURE`
1255
1256* plat-hikey: enable SPI by default and add sample test code
1257
1258* Consider `CFLAGS_ta_arm64` and `CFLAGS_ta_arm32` when building TAs
1259
1260* Secure storage refactoring
1261  - Simplify interface with tee-supplicant. Minimize round trips with normal
1262    world, especially by adding a cache for FS RPC payload data.
1263  - REE FS: use a single file per object, remove block cache.
1264
1265* Print call stack in panic()
1266
1267## Bug fixes
1268
1269* Fix UUID encoding when communicating with normal world (use big endian
1270  mode instead of native endianness). Related to this, the string format
1271  for UUIDs has changed in tee-supplicant, so that TA file names now follow
1272  the format defined in RFC4122 (a missing hyphen was added). The old format
1273  is still supported, but deprecated, and will likely be removed with the
1274  next major release.
1275
1276* Drop write permission to non-writable ELF segments after TA loading is
1277  complete.
1278
1279* mm: fix confusing memory mapping debug traces
1280
1281* plat-ti: fix issues with MMU mapping
1282
1283* crypto: fix clearing of big numbers
1284
1285* build: allow spaces and double quotes in CFG_ variables
1286
1287* mm: use paddr_t to support both 32- and 64-bit architectures properly.
1288  Resolves 32-bit truncation error when pool is at top of 32 bit address
1289  space on 64-bit architecture.
1290
1291* plat-stm: support pager. Fix pager on ARMv7-A SMP boards.
1292
1293* Fix debug output of Trusted Applications (remove "ERROR: TEE-CORE:" prefix)
1294
1295* Do not consider TA memref parameters as TA private memory
1296
1297* crypto: fix `cipher_final()` which would not call `cbc_done()` for CBC_MAC
1298  algorithms
1299
1300* fix for 16-way PL310
1301
1302* arm32: fix call stack unwinding (`print_stack()`)
1303
1304* arm32: fix spinlock assembly code
1305
1306* plat-stm, plat-imx: fix SCR initalization
1307
1308* Fix user L1 MMU entries calculation (non-LPAE), allowing TTBCR.N values
1309  other than 7.
1310
1311* mtk-mt8173: fix panic caused by incorrect size of SHMEM
1312
1313* plat-stm: fix RNG driver (non-flat mapping)
1314
1315## Known issues
1316
1317* New issues open on GitHub
1318  * [#1203][issue1203] AES-CTS mode will fail when inlen=0x100, in_incr=0x80
1319  * [#1199][issue1199] Both tee and teepriv reported GlobalPlatform compliant
1320  * [#1188][issue1188] Secure storage (SQL FS and REE FS): blocks not tied to
1321    current meta header
1322  * [#1172][issue1172] paddr_t should be larger than 32 bits when
1323    CFG_WITH_LPAE is enabled
1324
1325## Tested on
1326
1327In the list below, _standard_ means that the `xtest` program passed with
1328its default configuration, while _extended_ means it was run successfully
1329with the additional GlobalPlatform™ TEE Initial Configuration Test Suite
1330v1.1.0.4.
1331
1332If a platform is not listed, it means the release was not tested on this
1333platform.
1334
1335<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
1336* d02: extended
1337* hikey: extended
1338* imx-mx6ulevk: standard
1339* ls-ls1021atwr: standard
1340* mediatek-mt8173: standard
1341* rcar-h3: standard
1342* rpi3: standard
1343* stm-b2260: extended
1344* stm-cannes: extended
1345* ti-dra7xx: standard
1346* vexpress-fvp: standard
1347* vexpress-juno: standard
1348* vexpress-qemu_armv8a: standard
1349* vexpress-qemu_virt: extended
1350* zynqmp-zcu102: standard
1351
1352[github_commits_2_3_0]: https://github.com/OP-TEE/optee_os/compare/2.2.0...2.3.0
1353[issue1172]: https://github.com/OP-TEE/optee_os/issues/1172
1354[issue1188]: https://github.com/OP-TEE/optee_os/issues/1188
1355[issue1199]: https://github.com/OP-TEE/optee_os/issues/1199
1356[issue1203]: https://github.com/OP-TEE/optee_os/issues/1203
1357
1358# OP-TEE - version 2.2.0
1359
1360[Link][github_commits_2_2_0] to a list of all commits between this release and
1361the previous one (2.1.0).
1362
1363Please note: this release is API-compatible with the previous one, but the
1364Secure Storage internal format is not compatible due to commit
1365[fde4a75][commit_fde4a75] ("storage: encrypt the FEK with a TA-specific key").
1366
1367[commit_fde4a75]: https://github.com/OP-TEE/optee_os/commit/fde4a75
1368
1369## New features
1370
1371* New supported platforms:
1372	* Freescale i.MX6 Quad SABRE Lite & SD
1373	* HiSilicon D02
1374	* Raspberry Pi3
1375	* Renesas RCAR H3
1376	* STMicroelectronics b2260 - h410
1377
1378* Pager: Support paging of read/write pages by encrypting them with AES-GCM.
1379  Support paging of user TAs. Add global setting for TZSRAM size
1380  (CFG_CORE_TZSRAM_EMUL_SIZE), defaults to 300K.
1381
1382* Support for more than 8 CPU cores
1383
1384* Added SPI framework and PL022 driver
1385
1386* GPIO: framework supports multiple instances, PL061 driver now has get/set
1387  interrupt and mode control functions
1388
1389* Secure storage: Encrypt the File Encryption Key with a TA-specific key for
1390  better TA isolation. Add build-time and run-time support for multiple storage
1391  backends. Add SQLite backend.
1392
1393* Trusted User Interface: some code is introduced to support the implementation
1394  of TUI. This includes: a generic framebuffer driver, display and serial
1395  abstractions, and drivers for PL111 (LCD) / PL050 (KMI) / TZC400 and PS2
1396  mouse.
1397
1398* AES acceleration using ARMv8-A Cryptographic Extensions instructions is
1399  now supported in AArch32 mode
1400
1401* Add support for GCC flags: -fsanitize=undefined and -fsanitize=kernel-address
1402
1403* Use a global setting for core heap size (CFG_CORE_HEAP_SIZE), 64K by default.
1404
1405* Add macros to unwind and print the call stack of TEE core
1406
1407* Libtomcrypt: sync with the latest `develop` branch.
1408
1409* The Trusted Application SDK (ta_dev_kit.mk) can produce libraries (.a)
1410
1411* Rework assertions and TEE core panics and properly honor NDEBUG
1412
1413## Bug fixes
1414
1415* Fix incorrect algorithm passed to cipher.final()
1416
1417* scripts: support Python 2.x and 3.x
1418
1419* Secure storage: Add proper locking to support concurrent access. Fix sign
1420  extension bug with offset parameter of syscall storage_obj_seek which could
1421  cause errors in Aarch32 mode. Fix reading beyond end of file.
1422
1423* Aarch64: mask all maskable exceptions before doing a normal return from call.
1424
1425* Device Tree: add no-map property to OP-TEE node in reserved-memory.
1426
1427* LibTomcrypt: fix CVE-2016-6129
1428
1429## Known issues
1430
1431* New issues open on GitHub
1432  * [#1093][issue1093] rcar-h3: xtest 6010 hangs
1433  * [#1092][issue1092] rcar-h3: xtest 4010 fails
1434  * [#1081][issue1081] Bad mapping of TA secure memref parameters
1435  * [#1071][issue1071] __data_end may not correctly represent text start position when using CFG_WITH_PAGER
1436  * [#1069][issue1069] armv7/Aarch32: crash in stack unwind (DPRINT_STACK())
1437
1438## Tested on
1439
1440In the list below, _standard_ means that the `xtest` program passed with
1441its default configuration, while _extended_ means it was run successfully
1442with the additional GlobalPlatform™ TEE Initial Configuration Test Suite
1443v1.1.0.4.
1444
1445If a platform is not listed, it means the release was not tested on this
1446platform.
1447
1448<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
1449* d02: extended
1450* hikey: extended
1451* imx-mx6qsabrelite: standard
1452* imx-mx6qsabresd: standard
1453* rcar-h3: standard, pass except issues [#1092][issue1092] and [#1093][issue1093]
1454* rpi3: standard
1455* stm-b2260: standard
1456* stm-cannes: standard
1457* ti-dra7xx: standard
1458* vexpress-fvp: standard
1459* vexpress-juno: standard
1460* vexpress-qemu_armv8a: standard
1461* vexpress-qemu_virt: extended
1462* zynqmp-zcu102: standard
1463
1464[github_commits_2_2_0]: https://github.com/OP-TEE/optee_os/compare/2.1.0...2.2.0
1465[issue1081]: https://github.com/OP-TEE/optee_os/issues/1081
1466[issue1071]: https://github.com/OP-TEE/optee_os/issues/1071
1467[issue1069]: https://github.com/OP-TEE/optee_os/issues/1069
1468[issue1092]: https://github.com/OP-TEE/optee_os/issues/1092
1469[issue1093]: https://github.com/OP-TEE/optee_os/issues/1093
1470
1471# OP-TEE - version 2.1.0
1472
1473## New features
1474
1475* New supported platforms:
1476	* Xilinx Zynq UltraScale+ MPSOC
1477	* Spreadtrum SC9860
1478
1479* GCC5 support
1480
1481* Non Linear Mapping support: In OP-TEE kernel mode, the physical to virtual
1482  addresses was linear until this release, meaning the virtual addresses
1483  were equal to the physical addresses. This is no more the case in this
1484  release.
1485
1486* Font rendering routines have been introduced in order to ease an
1487  implementation of Trusted UI.
1488
1489* File Storage: Possibility to use the normal world filesystem and the RPMB
1490  implementations simultaneously.
1491
1492* AOSP: There is a [local manifest][aosp_local_manifest] to build OP-TEE into an AOSP build, running on HiKey.
1493  Please refer to the README in that repo for instructions.
1494
1495* OpenEmbedded: In addition to the makefile-based build described in the optee_os README, there is an
1496  [OpenEmbedded-based build][oe_build] that supports Qemu (32-bit), FVP (64-bit), and HiKey (64-bit).
1497  Please refer to the README in that repo for instructions.
1498
1499* [Link][github_commits_2_1_0] to a list of all commits between this and
1500  previous release.
1501
1502
1503## Tested on
1504Definitions:
1505
1506| Type | Meaning |
1507| ---- | ------- |
1508| Standard tests | The [optee_test][optee_test] project. |
1509| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
1510
1511*	ARM Juno Board (vexpress-juno), standard.
1512*	Foundation Models (vexpress-fvp), standard tests + extended tests,
1513	using FVP ARM V8 Foundation Platformr0p0 (platform build 10.0.37)
1514*	FSL i.MX6 UltraLite EVK (imx), standard.
1515*	FSL ls1021a (ls-ls1021atwr), standard tests.
1516*	HiKey (hikey), standard + extended tests.
1517*	QEMU (vexpress-qemu), standard + extended tests.
1518*	Xilinx Zynq UltraScale+ MPSOC, standard tests
1519
1520Note that the following platform has not been tested:
1521*	MTK8173-EVB (mediatek-mt8173)
1522
1523
1524## Known issues
1525* Issue(s) open on GitHub
1526  * [#868][pr868]: python-wand font generation sometimes times out
1527  * [#863][pr863]: "double free or corruption" error when building optee_os
1528  * [#858][pr858]: UUIDs in binary format have wrong endinanness
1529  * [#857][pr857]: Formatting of UUIDs is incorrect
1530  * [#847][pr847]: optee_os panic(TEE-CORE: Assertion)
1531  * [#838][pr838]: TUI font rendering is _very_ slow
1532  * [#814][pr814]: Persistent objects : save informations after close
1533  * [#665][pr665]: xtest 1013 stalled on HiKey when log levels are 4 and optee_os is on its own UART
1534  * [#506][pr506]: tee-supplicant panic & ta panic
1535
1536[github_commits_2_1_0]: https://github.com/OP-TEE/optee_os/compare/2.0.0...2.1.0
1537[pr868]: https://github.com/OP-TEE/optee_os/issues/868
1538[pr863]: https://github.com/OP-TEE/optee_os/issues/863
1539[pr858]: https://github.com/OP-TEE/optee_os/issues/858
1540[pr857]: https://github.com/OP-TEE/optee_os/issues/857
1541[pr847]: https://github.com/OP-TEE/optee_os/issues/847
1542[pr838]: https://github.com/OP-TEE/optee_os/issues/838
1543[pr814]: https://github.com/OP-TEE/optee_os/issues/814
1544[pr665]: https://github.com/OP-TEE/optee_os/issues/665
1545[aosp_local_manifest]: https://github.com/linaro-swg/optee_android_manifest
1546[oe_build]: https://github.com/linaro-swg/oe-optee
1547
1548# OP-TEE - version 2.0.0
1549
1550## New features
1551
1552* Generic driver: A new generic TEE driver is in the process of being
1553  [upstreamed][gendrv_v9].
1554  In this release, [OP-TEE/optee_linuxdriver][optee_linuxdriver] is no more used.
1555  Instead, linux v4.5 is being patched using the proposed Generic TEE Driver,
1556  as it can be found in [https://github.com/linaro-swg/linux/tree/optee][linux_optee]
1557
1558* RPMB support: Secure Storage can now use Replay Protected Memory Block (RPMB) partition
1559  of an eMMC device. Check the [full documentation][rpmb_doc]
1560
1561* Hard-float ABI is now available.
1562
1563* [Link][github_commits_2_0_0] to a list of all commits between this and
1564  previous release.
1565
1566
1567## Tested on
1568Definitions:
1569
1570| Type | Meaning |
1571| ---- | ------- |
1572| Standard tests | The [optee_test][optee_test] project. |
1573| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
1574
1575*	ARM Juno Board (vexpress-juno), standard.
1576*	Foundation Models (vexpress-fvp), standard tests + extended tests,
1577	using FVP ARM V8 Foundation Platformr0p0 (platform build 9.5.40)
1578*	FSL ls1021a (ls-ls1021atwr), standard.
1579*	HiKey (hikey), standard.
1580*	MTK8173-EVB (mediatek-mt8173), standard.
1581*	QEMU (vexpress-qemu), standard + extended tests.
1582*	STM Cannes (stm-cannes), standard + extended tests.
1583
1584## Known issues
1585* Issue(s) open on GitHub
1586  * [#40][prld40] BUG_ON() when re-using RPC buffer to tee-supplicant
1587  * [#506][pr506]: tee-supplicant panic & ta panic
1588
1589[github_commits_2_0_0]: https://github.com/OP-TEE/optee_os/compare/1.1.0...2.0.0
1590[rpmb_doc]: https://github.com/OP-TEE/optee_os/blob/master/documentation/secure_storage_rpmb.md
1591[optee_linuxdriver]: https://github.com/OP-TEE/optee_linuxdriver
1592[gendrv_v9]: https://lkml.org/lkml/2016/4/1/205
1593[linux_optee]: https://github.com/linaro-swg/linux/tree/optee
1594
1595
1596# OP-TEE - version 1.1.0
1597
1598
1599## New features
1600
1601* Softfloat library: floating point support is now available in 32bits TA.
1602
1603* Support running 64-bits TA: on ARMv8-A platform, TA can be compiled in
1604  AArch32 and/or in AArch64 in case the core is compiled in AArch64.
1605  An example can be found in HiKey configuration file. Using the following
1606  excerpt code, the user TA libraries are compiled in both AArch32 and
1607  AArch64, and can be found in `out/arm-plat-hikey/export-ta_arm32` and
1608  `out/arm-plat-hikey/export-ta_arm64`
1609
1610```
1611    ta-targets = ta_arm32
1612    ta-targets += ta_arm64
1613```
1614
1615* Concurrent TA support: multiple TA can run in parallel on
1616  several cores.
1617
1618* New tests added in xtest test suite: concurrent TA (xtest 1013),
1619  floating point tests (xtest 1006 and os_test TA) and corruption
1620  file storage (xtest 20000)
1621
1622* [Link][github_commits_1_1_0] to a list of all commits between this and
1623  previous release.
1624
1625
1626## Tested on
1627Definitions:
1628
1629| Type | Meaning |
1630| ---- | ------- |
1631| Standard tests | The [optee_test][optee_test] project. |
1632| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
1633| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. |
1634
1635*	Foundation Models (vexpress-fvp), standard tests + extended tests,
1636	using FVP ARM V8 Foundation Platformr0p0 (platform build 9.5.40)
1637*	HiKey (hikey), standard + extended tests.
1638*	MT8173 (mediatek), standard tests.
1639*	QEMU (vexpress-qemu), standard + extended tests.
1640*	STM Cannes (stm-cannes), standard + extended tests.
1641
1642## Known issues
1643* Secure Storage is implemented, but note that anti-rollback protection
1644  is not implemented yet.
1645
1646* Issue(s) open on GitHub
1647  * [#40][prld40] BUG_ON() when re-using RPC buffer to tee-supplicant
1648  * [#296][pr296]: Connecting RPMB to the storage APIs.
1649  * [#493][pr493]: setup_juno_optee: unable to find pre-built binaries
1650  * [#506][pr506]: tee-supplicant panic & ta panic
1651
1652[prld40]: https://github.com/OP-TEE/optee_linuxdriver/issues/40
1653[pr506]: https://github.com/OP-TEE/optee_os/issues/506
1654[github_commits_1_1_0]: https://github.com/OP-TEE/optee_os/compare/1.0.1...1.1.0
1655
1656
1657
1658# OP-TEE - version 1.0.0
1659
1660OP-TEE is now maintained by Linaro. Contributors do not need to
1661sign a CLA anymore, but must follow the rules of the [DCO][DCO]
1662(Developer Certificate of Origin) instead.
1663
1664
1665## New features
1666
1667* Add hardware support for Texas Instruments DRA7xx, ARMv7 (plat-ti)
1668
1669* GlobalPlatform™ TEE Internal Core API Specification v1.1,
1670  including ECC algorithms.
1671
1672* Secure Storage: Files stored by the REE are now encrypted. Operations
1673  are made atomic in order to prevent inconsistencies in case of errors
1674  during the storage operations. [Slides][LCStorage] describing the
1675  Secure Storage have been presented at the Linaro Connect SFO15.
1676
1677* Change of format of the Trusted Applications: they follow a
1678  [signed ELF format][elf]
1679
1680* Rework thread [synchronization][synchro] in optee_os.
1681
1682* Use of ARMv8 native cryptographic support.
1683
1684* [OP-TEE/optee_test][optee_test] test suite is released.
1685
1686* Introduce [OP-TEE/manifest][manifest] and [OP-TEE/build][build]
1687  to setup and build QEMU, FVP, HiKey and Mediatek platforms. Setup scripts
1688  that used to be in optee_os have been removed, except for Juno board.
1689
1690* [Link][github_commits_1_0_0] to a list of all commits between this and
1691  previous release.
1692
1693
1694## Tested on
1695Definitions:
1696
1697| Type | Meaning |
1698| ---- | ------- |
1699| Standard tests | The [optee_test][optee_test] project. |
1700| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
1701| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. |
1702
1703*	ARM Juno Board (vexpress-juno), standard + extended tests.
1704*	Foundation Models (vexpress-fvp), standard tests.
1705*	HiKey (hikey), standard + extended tests.
1706*	MT8173 (mediatek), standard tests.
1707*	QEMU (vexpress-qemu), standard + extended tests.
1708*	STM Cannes (stm-cannes), standard + extended tests.
1709
1710## Known issues
1711* Secure Storage is implemented, but note that anti-rollback protection
1712  is not implemented yet.
1713
1714* Issue(s) open on GitHub
1715  * [#210][pr210]: libteec.so 32-bit does not communicate well
1716    with 64-bit kernel module
1717  * [#296][pr296]: Connecting RPMB to the storage APIs.
1718  * [#493][pr493]: setup_juno_optee: unable to find pre-built binaries
1719  * [#494][pr494]: HiKey: xtest 7671 fails (1.0.0-rc2)
1720
1721[pr210]: https://github.com/OP-TEE/optee_os/issues/210
1722[pr296]: https://github.com/OP-TEE/optee_os/issues/296
1723[pr493]: https://github.com/OP-TEE/optee_os/issues/493
1724[pr494]: https://github.com/OP-TEE/optee_os/issues/494
1725[github_commits_1_0_0]: https://github.com/OP-TEE/optee_os/compare/0.3.0...1.0.0
1726[DCO]: https://github.com/OP-TEE/optee_os/blob/master/Notice.md#contributions
1727[LCStorage]: http://www.slideshare.net/linaroorg/sfo15503-secure-storage-in-optee
1728[synchro]: https://github.com/OP-TEE/optee_os/blob/master/documentation/optee_design.md#4-thread-handling
1729[elf]: https://github.com/OP-TEE/optee_os/blob/master/documentation/optee_design.md#format
1730[optee_test]: https://github.com/OP-TEE/optee_test
1731[manifest]: https://github.com/OP-TEE/manifest
1732[build]: https://github.com/OP-TEE/build
1733
1734
1735
1736# OP-TEE - version 0.3.0
1737
1738## New features
1739
1740*   Add hardware support for
1741	*   Mediatek MT8173 Board, ARMv8-A (plat-mediatek)
1742	*   Hisilicon HiKey Board, ARMv8-A (plat-hikey)
1743*   AArch64 build of optee_os is now possible through the configuration `CFG_ARM64_core=y`
1744*	Secure Storage: Data can be encrypted prior to their storage in the non-secure.
1745	Build is configured using `CFG_ENC_FS=y`
1746*	A generic boot scheme can be used. Boot configuration is commonalized. This helps
1747	new board support. It is applied on plat-hikey, plat-vexpress, plat-mediatek, plat-stm
1748    and plat-vexpress.
1749
1750## Tested on
1751Definitions:
1752
1753| Type | Meaning |
1754| ---- | ------- |
1755| Standard tests | The optee_test project. |
1756| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
1757| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. |
1758
1759*	ARM Juno Board (vexpress-juno), standard tests.
1760*	Foundation Models (vexpress-fvp), standard tests.
1761*	HiKey (hikey), standard tests.
1762*	MT8173 (mediatek), standard tests.
1763*	QEMU (vexpress-qemu), standard + extended tests.
1764*	STM Cannes (stm-cannes), standard + extended tests.
1765
1766-------------------------------------------
1767
1768# OP-TEE - version 0.2.0
1769
1770## New features
1771
1772### Linux Driver Refactoring
1773
1774Linux Driver has been refactored. It is now split in two parts:
1775*	optee.ko, the generic Linux driver. It contains all functionality
1776	common to all backends.
1777*	optee_armtz.ko, a specific backend dedicated to the TrustZone optee.
1778	It depends on optee.ko.
1779
1780Loading the TrustZone optee linux driver module is now performed using
1781
1782    modprobe optee_armtz
1783
1784Thanks to the dependency between the generic and the backend modules, optee.ko is then automatically loaded.
1785
1786### Misc new features
1787* support PL310 lock down at TEE boot
1788* add 64bits support (division / print)
1789
1790## Tested on
1791Definitions:
1792
1793| Type | Meaning |
1794| ---- | ------- |
1795| Standard tests | The optee_test project. |
1796| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
1797| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. |
1798
1799*   ARM Juno Board (vexpress-juno), standard tests + extended tests.
1800
1801*   Foundation Models (vexpress-fvp), standard + extended tests.
1802
1803*   QEMU (vexpress-qemu), standard + extended tests.
1804
1805*   STM Cannes (stm-cannes), standard + extended tests.
1806
1807
1808## Issues resolved since last release
1809*	Fix user TA trace issue, in order each TA is able to select its own trace level
1810
1811
1812-------------------------------------------
1813# OP-TEE - version 0.1.0
1814
1815## New features
1816Below is a summary of the most important features added, but at the end you will
1817find a link that present you all commits between the current and previous
1818release tag.
1819
1820*   GlobalPlatform Client API v1.0 support.
1821
1822*   GlobalPlatform Internal API v1.0 support.
1823
1824*   GlobalPlatform Secure Elements v1.0 support.
1825
1826*   Add hardware support for
1827
1828    *   Allwinner A80, ARMv7-A.
1829
1830    *   ARM Juno Board, ARMv8-A.
1831
1832    *   Foundation Models, ARMv8-A.
1833
1834    *   Fast Models, ARMv8-A.
1835
1836    *   QEMU, ARMv7-A.
1837
1838    *   STM Cannes, ARMv7-A.
1839
1840    *   STM Orly2, ARMv7-A.
1841
1842*   Add LibTomCrypt as the default software cryptographic library.
1843
1844*   Add cryptographic abstraction layer in on secure side to ease the use of
1845    other cryptographic software libraries or adding support for hardware
1846    acceleration.
1847
1848*   Extended cryptographic API with support for HKDF, Concat KDF and PBKDF2.
1849
1850*   SHA-1 and SHA-256 ARMv8-A crypto extension implementation.
1851
1852*   Enabled paging support in OP-TEE OS.
1853
1854*   Add support for xtest (both standard and extended) in QEMU and FVP setup
1855    scripts.
1856
1857*   Add documentation for the OS design, cryptographic abstraction layer, secure
1858    elements design, the build system, GitHub usage, key derivation extensions,
1859    ARM-Trusted Firmware usage within OP-TEE and GlobalPlatform usage within
1860    OP-TEE.
1861
1862*   Integrate support for Travis CI.
1863
1864*   [Link][github_commits_0_1_0] to a list of all commits between this and
1865    previous release.
1866
1867
1868## Tested on
1869Definitions:
1870
1871| Type | Meaning |
1872| ---- | ------- |
1873| Standard tests | The optee_test project. |
1874| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.0.0. |
1875| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. |
1876
1877*   Allwinner A80 (plat-sunxi), hello world test.
1878
1879*   ARM Juno Board (vexpress-juno), standard tests.
1880
1881*   Foundation Models (plat-vexpress-fvp), standard + extended tests
1882
1883*   QEMU (plat-vexpress-qemu), standard + extended tests (and Secure Elements
1884    tested separately).
1885
1886*   STM Cannes (plat-stm-cannes), standard + extended tests.
1887
1888
1889## Issues resolved since last release
1890N/A since this is the first release tag on OP-TEE.
1891
1892
1893## Known issues
1894*   Storage is implemented, but not "Secure storage", meaning that a client
1895    needs to do encrypt files on their own before storing the files.
1896
1897*   Issue(s) open on GitHub
1898    *   [#95][pr95]: An error about building the test code of libtomcrypt.
1899
1900    *   [#149][pr149]: when testing optee os with arm trusted firmware (I
1901	utilized optee os tee.bin as bl32 image) on juno platform, I got an
1902        error.
1903
1904    *   [#161][pr161]: tee_svc_cryp.c lacks accessibility checks on
1905        user-supplied TEE_Attributes.
1906
1907[hello_world]: https://github.com/jenswi-linaro/lcu14_optee_hello_world
1908[github_commits_0_1_0]: https://github.com/OP-TEE/optee_os/compare/b01047730e77127c23a36591643eeb8bb0487d68...999e4a6c0f64d3177fd3d0db234107b6fb860884
1909[pr95]: https://github.com/OP-TEE/optee_os/issues/95
1910[pr149]: https://github.com/OP-TEE/optee_os/issues/149
1911[pr161]: https://github.com/OP-TEE/optee_os/issues/161
1912
1913*   Global Platform Device Internal Core API v1.1
1914    *   [#230][pr230]: Persistent object corruption support (TEE_ERROR_CORRUPT_OBJECT/_2)
1915    *   [#230][pr230]: Persistent object access support (TEE_ERROR_STORAGE_NOT_AVAILABLE/_2)
1916