xref: /optee_os/CHANGELOG.md (revision 3d47a131bca1d9ed511bfd516aa5e70269e12c1d)
1*3d47a131SJoakim Bech# OP-TEE - version 3.12.0 (2021-01-20)
2*3d47a131SJoakim Bech
3*3d47a131SJoakim Bech- Links to the release pages, commits and pull requests merged into this release for:
4*3d47a131SJoakim Bech  - 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]
5*3d47a131SJoakim Bech  - 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]
6*3d47a131SJoakim Bech  - 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]
7*3d47a131SJoakim Bech  - 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]
8*3d47a131SJoakim Bech  - 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]
9*3d47a131SJoakim Bech
10*3d47a131SJoakim Bech
11*3d47a131SJoakim Bech[OP_TEE_optee_os_release_3_12_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.12.0
12*3d47a131SJoakim Bech[OP_TEE_optee_os_commits_3_12_0]: https://github.com/OP-TEE/optee_os/compare/3.11.0...3.12.0
13*3d47a131SJoakim Bech[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
14*3d47a131SJoakim Bech
15*3d47a131SJoakim Bech[OP_TEE_optee_client_release_3_12_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.12.0
16*3d47a131SJoakim Bech[OP_TEE_optee_client_commits_3_12_0]: https://github.com/OP-TEE/optee_client/compare/3.11.0...3.12.0
17*3d47a131SJoakim Bech[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
18*3d47a131SJoakim Bech
19*3d47a131SJoakim Bech[OP_TEE_optee_test_release_3_12_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.12.0
20*3d47a131SJoakim Bech[OP_TEE_optee_test_commits_3_12_0]: https://github.com/OP-TEE/optee_test/compare/3.11.0...3.12.0
21*3d47a131SJoakim Bech[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
22*3d47a131SJoakim Bech
23*3d47a131SJoakim Bech[OP_TEE_build_release_3_12_0]: https://github.com/OP-TEE/build/releases/tag/3.12.0
24*3d47a131SJoakim Bech[OP_TEE_build_commits_3_12_0]: https://github.com/OP-TEE/build/compare/3.11.0...3.12.0
25*3d47a131SJoakim Bech[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
26*3d47a131SJoakim Bech
27*3d47a131SJoakim Bech[linaro_swg_optee_examples_release_3_12_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.12.0
28*3d47a131SJoakim Bech[linaro_swg_optee_examples_commits_3_12_0]: https://github.com/linaro-swg/optee_examples/compare/3.11.0...3.12.0
29*3d47a131SJoakim Bech[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
30*3d47a131SJoakim Bech
31c4def2a8SJerome Forissier# OP-TEE - version 3.11.0 (2020-10-16)
32c4def2a8SJerome Forissier
33c4def2a8SJerome Forissier- Links to the release pages, commits and pull requests merged into this release for:
34c4def2a8SJerome Forissier  - 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]
35c4def2a8SJerome Forissier  - 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]
36c4def2a8SJerome Forissier  - 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]
37c4def2a8SJerome Forissier  - 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]
38c4def2a8SJerome Forissier  - 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]
39c4def2a8SJerome Forissier
40c4def2a8SJerome Forissier
41c4def2a8SJerome Forissier[OP_TEE_optee_os_release_3_11_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.11.0
42c4def2a8SJerome Forissier[OP_TEE_optee_os_commits_3_11_0]: https://github.com/OP-TEE/optee_os/compare/3.10.0...3.11.0
43c4def2a8SJerome Forissier[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
44c4def2a8SJerome Forissier
45c4def2a8SJerome Forissier[OP_TEE_optee_client_release_3_11_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.11.0
46c4def2a8SJerome Forissier[OP_TEE_optee_client_commits_3_11_0]: https://github.com/OP-TEE/optee_client/compare/3.10.0...3.11.0
47c4def2a8SJerome Forissier[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
48c4def2a8SJerome Forissier
49c4def2a8SJerome Forissier[OP_TEE_optee_test_release_3_11_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.11.0
50c4def2a8SJerome Forissier[OP_TEE_optee_test_commits_3_11_0]: https://github.com/OP-TEE/optee_test/compare/3.10.0...3.11.0
51c4def2a8SJerome Forissier[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
52c4def2a8SJerome Forissier
53c4def2a8SJerome Forissier[OP_TEE_build_release_3_11_0]: https://github.com/OP-TEE/build/releases/tag/3.11.0
54c4def2a8SJerome Forissier[OP_TEE_build_commits_3_11_0]: https://github.com/OP-TEE/build/compare/3.10.0...3.11.0
55c4def2a8SJerome Forissier[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
56c4def2a8SJerome Forissier
57c4def2a8SJerome Forissier[linaro_swg_optee_examples_release_3_11_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.11.0
58c4def2a8SJerome Forissier[linaro_swg_optee_examples_commits_3_11_0]: https://github.com/linaro-swg/optee_examples/compare/3.10.0...3.11.0
59c4def2a8SJerome Forissier[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
60c4def2a8SJerome Forissier
61d1c63543SJerome Forissier# OP-TEE - version 3.10.0 (2020-08-21)
62d1c63543SJerome Forissier
63d1c63543SJerome Forissier- Links to the release pages, commits and pull requests merged into this release for:
64d1c63543SJerome Forissier  - 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]
65d1c63543SJerome Forissier  - 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]
66d1c63543SJerome Forissier  - 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]
67d1c63543SJerome Forissier  - 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]
68d1c63543SJerome Forissier  - 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]
69d1c63543SJerome Forissier
70d1c63543SJerome Forissier
71d1c63543SJerome Forissier[OP_TEE_optee_os_release_3_10_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.10.0
72d1c63543SJerome Forissier[OP_TEE_optee_os_commits_3_10_0]: https://github.com/OP-TEE/optee_os/compare/3.9.0...3.10.0
73d1c63543SJerome Forissier[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
74d1c63543SJerome Forissier
75d1c63543SJerome Forissier[OP_TEE_optee_client_release_3_10_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.10.0
76d1c63543SJerome Forissier[OP_TEE_optee_client_commits_3_10_0]: https://github.com/OP-TEE/optee_client/compare/3.9.0...3.10.0
77d1c63543SJerome Forissier[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
78d1c63543SJerome Forissier
79d1c63543SJerome Forissier[OP_TEE_optee_test_release_3_10_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.10.0
80d1c63543SJerome Forissier[OP_TEE_optee_test_commits_3_10_0]: https://github.com/OP-TEE/optee_test/compare/3.9.0...3.10.0
81d1c63543SJerome Forissier[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
82d1c63543SJerome Forissier
83d1c63543SJerome Forissier[OP_TEE_build_release_3_10_0]: https://github.com/OP-TEE/build/releases/tag/3.10.0
84d1c63543SJerome Forissier[OP_TEE_build_commits_3_10_0]: https://github.com/OP-TEE/build/compare/3.9.0...3.10.0
85d1c63543SJerome Forissier[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
86d1c63543SJerome Forissier
87d1c63543SJerome Forissier[linaro_swg_optee_examples_release_3_10_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.10.0
88d1c63543SJerome Forissier[linaro_swg_optee_examples_commits_3_10_0]: https://github.com/linaro-swg/optee_examples/compare/3.9.0...3.10.0
89d1c63543SJerome Forissier[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
90d1c63543SJerome Forissier
91af141c61SJens Wiklander# OP-TEE - version 3.9.0 (2020-04-22)
92af141c61SJens Wiklander
93af141c61SJens Wiklander- Links to the release pages, commits and pull requests merged into this release for:
94af141c61SJens Wiklander  - 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]
95af141c61SJens Wiklander  - 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]
96af141c61SJens Wiklander  - 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]
97af141c61SJens Wiklander  - 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]
98af141c61SJens Wiklander  - 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]
99af141c61SJens Wiklander
100af141c61SJens Wiklander
101af141c61SJens Wiklander[OP_TEE_optee_os_release_3_9_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.9.0
102af141c61SJens Wiklander[OP_TEE_optee_os_commits_3_9_0]: https://github.com/OP-TEE/optee_os/compare/3.8.0...3.9.0
103af141c61SJens Wiklander[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
104af141c61SJens Wiklander
105af141c61SJens Wiklander[OP_TEE_optee_client_release_3_9_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.9.0
106af141c61SJens Wiklander[OP_TEE_optee_client_commits_3_9_0]: https://github.com/OP-TEE/optee_client/compare/3.8.0...3.9.0
107af141c61SJens Wiklander[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
108af141c61SJens Wiklander
109af141c61SJens Wiklander[OP_TEE_optee_test_release_3_9_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.9.0
110af141c61SJens Wiklander[OP_TEE_optee_test_commits_3_9_0]: https://github.com/OP-TEE/optee_test/compare/3.8.0...3.9.0
111af141c61SJens Wiklander[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
112af141c61SJens Wiklander
113af141c61SJens Wiklander[OP_TEE_build_release_3_9_0]: https://github.com/OP-TEE/build/releases/tag/3.9.0
114af141c61SJens Wiklander[OP_TEE_build_commits_3_9_0]: https://github.com/OP-TEE/build/compare/3.8.0...3.9.0
115af141c61SJens Wiklander[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
116af141c61SJens Wiklander
117af141c61SJens Wiklander[linaro_swg_optee_examples_release_3_9_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.9.0
118af141c61SJens Wiklander[linaro_swg_optee_examples_commits_3_9_0]: https://github.com/linaro-swg/optee_examples/compare/3.8.0...3.9.0
119af141c61SJens Wiklander[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
120af141c61SJens Wiklander
121023e3365SJerome Forissier# OP-TEE - version 3.8.0 (2020-01-24)
122023e3365SJerome Forissier
123023e3365SJerome Forissier- Links to the release pages, commits and pull requests merged into this release for:
124023e3365SJerome Forissier  - 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]
125023e3365SJerome Forissier  - 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]
126023e3365SJerome Forissier  - 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]
127023e3365SJerome Forissier  - 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]
128023e3365SJerome Forissier  - 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]
129023e3365SJerome Forissier
130023e3365SJerome Forissier
131023e3365SJerome Forissier[OP_TEE_optee_os_release_3_8_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.8.0
132023e3365SJerome Forissier[OP_TEE_optee_os_commits_3_8_0]: https://github.com/OP-TEE/optee_os/compare/3.7.0...3.8.0
133023e3365SJerome Forissier[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
134023e3365SJerome Forissier
135023e3365SJerome Forissier[OP_TEE_optee_client_release_3_8_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.8.0
136023e3365SJerome Forissier[OP_TEE_optee_client_commits_3_8_0]: https://github.com/OP-TEE/optee_client/compare/3.7.0...3.8.0
137023e3365SJerome Forissier[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
138023e3365SJerome Forissier
139023e3365SJerome Forissier[OP_TEE_optee_test_release_3_8_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.8.0
140023e3365SJerome Forissier[OP_TEE_optee_test_commits_3_8_0]: https://github.com/OP-TEE/optee_test/compare/3.7.0...3.8.0
141023e3365SJerome Forissier[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
142023e3365SJerome Forissier
143023e3365SJerome Forissier[OP_TEE_build_release_3_8_0]: https://github.com/OP-TEE/build/releases/tag/3.8.0
144023e3365SJerome Forissier[OP_TEE_build_commits_3_8_0]: https://github.com/OP-TEE/build/compare/3.7.0...3.8.0
145023e3365SJerome Forissier[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
146023e3365SJerome Forissier
147023e3365SJerome Forissier[linaro_swg_optee_examples_release_3_8_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.8.0
148023e3365SJerome Forissier[linaro_swg_optee_examples_commits_3_8_0]: https://github.com/linaro-swg/optee_examples/compare/3.7.0...3.8.0
149023e3365SJerome Forissier[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
150023e3365SJerome Forissier
151a2fa5018SJoakim Bech# OP-TEE - version 3.7.0 (2019-10-18)
152a2fa5018SJoakim Bech
153a2fa5018SJoakim Bech- Links to the release pages, commits and pull requests merged into this release for:
154a2fa5018SJoakim Bech  - 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]
155a2fa5018SJoakim Bech  - 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]
156a2fa5018SJoakim Bech  - 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]
157a2fa5018SJoakim Bech  - 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]
158a2fa5018SJoakim Bech  - 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]
159a2fa5018SJoakim Bech
160a2fa5018SJoakim Bech
161a2fa5018SJoakim Bech[OP_TEE_optee_os_release_3_7_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.7.0
162a2fa5018SJoakim Bech[OP_TEE_optee_os_commits_3_7_0]: https://github.com/OP-TEE/optee_os/compare/3.6.0...3.7.0
163a2fa5018SJoakim Bech[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
164a2fa5018SJoakim Bech
165a2fa5018SJoakim Bech[OP_TEE_optee_client_release_3_7_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.7.0
166a2fa5018SJoakim Bech[OP_TEE_optee_client_commits_3_7_0]: https://github.com/OP-TEE/optee_client/compare/3.6.0...3.7.0
167a2fa5018SJoakim Bech[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
168a2fa5018SJoakim Bech
169a2fa5018SJoakim Bech[OP_TEE_optee_test_release_3_7_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.7.0
170a2fa5018SJoakim Bech[OP_TEE_optee_test_commits_3_7_0]: https://github.com/OP-TEE/optee_test/compare/3.6.0...3.7.0
171a2fa5018SJoakim Bech[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
172a2fa5018SJoakim Bech
173a2fa5018SJoakim Bech[OP_TEE_build_release_3_7_0]: https://github.com/OP-TEE/build/releases/tag/3.7.0
174a2fa5018SJoakim Bech[OP_TEE_build_commits_3_7_0]: https://github.com/OP-TEE/build/compare/3.6.0...3.7.0
175a2fa5018SJoakim Bech[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
176a2fa5018SJoakim Bech
177a2fa5018SJoakim Bech[linaro_swg_optee_examples_release_3_7_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.7.0
178a2fa5018SJoakim Bech[linaro_swg_optee_examples_commits_3_7_0]: https://github.com/linaro-swg/optee_examples/compare/3.6.0...3.7.0
179a2fa5018SJoakim Bech[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
180a2fa5018SJoakim Bech
181f398d492SJerome Forissier# OP-TEE - version 3.6.0 (2019-07-05)
182f398d492SJerome Forissier
183f398d492SJerome Forissier- Link to the GitHub [release page][github_release_3_6_0].
184f398d492SJerome Forissier- Links to the [commits][github_commits_3_6_0] and
185f398d492SJerome Forissier[pull requests][github_pr_3_6_0] merged into this release.
186f398d492SJerome Forissier
187f398d492SJerome Forissier[github_release_3_6_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.6.0
188f398d492SJerome Forissier[github_commits_3_6_0]: https://github.com/OP-TEE/optee_os/compare/3.5.0...3.6.0
189f398d492SJerome Forissier[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
190f398d492SJerome Forissier
1915df2a985SJoakim Bech# OP-TEE - version 3.5.0 (2019-04-26)
1925df2a985SJoakim Bech
1935df2a985SJoakim Bech- Link to the GitHub [release page][github_release_3_5_0].
1945df2a985SJoakim Bech- Links to the [commits][github_commits_3_5_0] and
1955df2a985SJoakim Bech[pull requests][github_pr_3_5_0] merged into this release.
1965df2a985SJoakim Bech
1975df2a985SJoakim Bech[github_release_3_5_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.5.0
1985df2a985SJoakim Bech[github_commits_3_5_0]: https://github.com/OP-TEE/optee_os/compare/3.4.0...3.5.0
1995df2a985SJoakim Bech[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
2005df2a985SJoakim Bech
201406c609bSJerome Forissier# OP-TEE - version 3.4.0 (2019-01-25)
202406c609bSJerome Forissier
203406c609bSJerome Forissier- Link to the GitHub [release page][github_release_3_4_0].
204406c609bSJerome Forissier- Links to the [commits][github_commits_3_4_0] and
205406c609bSJerome Forissier[pull requests][github_pr_3_4_0] merged into this release.
206406c609bSJerome Forissier
207406c609bSJerome Forissier[github_release_3_4_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.4.0
208406c609bSJerome Forissier[github_commits_3_4_0]: https://github.com/OP-TEE/optee_os/compare/3.3.0...3.4.0
209406c609bSJerome Forissier[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
210406c609bSJerome Forissier
211ee595e95SJerome Forissier# OP-TEE - version 3.3.0 (2018-10-12)
212ee595e95SJerome Forissier
213ee595e95SJerome Forissier- Link to the GitHub [release page][github_release_3_3_0].
214ee595e95SJerome Forissier- Links to the [commits][github_commits_3_3_0] and
215ee595e95SJerome Forissier[pull requests][github_pr_3_3_0] merged into this release.
216ee595e95SJerome Forissier
217ee595e95SJerome Forissier[github_release_3_3_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.3.0
218ee595e95SJerome Forissier[github_commits_3_3_0]: https://github.com/OP-TEE/optee_os/compare/3.2.0...3.3.0
219ee595e95SJerome Forissier[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
220ee595e95SJerome Forissier
22153bf1c38SJerome Forissier# OP-TEE - version 3.2.0 (2018-07-04)
22253bf1c38SJerome Forissier
22353bf1c38SJerome Forissier- Link to the GitHub [release page][github_release_3_2_0].
22453bf1c38SJerome Forissier- Links to the [commits][github_commits_3_2_0] and
22553bf1c38SJerome Forissier[pull requests][github_pr_3_2_0] merged into this release.
22653bf1c38SJerome Forissier
22753bf1c38SJerome Forissier## Known issues
22853bf1c38SJerome Forissier
22953bf1c38SJerome Forissier* HiKey960: assertion in bget create_free_block() \[memalign() self-test\] ([#2414])
23053bf1c38SJerome Forissier* D02: assertion '!have_spinlock()' ([#2437])
23153bf1c38SJerome Forissier
23253bf1c38SJerome Forissier[github_commits_3_2_0]: https://github.com/OP-TEE/optee_os/compare/3.1.0...3.2.0
23353bf1c38SJerome Forissier[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
23453bf1c38SJerome Forissier[github_release_3_2_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.2.0
23553bf1c38SJerome Forissier[#2414]: https://github.com/OP-TEE/optee_os/issues/2414
23653bf1c38SJerome Forissier[#2437]: https://github.com/OP-TEE/optee_os/issues/2437
23753bf1c38SJerome Forissier
2380ab9388cSJens Wiklander# OP-TEE - version 3.1.0 (2018-04-13)
2390ab9388cSJens Wiklander
2400ab9388cSJens Wiklander- Link to the GitHub [release page][github_release_3_1_0].
2410ab9388cSJens Wiklander- Links to the [commits][github_commits_3_1_0] and
2420ab9388cSJens Wiklander[pull requests][github_pr_3_1_0] merged into this release.
2430ab9388cSJens Wiklander
2440ab9388cSJens Wiklander[github_commits_3_1_0]: https://github.com/OP-TEE/optee_os/compare/3.0.0...3.1.0
2450ab9388cSJens Wiklander[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
2460ab9388cSJens Wiklander[github_release_3_1_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.1.0
2470ab9388cSJens Wiklander
2480ab9388cSJens Wiklander# OP-TEE - version 3.0.0 (2018-01-26)
24994ee4938SJerome Forissier
25094ee4938SJerome Forissier[Link][github_commits_3_0_0] to a list of all commits between this release and
25194ee4938SJerome Forissierthe previous one (2.6.0).
25294ee4938SJerome Forissier
25394ee4938SJerome ForissierAbout backwards compatibility: Trusted Applications built with OP-TEE 2.5.0 or
25494ee4938SJerome Forissierearlier will not run properly with a *debug* build of this release due
25594ee4938SJerome Forissierto commit [0e1c6e8e][commit_0e1c6e8e] ("Dump call stack on TA panic").
25694ee4938SJerome ForissierNon-debug builds are not affected.
25794ee4938SJerome Forissier
25894ee4938SJerome Forissier## New features
25994ee4938SJerome Forissier
26094ee4938SJerome Forissier* New supported platforms: Armada 3700 ([#1946]), Poplar ([#1999]), 64-bit
26194ee4938SJerome Forissier  support for FSL ls1012ardb ([#1941]), i.MX6SX Sabreauto ([#1974]).
26294ee4938SJerome Forissier* arm32: sm: init CNTVOFF ([#2052])
26394ee4938SJerome Forissier* Debug/info/error traces: make output more compact ([#2011])
26494ee4938SJerome Forissier* tzc380: implement new functions ([#1994])
26594ee4938SJerome Forissier* Secure Data Path: add pseudo-TA to convert VA to PA (#1993])
26694ee4938SJerome Forissier* Pager: use NEON AES GCM implementation ([#1959])
26794ee4938SJerome Forissier* Crypto: add optimized AES GCM implementation using NEON ([#1949])
26894ee4938SJerome Forissier* Add support for using secure storage for TA anti-rollback ([#1928])
26994ee4938SJerome Forissier* Crypto: replace struct crypto_ops with function interface ([#1923],
27094ee4938SJerome Forissier  [#1931])
27194ee4938SJerome Forissier* aosp_optee.mk: define OPTEE_BIN ([#1922])
27294ee4938SJerome Forissier* Add build option to allow concurrent execution of single-instance TAs
27394ee4938SJerome Forissier  ([#1915])
27494ee4938SJerome Forissier* Pager: support for address sanitizer ([#1856])
27594ee4938SJerome Forissier* Pager: make memory between CFG_TEE_RAM_START and TEE load address usable by
27694ee4938SJerome Forissier  pager ([#1826])
27794ee4938SJerome Forissier
27894ee4938SJerome Forissier## Bug fixes
27994ee4938SJerome Forissier
28094ee4938SJerome Forissier* Fix crash in tee_mmu_final() on TA loading error ([#2092])
28194ee4938SJerome Forissier* LibTomCrypt: fix issue causing invalid output when using AES CTR with
28294ee4938SJerome Forissierhardware acceleration (CFG_CRYPTO_WITH_CE) ([#2086])
28394ee4938SJerome Forissier* pl310: fix cache sync ([#2035])
28494ee4938SJerome Forissier* tzc380: do not write reserved bits ([#1994])
28594ee4938SJerome Forissier* Fix potential double free in ta_open() ([#1970])
28694ee4938SJerome Forissier* libfdt: fix undefined behaviour in fdt_offset_ptr() ([#1969])
28794ee4938SJerome Forissier* imx_wdog: fix register access ([#1966])
28894ee4938SJerome Forissier* Secure storage: fix potential memory leak after early return ([#1961])
28994ee4938SJerome Forissier* LibTomCrypt: fix double free in dsa_import() ([#1963])
29094ee4938SJerome Forissier* RPMB: fix TA independance issue in secure storage ([#1921])
29194ee4938SJerome Forissier* RPMB: return TEE_ERROR_ACCESS_CONFLICT instead of panicking when a TA
29294ee4938SJerome Forissier  attempts to create an existing persistent object without the overwrite flag
29394ee4938SJerome Forissier  ([#1919])
29494ee4938SJerome Forissier* PSCI: pass non-secure context to psci_system_suspend() ([#1916])
29594ee4938SJerome Forissier* Fix "Argument list too long" during "make clean" ([#1897])
29694ee4938SJerome Forissier
29794ee4938SJerome Forissier## Security fixes
29894ee4938SJerome Forissier
29994ee4938SJerome Forissier* Mitigations and hardening against the Spectre and Meltdown vulnerabilities
30094ee4938SJerome Forissier  (CVE-2017-5753, CVE-2017-5715, CVE-2017-5754).
30194ee4938SJerome Forissier
30294ee4938SJerome Forissier## Known issues
30394ee4938SJerome Forissier
30494ee4938SJerome Forissier* Secure storage (REE FS): storage size not updated after
30594ee4938SJerome ForissierTEE_TruncateObjectData() ([#2094])
30694ee4938SJerome Forissier* Possible deadlock with CFG_WITH_PAGER=y when loading a TA and not enough
30794ee4938SJerome Forissierpage tables are available in pgt_cache ([#2080])
30894ee4938SJerome Forissier
30994ee4938SJerome Forissier## Tested on
31094ee4938SJerome Forissier
31194ee4938SJerome ForissierThe release was tested successfully on the platforms listed below.
31294ee4938SJerome Forissier
31394ee4938SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
31494ee4938SJerome Forissier* d02
31594ee4938SJerome Forissier* hikey
31694ee4938SJerome Forissier* hikey-hikey960
31794ee4938SJerome Forissier* imx-mx6ulevk
31894ee4938SJerome Forissier* imx-mx7dsabresd
31994ee4938SJerome Forissier* marvell-armada7k8k
32094ee4938SJerome Forissier* marvell-armada3700
32194ee4938SJerome Forissier* mediatek-mt8173
32294ee4938SJerome Forissier* rcar-salvator_m3
32394ee4938SJerome Forissier* rockchip-rk322x
32494ee4938SJerome Forissier* rpi3
32594ee4938SJerome Forissier* sam
32694ee4938SJerome Forissier* ti
32794ee4938SJerome Forissier* vexpress-juno
32894ee4938SJerome Forissier* vexpress-qemu_armv8a
32994ee4938SJerome Forissier* vexpress-qemu_virt
33094ee4938SJerome Forissier
33194ee4938SJerome Forissier[commit_0e1c6e8e]: https://github.com/OP-TEE/optee_os/commit/0e1c6e8e
33294ee4938SJerome Forissier[github_commits_3_0_0]: https://github.com/OP-TEE/optee_os/compare/2.6.0...3.0.0
33394ee4938SJerome Forissier[#2092]: https://github.com/OP-TEE/optee_os/pull/2092
33494ee4938SJerome Forissier[#2086]: https://github.com/OP-TEE/optee_os/pull/2086
33594ee4938SJerome Forissier[#2094]: https://github.com/OP-TEE/optee_os/issues/2094
33694ee4938SJerome Forissier[#2080]: https://github.com/OP-TEE/optee_os/issues/2080
33794ee4938SJerome Forissier[#2052]: https://github.com/OP-TEE/optee_os/pull/2052
33894ee4938SJerome Forissier[#2035]: https://github.com/OP-TEE/optee_os/pull/2035
33994ee4938SJerome Forissier[#2011]: https://github.com/OP-TEE/optee_os/pull/2011
34094ee4938SJerome Forissier[#1999]: https://github.com/OP-TEE/optee_os/pull/1999
34194ee4938SJerome Forissier[#1994]: https://github.com/OP-TEE/optee_os/pull/1994
34294ee4938SJerome Forissier[#1993]: https://github.com/OP-TEE/optee_os/pull/1993
34394ee4938SJerome Forissier[#1974]: https://github.com/OP-TEE/optee_os/pull/1974
34494ee4938SJerome Forissier[#1970]: https://github.com/OP-TEE/optee_os/pull/1970
34594ee4938SJerome Forissier[#1969]: https://github.com/OP-TEE/optee_os/pull/1969
34694ee4938SJerome Forissier[#1966]: https://github.com/OP-TEE/optee_os/pull/1966
34794ee4938SJerome Forissier[#1963]: https://github.com/OP-TEE/optee_os/pull/1963
34894ee4938SJerome Forissier[#1961]: https://github.com/OP-TEE/optee_os/pull/1961
34994ee4938SJerome Forissier[#1959]: https://github.com/OP-TEE/optee_os/pull/1959
35094ee4938SJerome Forissier[#1949]: https://github.com/OP-TEE/optee_os/pull/1949
35194ee4938SJerome Forissier[#1946]: https://github.com/OP-TEE/optee_os/pull/1946
35294ee4938SJerome Forissier[#1941]: https://github.com/OP-TEE/optee_os/pull/1941
35394ee4938SJerome Forissier[#1931]: https://github.com/OP-TEE/optee_os/pull/1931
35494ee4938SJerome Forissier[#1928]: https://github.com/OP-TEE/optee_os/pull/1928
35594ee4938SJerome Forissier[#1923]: https://github.com/OP-TEE/optee_os/pull/1923
35694ee4938SJerome Forissier[#1922]: https://github.com/OP-TEE/optee_os/pull/1922
35794ee4938SJerome Forissier[#1921]: https://github.com/OP-TEE/optee_os/pull/1921
35894ee4938SJerome Forissier[#1919]: https://github.com/OP-TEE/optee_os/pull/1919
35994ee4938SJerome Forissier[#1916]: https://github.com/OP-TEE/optee_os/pull/1916
36094ee4938SJerome Forissier[#1915]: https://github.com/OP-TEE/optee_os/pull/1915
36194ee4938SJerome Forissier[#1897]: https://github.com/OP-TEE/optee_os/pull/1897
36294ee4938SJerome Forissier[#1856]: https://github.com/OP-TEE/optee_os/pull/1856
36394ee4938SJerome Forissier[#1826]: https://github.com/OP-TEE/optee_os/pull/1826
36494ee4938SJerome Forissier
3656d57389fSJerome Forissier# OP-TEE - version 2.6.0
3666d57389fSJerome Forissier
3676d57389fSJerome Forissier[Link][github_commits_2_6_0] to a list of all commits between this release and
3686d57389fSJerome Forissierthe previous one (2.5.0).
3696d57389fSJerome Forissier
3706d57389fSJerome Forissier## New features
3716d57389fSJerome Forissier
3726d57389fSJerome Forissier* New supported platforms: Atmel SAMA5 ([#1714]), HiSilicon HiKey960 ([#1684]),
3736d57389fSJerome Forissier  Rockchip RK322X ([#1666]), NXP LS1043A-RDB/LS1046A-RDB ([#1787]), Marvell
3746d57389fSJerome Forissier  Armada 70x0/80x0 ([#1807]).
3756d57389fSJerome Forissier* Dynamic shared memory (non-contiguous, non-secure memory can be mapped into
3766d57389fSJerome Forissier  Trusted Applications VA space) ([#1631])
3776d57389fSJerome Forissier* Dump TA call stack on panic ([#1858])
3786d57389fSJerome Forissier* i.MX: PSCI reset ([#1849])
3796d57389fSJerome Forissier* plat-ti: AM43xx: suspend/resume support ([#1822])
3806d57389fSJerome Forissier* QEMU SMP support ([#1820])
3816d57389fSJerome Forissier* plat-ti: AM43xx: disable TRNG ([#1816])
3826d57389fSJerome Forissier* plat-ti: enable Secure Data Path by default ([#1815])
3836d57389fSJerome Forissier* Improve symbolize.py ([#1778], [#1767], [#1766])
3846d57389fSJerome Forissier* Early TAs (TAs linked in tee.bin) ([#1733])
3856d57389fSJerome Forissier* Suspend/resume framework for arm32 and imx7d support ([#1729])
3866d57389fSJerome Forissier* RK322X PSCI version, features and suspend support ([#1720])
3876d57389fSJerome Forissier* arm32: handle aborts in system mode ([#1703])
3886d57389fSJerome Forissier* i.MX: add SNVS SRTC support ([#1700])
3896d57389fSJerome Forissier* GCC7 support ([#1693])
3906d57389fSJerome Forissier* Improve detection of programming errors in locking code ([#1671], [#1670])
3916d57389fSJerome Forissier* Support TEE RAM size larger than page directory size ([#1669])
3926d57389fSJerome Forissier
3936d57389fSJerome Forissier## Removed features
3946d57389fSJerome Forissier
3956d57389fSJerome Forissier* Remove TUI code ([#1842])
3966d57389fSJerome Forissier
3976d57389fSJerome Forissier## Bug fixes
3986d57389fSJerome Forissier
3996d57389fSJerome Forissier* Add missing synchronization barrier in core_mmu_map_pages() ([#1827])
4006d57389fSJerome Forissier* Secure storage: REE FS: fix bug in error path ([#1801])
4016d57389fSJerome Forissier* ASAN bug fixes ([#1799])
4026d57389fSJerome Forissier* Fix race in core_mmu_user_mapping_is_active() ([#1785])
4036d57389fSJerome Forissier* libutee: printf() and puts() fixes, add putchar() ([#1759], [#1754])
4046d57389fSJerome Forissier* arm32: GICv3: fix FIQ masking in IRQ/ABT/SVC/UND handlers ([#1748])
4056d57389fSJerome Forissier* arm32: preserve r12 in native_intr_handler() ([#1682])
4066d57389fSJerome Forissier* arm64: fix print_kernel_stack() ([#1664])
4076d57389fSJerome Forissier* benchmark: fix core data-abort ([#1658])
4086d57389fSJerome Forissier
4096d57389fSJerome Forissier## Security fixes or enhancements
4106d57389fSJerome Forissier
4116d57389fSJerome Forissier* crypto: fix software PRNG weaknesses
4126d57389fSJerome Forissier  ([OP-TEE-2017-0001][OP-TEE-2017-0001]) ([#1843])
4136d57389fSJerome Forissier
4146d57389fSJerome Forissier## Tested on
4156d57389fSJerome Forissier
41694ee4938SJerome ForissierThe release was tested successfully on the platforms listed below.
4176d57389fSJerome ForissierIf a platform is not listed, it means the release was not tested on this
4186d57389fSJerome Forissierplatform.
4196d57389fSJerome Forissier
4206d57389fSJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
4216d57389fSJerome Forissier* d02
4226d57389fSJerome Forissier* hikey
4236d57389fSJerome Forissier* hikey-hikey960
4246d57389fSJerome Forissier* imx-mx6ulevk
4256d57389fSJerome Forissier* imx-mx7dsabresd
4266d57389fSJerome Forissier* ls-ls1021a??? (single core)
4276d57389fSJerome Forissier* ls-ls1043ardb
4286d57389fSJerome Forissier* ls-ls1046ardb
4296d57389fSJerome Forissier* mediatek-mt8173
4306d57389fSJerome Forissier* rcar
4316d57389fSJerome Forissier* rockchip-rk322x
4326d57389fSJerome Forissier* rpi3
4336d57389fSJerome Forissier* sam
4346d57389fSJerome Forissier* stm-b2260
4356d57389fSJerome Forissier* stm-cannes
4366d57389fSJerome Forissier* ti-???
4376d57389fSJerome Forissier* vexpress-fvp
4386d57389fSJerome Forissier* vexpress-juno
4396d57389fSJerome Forissier* vexpress-qemu_armv8a
4406d57389fSJerome Forissier* vexpress-qemu_virt
4416d57389fSJerome Forissier
44294ee4938SJerome Forissier[github_commits_2_6_0]: https://github.com/OP-TEE/optee_os/compare/2.5.0...2.6.0
4436d57389fSJerome Forissier[#1858]: https://github.com/OP-TEE/optee_os/issues/1858
4446d57389fSJerome Forissier[#1849]: https://github.com/OP-TEE/optee_os/issues/1849
4456d57389fSJerome Forissier[#1843]: https://github.com/OP-TEE/optee_os/issues/1843
4466d57389fSJerome Forissier[#1842]: https://github.com/OP-TEE/optee_os/issues/1842
4476d57389fSJerome Forissier[#1827]: https://github.com/OP-TEE/optee_os/issues/1827
4486d57389fSJerome Forissier[#1822]: https://github.com/OP-TEE/optee_os/issues/1822
4496d57389fSJerome Forissier[#1820]: https://github.com/OP-TEE/optee_os/issues/1820
4506d57389fSJerome Forissier[#1816]: https://github.com/OP-TEE/optee_os/issues/1816
4516d57389fSJerome Forissier[#1815]: https://github.com/OP-TEE/optee_os/issues/1815
4526d57389fSJerome Forissier[#1807]: https://github.com/OP-TEE/optee_os/issues/1807
4536d57389fSJerome Forissier[#1801]: https://github.com/OP-TEE/optee_os/issues/1801
4546d57389fSJerome Forissier[#1799]: https://github.com/OP-TEE/optee_os/issues/1799
4556d57389fSJerome Forissier[#1787]: https://github.com/OP-TEE/optee_os/issues/1787
4566d57389fSJerome Forissier[#1785]: https://github.com/OP-TEE/optee_os/issues/1785
4576d57389fSJerome Forissier[#1778]: https://github.com/OP-TEE/optee_os/issues/1778
4586d57389fSJerome Forissier[#1767]: https://github.com/OP-TEE/optee_os/issues/1767
4596d57389fSJerome Forissier[#1766]: https://github.com/OP-TEE/optee_os/issues/1766
4606d57389fSJerome Forissier[#1759]: https://github.com/OP-TEE/optee_os/issues/1759
4616d57389fSJerome Forissier[#1754]: https://github.com/OP-TEE/optee_os/issues/1754
4626d57389fSJerome Forissier[#1748]: https://github.com/OP-TEE/optee_os/issues/1748
4636d57389fSJerome Forissier[#1733]: https://github.com/OP-TEE/optee_os/issues/1733
4646d57389fSJerome Forissier[#1729]: https://github.com/OP-TEE/optee_os/issues/1729
4656d57389fSJerome Forissier[#1720]: https://github.com/OP-TEE/optee_os/issues/1720
4666d57389fSJerome Forissier[#1714]: https://github.com/OP-TEE/optee_os/issues/1714
4676d57389fSJerome Forissier[#1703]: https://github.com/OP-TEE/optee_os/issues/1703
4686d57389fSJerome Forissier[#1700]: https://github.com/OP-TEE/optee_os/issues/1700
4696d57389fSJerome Forissier[#1693]: https://github.com/OP-TEE/optee_os/issues/1693
4706d57389fSJerome Forissier[#1684]: https://github.com/OP-TEE/optee_os/issues/1684
4716d57389fSJerome Forissier[#1682]: https://github.com/OP-TEE/optee_os/issues/1682
4726d57389fSJerome Forissier[#1671]: https://github.com/OP-TEE/optee_os/issues/1671
4736d57389fSJerome Forissier[#1670]: https://github.com/OP-TEE/optee_os/issues/1670
4746d57389fSJerome Forissier[#1669]: https://github.com/OP-TEE/optee_os/issues/1669
4756d57389fSJerome Forissier[#1666]: https://github.com/OP-TEE/optee_os/issues/1666
4766d57389fSJerome Forissier[#1664]: https://github.com/OP-TEE/optee_os/issues/1664
4776d57389fSJerome Forissier[#1658]: https://github.com/OP-TEE/optee_os/issues/1658
4786d57389fSJerome Forissier[#1631]: https://github.com/OP-TEE/optee_os/issues/1631
4796d57389fSJerome Forissier[OP-TEE-2017-0001]: https://www.op-tee.org/security-advisories/
4806d57389fSJerome Forissier
4815d8aaa04SJerome Forissier# OP-TEE - version 2.5.0
4825d8aaa04SJerome Forissier
4835d8aaa04SJerome Forissier[Link][github_commits_2_5_0] to a list of all commits between this release and
4845d8aaa04SJerome Forissierthe previous one (2.4.0).
4855d8aaa04SJerome Forissier
4865d8aaa04SJerome Forissier## New features
4875d8aaa04SJerome Forissier
4885d8aaa04SJerome Forissier* New supported platform: i.MX7D ([#1639])
4895d8aaa04SJerome Forissier* Secure storage: anti-rollback protection for REE FS using RPMB FS ([#1630])
4905d8aaa04SJerome Forissier* Assign non-secure DDR configuration from DT if CFG_DT=y ([#1623])
4915d8aaa04SJerome Forissier* Add new image format: split image into three separate binaries suitable for
4925d8aaa04SJerome Forissier  upcoming ARM Trusted Firmware ([#1589]).
4935d8aaa04SJerome Forissier* Make alignment check configurable ([#1586])
4945d8aaa04SJerome Forissier* drivers: add TZC380 driver ([#1578])
4955d8aaa04SJerome Forissier* plat-imx: PSCI CPU off ([#1577])
4965d8aaa04SJerome Forissier* 64-bit paging on QEMU v8 and HiKey ([#1575], [#1592])
4975d8aaa04SJerome Forissier* Benchmark framework ([#1365])
4985d8aaa04SJerome Forissier* Dump call stack of user TAs on abort ([#1552])
4995d8aaa04SJerome Forissier* plat-hikey: enable Secure Data Path ([#1440])
5005d8aaa04SJerome Forissier* Add interface to load and decrypt/authenticate user TAs ([#1513])
5015d8aaa04SJerome Forissier* plat-ti: add secure paging support ([#1493])
5025d8aaa04SJerome Forissier* plat-ti: add OTP hardware key support ([#1492])
5035d8aaa04SJerome Forissier* Support ARM GICv3 ([#1465])
5045d8aaa04SJerome Forissier
5055d8aaa04SJerome Forissier## Removed features
5065d8aaa04SJerome Forissier
5075d8aaa04SJerome Forissier* stm-orly2 is not supported anymore ([#1650])
5085d8aaa04SJerome Forissier* Remove secure storage based on SQL FS (`CFG_SQL_FS=y`) ([#1490])
5095d8aaa04SJerome Forissier* Remove support for mapping user TAs with 1 MiB or 2 MiB granularity
5105d8aaa04SJerome Forissier  (`CFG_SMALL_PAGE_USER_TA=n`) ([#1559]). TAs are always mapped using small
5115d8aaa04SJerome Forissier  pages.
5125d8aaa04SJerome Forissier
5135d8aaa04SJerome Forissier## Bug fixes
5145d8aaa04SJerome Forissier
5155d8aaa04SJerome Forissier* Reduce size of non-pageable code ([#1621])
5165d8aaa04SJerome Forissier* Ignore `TA_FLAG_MULTI_SESSION` and `TA_FLAG_INSTANCE_KEEP_ALIVE` when
5175d8aaa04SJerome Forissier  `TA_FLAG_SINGLE_INSTANCE` is not set ([#1574])
5185d8aaa04SJerome Forissier* libutee: remove buffering for AES GCM (PR#1573) and AES CTR ([#1580])
5195d8aaa04SJerome Forissier* Fix ROUNDUP()/ROUNDDOWN() macros ([#1519])
5205d8aaa04SJerome Forissier* Do not touch other bits in GICD_CTLR ([#1508])
5215d8aaa04SJerome Forissier* Fix build issue with `DEBUG=y` and `CFG_TEE_CORE_LOG_LEVEL=0` ([#1502])
5225d8aaa04SJerome Forissier* crypto: do not restrict hash size when algorithm is ECDSA ([#1497])
5235d8aaa04SJerome Forissier
5245d8aaa04SJerome Forissier## Security fixes or enhancements
5255d8aaa04SJerome Forissier
5265d8aaa04SJerome Forissier- crypto: fix RSA key leakage after fault injection attack
5275d8aaa04SJerome Forissier  ([OP-TEE-2016-0003][OP-TEE-2016-0003])  ([#1610])
5285d8aaa04SJerome Forissier* crypto: fix RSA key leakage after side channel attack
5295d8aaa04SJerome Forissier  ([OP-TEE-2016-0002][OP-TEE-2016-0002]) ([#1610])
5305d8aaa04SJerome Forissier* Make pager aliased pages not always writable ([#1551])
5315d8aaa04SJerome Forissier* Support for no-exec RO and RW data ([#1459], [#1550])
5325d8aaa04SJerome Forissier
5335d8aaa04SJerome Forissier## New issues
5345d8aaa04SJerome Forissier
5355d8aaa04SJerome Forissier* armv7: some platform-specific code (`plat_cpu_reset_early()`) overwrites
5365d8aaa04SJerome ForissierSCTLR bits configured by generic code. This affects alignment checks (`SCTLR.A`)
5375d8aaa04SJerome Forissierand write-implies-no-exec (`SCTLR.WXN`, `SCTLR.UWXN`), which can therefore not
5385d8aaa04SJerome Forissierbe configured via the compile-time `CFG_` variables.
5395d8aaa04SJerome Forissier* armv7: plat-imx: Cortex-A9 cores should enable branch prediction (`SCLTR.Z`)
5405d8aaa04SJerome Forissierfor improved performance.
5415d8aaa04SJerome Forissier* [#1656] qemu_armv8a: init hangs when secure data path and pager are both
5425d8aaa04SJerome Forissier  enabled.
5435d8aaa04SJerome Forissier
5445d8aaa04SJerome Forissier## Tested on
5455d8aaa04SJerome Forissier
5465d8aaa04SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with
5475d8aaa04SJerome Forissierits default configuration, while _extended_ means it was run successfully
5485d8aaa04SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite
5495d8aaa04SJerome Forissierv1.1.0.4.
5505d8aaa04SJerome Forissier
5515d8aaa04SJerome ForissierIf a platform is not listed, it means the release was not tested on this
5525d8aaa04SJerome Forissierplatform.
5535d8aaa04SJerome Forissier
5545d8aaa04SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
5555d8aaa04SJerome Forissier* d02: extended
5565d8aaa04SJerome Forissier* hikey: extended
5575d8aaa04SJerome Forissier* imx-mx6ulevk: standard
5585d8aaa04SJerome Forissier* imx-mx6ullevk: standard
5595d8aaa04SJerome Forissier* imx-mx7dsabresd: standard
5605d8aaa04SJerome Forissier* ls-ls1021atwr: standard
5615d8aaa04SJerome Forissier* mediatek-mt8173: standard
5625d8aaa04SJerome Forissier* rcar-h3: standard
5635d8aaa04SJerome Forissier* rpi3: standard
5645d8aaa04SJerome Forissier* stm-b2260: extended
5655d8aaa04SJerome Forissier* stm-cannes: extended
5665d8aaa04SJerome Forissier* ti-am43xx: standard
5675d8aaa04SJerome Forissier* ti-am57xx: standard
5685d8aaa04SJerome Forissier* ti-dra7xx: standard
5695d8aaa04SJerome Forissier* vexpress-fvp: standard
5705d8aaa04SJerome Forissier* vexpress-juno: standard
5715d8aaa04SJerome Forissier* vexpress-qemu_armv8a: standard
5725d8aaa04SJerome Forissier* vexpress-qemu_virt: standard
5735d8aaa04SJerome Forissier
5745d8aaa04SJerome Forissier[github_commits_2_5_0]: https://github.com/OP-TEE/optee_os/compare/2.4.0...2.5.0-rc1
5755d8aaa04SJerome Forissier[#1656]: https://github.com/OP-TEE/optee_os/issues/1656
5765d8aaa04SJerome Forissier[#1650]: https://github.com/OP-TEE/optee_os/pull/1650
5775d8aaa04SJerome Forissier[#1639]: https://github.com/OP-TEE/optee_os/pull/1639
5785d8aaa04SJerome Forissier[#1630]: https://github.com/OP-TEE/optee_os/pull/1630
5795d8aaa04SJerome Forissier[#1623]: https://github.com/OP-TEE/optee_os/pull/1623
5805d8aaa04SJerome Forissier[#1621]: https://github.com/OP-TEE/optee_os/pull/1621
5815d8aaa04SJerome Forissier[#1610]: https://github.com/OP-TEE/optee_os/pull/1610
5825d8aaa04SJerome Forissier[#1592]: https://github.com/OP-TEE/optee_os/pull/1592
5835d8aaa04SJerome Forissier[#1589]: https://github.com/OP-TEE/optee_os/pull/1589
5845d8aaa04SJerome Forissier[#1586]: https://github.com/OP-TEE/optee_os/pull/1586
5855d8aaa04SJerome Forissier[#1580]: https://github.com/OP-TEE/optee_os/pull/1580
5865d8aaa04SJerome Forissier[#1578]: https://github.com/OP-TEE/optee_os/pull/1578
5875d8aaa04SJerome Forissier[#1577]: https://github.com/OP-TEE/optee_os/pull/1577
5885d8aaa04SJerome Forissier[#1574]: https://github.com/OP-TEE/optee_os/pull/1574
5895d8aaa04SJerome Forissier[#1559]: https://github.com/OP-TEE/optee_os/pull/1559
5905d8aaa04SJerome Forissier[#1551]: https://github.com/OP-TEE/optee_os/pull/1551
5915d8aaa04SJerome Forissier[#1550]: https://github.com/OP-TEE/optee_os/pull/1550
5925d8aaa04SJerome Forissier[#1519]: https://github.com/OP-TEE/optee_os/pull/1519
5935d8aaa04SJerome Forissier[#1502]: https://github.com/OP-TEE/optee_os/pull/1502
5945d8aaa04SJerome Forissier[#1365]: https://github.com/OP-TEE/optee_os/pull/1365
5955d8aaa04SJerome Forissier[#1552]: https://github.com/OP-TEE/optee_os/pull/1552
5965d8aaa04SJerome Forissier[#1513]: https://github.com/OP-TEE/optee_os/pull/1513
5975d8aaa04SJerome Forissier[#1508]: https://github.com/OP-TEE/optee_os/pull/1508
5985d8aaa04SJerome Forissier[#1493]: https://github.com/OP-TEE/optee_os/pull/1493
5995d8aaa04SJerome Forissier[#1497]: https://github.com/OP-TEE/optee_os/pull/1497
6005d8aaa04SJerome Forissier[#1492]: https://github.com/OP-TEE/optee_os/pull/1492
6015d8aaa04SJerome Forissier[#1490]: https://github.com/OP-TEE/optee_os/pull/1490
6025d8aaa04SJerome Forissier[#1465]: https://github.com/OP-TEE/optee_os/pull/1465
6035d8aaa04SJerome Forissier[#1459]: https://github.com/OP-TEE/optee_os/pull/1459
6045d8aaa04SJerome Forissier[#1440]: https://github.com/OP-TEE/optee_os/pull/1440
6055d8aaa04SJerome Forissier[OP-TEE-2016-0003]: https://www.op-tee.org/security-advisories/
6065d8aaa04SJerome Forissier[OP-TEE-2016-0002]: https://www.op-tee.org/security-advisories/
6075d8aaa04SJerome Forissier
608702609a7SJerome Forissier# OP-TEE - version 2.4.0
609702609a7SJerome Forissier
610702609a7SJerome Forissier[Link][github_commits_2_4_0] to a list of all commits between this release and
611702609a7SJerome Forissierthe previous one (2.3.0).
612702609a7SJerome Forissier
613702609a7SJerome ForissierPlease note: this release is API-compatible with the previous one, but the
614702609a7SJerome ForissierSecure Storage internal format for the REE and SQL FS is not compatible due to
615702609a7SJerome Forissiercommits [a238b74][commit_a238b74] ("core: REE FS: use the new hash tree
616702609a7SJerome Forissierinterface") and [44e900e][commit_44e900e] ("core: SQL FS: use the new hash tree
617702609a7SJerome Forissierinterface").
618702609a7SJerome Forissier
619702609a7SJerome Forissier## New features
620702609a7SJerome Forissier
621702609a7SJerome Forissier* Add porting guidelines
622702609a7SJerome Forissier
623702609a7SJerome Forissier* Add support for Secure Data Path which allows Client and Trusted Applications
624702609a7SJerome Forissier  to share references to secure memory
625702609a7SJerome Forissier
626702609a7SJerome Forissier* New supported platform: Texas Instruments AM57xx (`PLATFORM=ti-am57xx`)
627702609a7SJerome Forissier
628702609a7SJerome Forissier* ARMv7-A: add support for platform services in secure monitor and add these
629702609a7SJerome Forissier  services for the DRA7xx platform
630702609a7SJerome Forissier
631702609a7SJerome Forissier* SPI framework and PL022 driver cleanup and improvements
632702609a7SJerome Forissier
633702609a7SJerome Forissier* Use CNTPCT (when available) to add entropy to the software PRNG
634702609a7SJerome Forissier
635702609a7SJerome Forissier* Add GlobalPlatform Socket API for UDP and TCP (IPv4 and IPv6)
636702609a7SJerome Forissier
637702609a7SJerome Forissier* DRA7: add TRNG driver, enable GICv2 driver
638702609a7SJerome Forissier
639702609a7SJerome Forissier* Support load address larger than 4G
640702609a7SJerome Forissier
641702609a7SJerome Forissier* libutee: preserve error code when calling TEE_Panic() for easier
642702609a7SJerome Forissier  troubleshooting
643702609a7SJerome Forissier
644702609a7SJerome Forissier* Support TA profiling with gprof (-pg compiler switch)
645702609a7SJerome Forissier
646702609a7SJerome Forissier* Optimize the ELF loader for TAs when pager is enabled
647702609a7SJerome Forissier
648702609a7SJerome Forissier* Update documentation
649702609a7SJerome Forissier
650702609a7SJerome Forissier* Add paged secure shared memory that can be transferred between TAs as
651702609a7SJerome Forissier  needed
652702609a7SJerome Forissier
653702609a7SJerome Forissier* Introduce MOBJ abstraction
654702609a7SJerome Forissier
655702609a7SJerome Forissier* i.MX6: add PSCI "on" function
656702609a7SJerome Forissier
657702609a7SJerome Forissier* arm32: introduce PSCI framework
658702609a7SJerome Forissier
659702609a7SJerome Forissier## Bug fixes
660702609a7SJerome Forissier
661702609a7SJerome Forissier* Secure storage: improve integrity checking of the REE and SQL filesystems by
662702609a7SJerome Forissier  adding a hash tree on the internal data structures. Any external modification
663702609a7SJerome Forissier  is detected, except full rollback. Fixes [#1188][issue1188].
664702609a7SJerome Forissier
665702609a7SJerome Forissier* The linux driver will set the 'privileged' flag (TEE_GEN_CAP_PRIVILEGED) on
666702609a7SJerome Forissier  the device intended for use by tee-supplicant. Fixes [#1199][issue1199].
667702609a7SJerome Forissier
668702609a7SJerome Forissier* RPMB: don't try to program the RPMB key by default
669702609a7SJerome Forissier
670702609a7SJerome Forissier* Fix "make clean" error cases
671702609a7SJerome Forissier
672702609a7SJerome Forissier* Fix issue when resetting persistent storage enumerator [#1332][issue1332]
673702609a7SJerome Forissier
674702609a7SJerome Forissier* Fix TA panic when doing AES CTS with specific buffer sizes
675702609a7SJerome Forissier  [#1203][issue1203].
676702609a7SJerome Forissier
677702609a7SJerome Forissier## Known issues
678702609a7SJerome Forissier
679702609a7SJerome Forissier* On RPi3 xtest sometimes stall (rcu_sched self-detected stall on CPU) [#1353][issue1353]
680702609a7SJerome Forissier* For multi-core PSCI support is to be added for ls1021atwr in OP-TEE.
681702609a7SJerome Forissier* USB keyboard cannot be used to stop the u-boot timeout ([build issue131]).
682702609a7SJerome Forissier* Travis service (build.git) seems unstable from time to time.
683702609a7SJerome Forissier
684702609a7SJerome Forissier## Tested on
685702609a7SJerome Forissier
686702609a7SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with
687702609a7SJerome Forissierits default configuration, while _extended_ means it was run successfully
688702609a7SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite
689702609a7SJerome Forissierv1.1.0.4.
690702609a7SJerome Forissier
691702609a7SJerome ForissierIf a platform is not listed, it means the release was not tested on this
692702609a7SJerome Forissierplatform.
693702609a7SJerome Forissier
694702609a7SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
695702609a7SJerome Forissier* d02: extended
696702609a7SJerome Forissier* hikey: extended
697702609a7SJerome Forissier* imx-mx6ulevk: standard
698702609a7SJerome Forissier* ls-ls1021atwr: standard (single core)
699702609a7SJerome Forissier* mediatek-mt8173: standard
700702609a7SJerome Forissier* rcar-h3: standard
701702609a7SJerome Forissier* rpi3: standard
702702609a7SJerome Forissier* stm-b2260: extended
703702609a7SJerome Forissier* ti-dra7xx: standard
704702609a7SJerome Forissier* vexpress-fvp: standard
705702609a7SJerome Forissier* vexpress-juno: standard
706702609a7SJerome Forissier* vexpress-qemu_armv8a: standard
707702609a7SJerome Forissier* vexpress-qemu_virt: standard
708702609a7SJerome Forissier* zynqmp-zc1751_dc1: standard
709702609a7SJerome Forissier* zynqmp-zc1751_dc2: standard
710702609a7SJerome Forissier* zynqmp-zcu102: standard
711702609a7SJerome Forissier
712702609a7SJerome Forissier[github_commits_2_4_0]: https://github.com/OP-TEE/optee_os/compare/2.3.0...2.4.0
713702609a7SJerome Forissier[issue1332]: https://github.com/OP-TEE/optee_os/issues/1332
714702609a7SJerome Forissier[issue1353]: https://github.com/OP-TEE/optee_os/issues/1353
715702609a7SJerome Forissier[build issue131]: https://github.com/OP-TEE/build/issues/131
716702609a7SJerome Forissier[commit_a238b74]: https://github.com/OP-TEE/optee_os/commit/a238b744b1b3
717702609a7SJerome Forissier[commit_44e900e]: https://github.com/OP-TEE/optee_os/commit/44e900eabfc1
718702609a7SJerome Forissier
71928fcee17SJerome Forissier# OP-TEE - version 2.3.0
72028fcee17SJerome Forissier
72128fcee17SJerome Forissier[Link][github_commits_2_3_0] to a list of all commits between this release and
72228fcee17SJerome Forissierthe previous one (2.2.0).
72328fcee17SJerome Forissier
72428fcee17SJerome ForissierPlease note: this release is API-compatible with the previous one, but the
72528fcee17SJerome ForissierSecure Storage internal format for the REE FS is not compatible due to commit
72628fcee17SJerome Forissier[361fb3e][commit_361fb3e] ("core: REE FS: use a single file per object").
72728fcee17SJerome Forissier
72828fcee17SJerome Forissier[commit_361fb3e]: https://github.com/OP-TEE/optee_os/commit/361fb3e
72928fcee17SJerome Forissier
73028fcee17SJerome Forissier## New features
73128fcee17SJerome Forissier
73228fcee17SJerome Forissier* New supported platform: Xilinx Zynq 7000 ZC702 (`PLATFORM=zynq7k-zc702`)
73328fcee17SJerome Forissier
73428fcee17SJerome Forissier* Add debug assertions to spinlocks and mutexes
73528fcee17SJerome Forissier
73628fcee17SJerome Forissier* Add more CP15 register access macros for Cortex-A9
73728fcee17SJerome Forissier
73828fcee17SJerome Forissier* ARMv7-A: redesign secure monitor to make it easier to register services
73928fcee17SJerome Forissier
74028fcee17SJerome Forissier* ARMv7-A: cleanup boot arguments
74128fcee17SJerome Forissier
74228fcee17SJerome Forissier* libutee: extend `TEE_CheckMemoryAccessRights()` with
74328fcee17SJerome Forissier  `TEE_MEMORY_ACCESS_SECURE` and `TEE_MEMORY_ACCESS_NONSECURE`
74428fcee17SJerome Forissier
74528fcee17SJerome Forissier* plat-hikey: enable SPI by default and add sample test code
74628fcee17SJerome Forissier
74728fcee17SJerome Forissier* Consider `CFLAGS_ta_arm64` and `CFLAGS_ta_arm32` when building TAs
74828fcee17SJerome Forissier
74928fcee17SJerome Forissier* Secure storage refactoring
75028fcee17SJerome Forissier  - Simplify interface with tee-supplicant. Minimize round trips with normal
75128fcee17SJerome Forissier    world, especially by adding a cache for FS RPC payload data.
75228fcee17SJerome Forissier  - REE FS: use a single file per object, remove block cache.
75328fcee17SJerome Forissier
75428fcee17SJerome Forissier* Print call stack in panic()
75528fcee17SJerome Forissier
75628fcee17SJerome Forissier## Bug fixes
75728fcee17SJerome Forissier
75828fcee17SJerome Forissier* Fix UUID encoding when communicating with normal world (use big endian
75928fcee17SJerome Forissier  mode instead of native endianness). Related to this, the string format
76028fcee17SJerome Forissier  for UUIDs has changed in tee-supplicant, so that TA file names now follow
76128fcee17SJerome Forissier  the format defined in RFC4122 (a missing hyphen was added). The old format
76228fcee17SJerome Forissier  is still supported, but deprecated, and will likely be removed with the
76328fcee17SJerome Forissier  next major release.
76428fcee17SJerome Forissier
76528fcee17SJerome Forissier* Drop write permission to non-writable ELF segments after TA loading is
76628fcee17SJerome Forissier  complete.
76728fcee17SJerome Forissier
76828fcee17SJerome Forissier* mm: fix confusing memory mapping debug traces
76928fcee17SJerome Forissier
77028fcee17SJerome Forissier* plat-ti: fix issues with MMU mapping
77128fcee17SJerome Forissier
77228fcee17SJerome Forissier* crypto: fix clearing of big numbers
77328fcee17SJerome Forissier
77428fcee17SJerome Forissier* build: allow spaces and double quotes in CFG_ variables
77528fcee17SJerome Forissier
77628fcee17SJerome Forissier* mm: use paddr_t to support both 32- and 64-bit architectures properly.
77728fcee17SJerome Forissier  Resolves 32-bit truncation error when pool is at top of 32 bit address
77828fcee17SJerome Forissier  space on 64-bit architecture.
77928fcee17SJerome Forissier
78028fcee17SJerome Forissier* plat-stm: support pager. Fix pager on ARMv7-A SMP boards.
78128fcee17SJerome Forissier
78228fcee17SJerome Forissier* Fix debug output of Trusted Applications (remove "ERROR: TEE-CORE:" prefix)
78328fcee17SJerome Forissier
78428fcee17SJerome Forissier* Do not consider TA memref parameters as TA private memory
78528fcee17SJerome Forissier
78628fcee17SJerome Forissier* crypto: fix `cipher_final()` which would not call `cbc_done()` for CBC_MAC
78728fcee17SJerome Forissier  algorithms
78828fcee17SJerome Forissier
78928fcee17SJerome Forissier* fix for 16-way PL310
79028fcee17SJerome Forissier
79128fcee17SJerome Forissier* arm32: fix call stack unwinding (`print_stack()`)
79228fcee17SJerome Forissier
79328fcee17SJerome Forissier* arm32: fix spinlock assembly code
79428fcee17SJerome Forissier
79528fcee17SJerome Forissier* plat-stm, plat-imx: fix SCR initalization
79628fcee17SJerome Forissier
79728fcee17SJerome Forissier* Fix user L1 MMU entries calculation (non-LPAE), allowing TTBCR.N values
79828fcee17SJerome Forissier  other than 7.
79928fcee17SJerome Forissier
80028fcee17SJerome Forissier* mtk-mt8173: fix panic caused by incorrect size of SHMEM
80128fcee17SJerome Forissier
80228fcee17SJerome Forissier* plat-stm: fix RNG driver (non-flat mapping)
80328fcee17SJerome Forissier
80428fcee17SJerome Forissier## Known issues
80528fcee17SJerome Forissier
80628fcee17SJerome Forissier* New issues open on GitHub
80728fcee17SJerome Forissier  * [#1203][issue1203] AES-CTS mode will fail when inlen=0x100, in_incr=0x80
80828fcee17SJerome Forissier  * [#1199][issue1199] Both tee and teepriv reported GlobalPlatform compliant
80928fcee17SJerome Forissier  * [#1188][issue1188] Secure storage (SQL FS and REE FS): blocks not tied to
81028fcee17SJerome Forissier    current meta header
81128fcee17SJerome Forissier  * [#1172][issue1172] paddr_t should be larger than 32 bits when
81228fcee17SJerome Forissier    CFG_WITH_LPAE is enabled
81328fcee17SJerome Forissier
81428fcee17SJerome Forissier## Tested on
81528fcee17SJerome Forissier
81628fcee17SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with
81728fcee17SJerome Forissierits default configuration, while _extended_ means it was run successfully
81828fcee17SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite
81928fcee17SJerome Forissierv1.1.0.4.
82028fcee17SJerome Forissier
82128fcee17SJerome ForissierIf a platform is not listed, it means the release was not tested on this
82228fcee17SJerome Forissierplatform.
82328fcee17SJerome Forissier
82428fcee17SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
82528fcee17SJerome Forissier* d02: extended
82628fcee17SJerome Forissier* hikey: extended
82728fcee17SJerome Forissier* imx-mx6ulevk: standard
82828fcee17SJerome Forissier* ls-ls1021atwr: standard
82928fcee17SJerome Forissier* mediatek-mt8173: standard
83028fcee17SJerome Forissier* rcar-h3: standard
83128fcee17SJerome Forissier* rpi3: standard
83228fcee17SJerome Forissier* stm-b2260: extended
83328fcee17SJerome Forissier* stm-cannes: extended
83428fcee17SJerome Forissier* ti-dra7xx: standard
83528fcee17SJerome Forissier* vexpress-fvp: standard
83628fcee17SJerome Forissier* vexpress-juno: standard
83728fcee17SJerome Forissier* vexpress-qemu_armv8a: standard
83828fcee17SJerome Forissier* vexpress-qemu_virt: extended
83928fcee17SJerome Forissier* zynqmp-zcu102: standard
84028fcee17SJerome Forissier
84128fcee17SJerome Forissier[github_commits_2_3_0]: https://github.com/OP-TEE/optee_os/compare/2.2.0...2.3.0
84228fcee17SJerome Forissier[issue1172]: https://github.com/OP-TEE/optee_os/issues/1172
84328fcee17SJerome Forissier[issue1188]: https://github.com/OP-TEE/optee_os/issues/1188
84428fcee17SJerome Forissier[issue1199]: https://github.com/OP-TEE/optee_os/issues/1199
84528fcee17SJerome Forissier[issue1203]: https://github.com/OP-TEE/optee_os/issues/1203
84628fcee17SJerome Forissier
847c0c5d399SJerome Forissier# OP-TEE - version 2.2.0
848c0c5d399SJerome Forissier
849c0c5d399SJerome Forissier[Link][github_commits_2_2_0] to a list of all commits between this release and
850c0c5d399SJerome Forissierthe previous one (2.1.0).
851c0c5d399SJerome Forissier
852c0c5d399SJerome ForissierPlease note: this release is API-compatible with the previous one, but the
853c0c5d399SJerome ForissierSecure Storage internal format is not compatible due to commit
854c0c5d399SJerome Forissier[fde4a75][commit_fde4a75] ("storage: encrypt the FEK with a TA-specific key").
855c0c5d399SJerome Forissier
856c0c5d399SJerome Forissier[commit_fde4a75]: https://github.com/OP-TEE/optee_os/commit/fde4a75
857c0c5d399SJerome Forissier
858c0c5d399SJerome Forissier## New features
859c0c5d399SJerome Forissier
860c0c5d399SJerome Forissier* New supported platforms:
861c0c5d399SJerome Forissier	* Freescale i.MX6 Quad SABRE Lite & SD
862c0c5d399SJerome Forissier	* HiSilicon D02
863c0c5d399SJerome Forissier	* Raspberry Pi3
864c0c5d399SJerome Forissier	* Renesas RCAR H3
865c0c5d399SJerome Forissier	* STMicroelectronics b2260 - h410
866c0c5d399SJerome Forissier
867c0c5d399SJerome Forissier* Pager: Support paging of read/write pages by encrypting them with AES-GCM.
868c0c5d399SJerome Forissier  Support paging of user TAs. Add global setting for TZSRAM size
869c0c5d399SJerome Forissier  (CFG_CORE_TZSRAM_EMUL_SIZE), defaults to 300K.
870c0c5d399SJerome Forissier
871c0c5d399SJerome Forissier* Support for more than 8 CPU cores
872c0c5d399SJerome Forissier
873c0c5d399SJerome Forissier* Added SPI framework and PL022 driver
874c0c5d399SJerome Forissier
875c0c5d399SJerome Forissier* GPIO: framework supports multiple instances, PL061 driver now has get/set
876c0c5d399SJerome Forissier  interrupt and mode control functions
877c0c5d399SJerome Forissier
878c0c5d399SJerome Forissier* Secure storage: Encrypt the File Encryption Key with a TA-specific key for
879c0c5d399SJerome Forissier  better TA isolation. Add build-time and run-time support for multiple storage
880c0c5d399SJerome Forissier  backends. Add SQLite backend.
881c0c5d399SJerome Forissier
882c0c5d399SJerome Forissier* Trusted User Interface: some code is introduced to support the implementation
883c0c5d399SJerome Forissier  of TUI. This includes: a generic framebuffer driver, display and serial
884c0c5d399SJerome Forissier  abstractions, and drivers for PL111 (LCD) / PL050 (KMI) / TZC400 and PS2
885c0c5d399SJerome Forissier  mouse.
886c0c5d399SJerome Forissier
887c0c5d399SJerome Forissier* AES acceleration using ARMv8-A Cryptographic Extensions instructions is
888c0c5d399SJerome Forissier  now supported in AArch32 mode
889c0c5d399SJerome Forissier
890c0c5d399SJerome Forissier* Add support for GCC flags: -fsanitize=undefined and -fsanitize=kernel-address
891c0c5d399SJerome Forissier
892c0c5d399SJerome Forissier* Use a global setting for core heap size (CFG_CORE_HEAP_SIZE), 64K by default.
893c0c5d399SJerome Forissier
894c0c5d399SJerome Forissier* Add macros to unwind and print the call stack of TEE core
895c0c5d399SJerome Forissier
896c0c5d399SJerome Forissier* Libtomcrypt: sync with the latest `develop` branch.
897c0c5d399SJerome Forissier
898c0c5d399SJerome Forissier* The Trusted Application SDK (ta_dev_kit.mk) can produce libraries (.a)
899c0c5d399SJerome Forissier
900c0c5d399SJerome Forissier* Rework assertions and TEE core panics and properly honor NDEBUG
901c0c5d399SJerome Forissier
902c0c5d399SJerome Forissier## Bug fixes
903c0c5d399SJerome Forissier
904c0c5d399SJerome Forissier* Fix incorrect algorithm passed to cipher.final()
905c0c5d399SJerome Forissier
906c0c5d399SJerome Forissier* scripts: support Python 2.x and 3.x
907c0c5d399SJerome Forissier
908c0c5d399SJerome Forissier* Secure storage: Add proper locking to support concurrent access. Fix sign
909c0c5d399SJerome Forissier  extension bug with offset parameter of syscall storage_obj_seek which could
910c0c5d399SJerome Forissier  cause errors in Aarch32 mode. Fix reading beyond end of file.
911c0c5d399SJerome Forissier
912c0c5d399SJerome Forissier* Aarch64: mask all maskable exceptions before doing a normal return from call.
913c0c5d399SJerome Forissier
914c0c5d399SJerome Forissier* Device Tree: add no-map property to OP-TEE node in reserved-memory.
915c0c5d399SJerome Forissier
916c0c5d399SJerome Forissier* LibTomcrypt: fix CVE-2016-6129
917c0c5d399SJerome Forissier
918c0c5d399SJerome Forissier## Known issues
919c0c5d399SJerome Forissier
920c0c5d399SJerome Forissier* New issues open on GitHub
921c0c5d399SJerome Forissier  * [#1093][issue1093] rcar-h3: xtest 6010 hangs
922c0c5d399SJerome Forissier  * [#1092][issue1092] rcar-h3: xtest 4010 fails
923c0c5d399SJerome Forissier  * [#1081][issue1081] Bad mapping of TA secure memref parameters
924c0c5d399SJerome Forissier  * [#1071][issue1071] __data_end may not correctly represent text start position when using CFG_WITH_PAGER
925c0c5d399SJerome Forissier  * [#1069][issue1069] armv7/Aarch32: crash in stack unwind (DPRINT_STACK())
926c0c5d399SJerome Forissier
927c0c5d399SJerome Forissier## Tested on
928c0c5d399SJerome Forissier
929c0c5d399SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with
930c0c5d399SJerome Forissierits default configuration, while _extended_ means it was run successfully
931c0c5d399SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite
932c0c5d399SJerome Forissierv1.1.0.4.
933c0c5d399SJerome Forissier
934c0c5d399SJerome ForissierIf a platform is not listed, it means the release was not tested on this
935c0c5d399SJerome Forissierplatform.
936c0c5d399SJerome Forissier
937c0c5d399SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically -->
938c0c5d399SJerome Forissier* d02: extended
939c0c5d399SJerome Forissier* hikey: extended
940c0c5d399SJerome Forissier* imx-mx6qsabrelite: standard
941c0c5d399SJerome Forissier* imx-mx6qsabresd: standard
942c0c5d399SJerome Forissier* rcar-h3: standard, pass except issues [#1092][issue1092] and [#1093][issue1093]
943c0c5d399SJerome Forissier* rpi3: standard
944c0c5d399SJerome Forissier* stm-b2260: standard
945c0c5d399SJerome Forissier* stm-cannes: standard
946c0c5d399SJerome Forissier* ti-dra7xx: standard
947c0c5d399SJerome Forissier* vexpress-fvp: standard
948c0c5d399SJerome Forissier* vexpress-juno: standard
949c0c5d399SJerome Forissier* vexpress-qemu_armv8a: standard
950c0c5d399SJerome Forissier* vexpress-qemu_virt: extended
951c0c5d399SJerome Forissier* zynqmp-zcu102: standard
952c0c5d399SJerome Forissier
953c0c5d399SJerome Forissier[github_commits_2_2_0]: https://github.com/OP-TEE/optee_os/compare/2.1.0...2.2.0
954c0c5d399SJerome Forissier[issue1081]: https://github.com/OP-TEE/optee_os/issues/1081
955c0c5d399SJerome Forissier[issue1071]: https://github.com/OP-TEE/optee_os/issues/1071
956c0c5d399SJerome Forissier[issue1069]: https://github.com/OP-TEE/optee_os/issues/1069
957c0c5d399SJerome Forissier[issue1092]: https://github.com/OP-TEE/optee_os/issues/1092
958c0c5d399SJerome Forissier[issue1093]: https://github.com/OP-TEE/optee_os/issues/1093
959c0c5d399SJerome Forissier
960ac3cc110SPascal Brand# OP-TEE - version 2.1.0
961a0cd5d60SPascal Brand
962ac3cc110SPascal Brand## New features
963ac3cc110SPascal Brand
964ac3cc110SPascal Brand* New supported platforms:
965ac3cc110SPascal Brand	* Xilinx Zynq UltraScale+ MPSOC
966ac3cc110SPascal Brand	* Spreadtrum SC9860
967ac3cc110SPascal Brand
968ac3cc110SPascal Brand* GCC5 support
969ac3cc110SPascal Brand
970ac3cc110SPascal Brand* Non Linear Mapping support: In OP-TEE kernel mode, the physical to virtual
971ac3cc110SPascal Brand  addresses was linear until this release, meaning the virtual addresses
972ac3cc110SPascal Brand  were equal to the physical addresses. This is no more the case in this
973ac3cc110SPascal Brand  release.
974ac3cc110SPascal Brand
975ac3cc110SPascal Brand* Font rendering routines have been introduced in order to ease an
976ac3cc110SPascal Brand  implementation of Trusted UI.
977ac3cc110SPascal Brand
978ac3cc110SPascal Brand* File Storage: Possibility to use the normal world filesystem and the RPMB
979ac3cc110SPascal Brand  implementations simultaneously.
980ac3cc110SPascal Brand
981ac3cc110SPascal Brand* AOSP: There is a [local manifest][aosp_local_manifest] to build OP-TEE into an AOSP build, running on HiKey.
982ac3cc110SPascal Brand  Please refer to the README in that repo for instructions.
983ac3cc110SPascal Brand
984ac3cc110SPascal Brand* OpenEmbedded: In addition to the makefile-based build described in the optee_os README, there is an
985ac3cc110SPascal Brand  [OpenEmbedded-based build][oe_build] that supports Qemu (32-bit), FVP (64-bit), and HiKey (64-bit).
986ac3cc110SPascal Brand  Please refer to the README in that repo for instructions.
987ac3cc110SPascal Brand
988ac3cc110SPascal Brand* [Link][github_commits_2_1_0] to a list of all commits between this and
989ac3cc110SPascal Brand  previous release.
990ac3cc110SPascal Brand
991ac3cc110SPascal Brand
992ac3cc110SPascal Brand## Tested on
993ac3cc110SPascal BrandDefinitions:
994ac3cc110SPascal Brand
995ac3cc110SPascal Brand| Type | Meaning |
996ac3cc110SPascal Brand| ---- | ------- |
997ac3cc110SPascal Brand| Standard tests | The [optee_test][optee_test] project. |
998ac3cc110SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
999ac3cc110SPascal Brand
1000ac3cc110SPascal Brand*	ARM Juno Board (vexpress-juno), standard.
1001ac3cc110SPascal Brand*	Foundation Models (vexpress-fvp), standard tests + extended tests,
1002ac3cc110SPascal Brand	using FVP ARM V8 Foundation Platformr0p0 (platform build 10.0.37)
1003ac3cc110SPascal Brand*	FSL i.MX6 UltraLite EVK (imx), standard.
1004ac3cc110SPascal Brand*	FSL ls1021a (ls-ls1021atwr), standard tests.
1005ac3cc110SPascal Brand*	HiKey (hikey), standard + extended tests.
1006ac3cc110SPascal Brand*	QEMU (vexpress-qemu), standard + extended tests.
1007ac3cc110SPascal Brand*	Xilinx Zynq UltraScale+ MPSOC, standard tests
1008ac3cc110SPascal Brand
1009ac3cc110SPascal BrandNote that the following platform has not been tested:
1010ac3cc110SPascal Brand*	MTK8173-EVB (mediatek-mt8173)
1011ac3cc110SPascal Brand
1012ac3cc110SPascal Brand
1013ac3cc110SPascal Brand## Known issues
1014ac3cc110SPascal Brand* Issue(s) open on GitHub
1015ac3cc110SPascal Brand  * [#868][pr868]: python-wand font generation sometimes times out
1016ac3cc110SPascal Brand  * [#863][pr863]: "double free or corruption" error when building optee_os
1017ac3cc110SPascal Brand  * [#858][pr858]: UUIDs in binary format have wrong endinanness
1018ac3cc110SPascal Brand  * [#857][pr857]: Formatting of UUIDs is incorrect
1019ac3cc110SPascal Brand  * [#847][pr847]: optee_os panic(TEE-CORE: Assertion)
1020ac3cc110SPascal Brand  * [#838][pr838]: TUI font rendering is _very_ slow
1021ac3cc110SPascal Brand  * [#814][pr814]: Persistent objects : save informations after close
1022ac3cc110SPascal Brand  * [#665][pr665]: xtest 1013 stalled on HiKey when log levels are 4 and optee_os is on its own UART
1023ac3cc110SPascal Brand  * [#506][pr506]: tee-supplicant panic & ta panic
1024ac3cc110SPascal Brand
1025ac3cc110SPascal Brand[github_commits_2_1_0]: https://github.com/OP-TEE/optee_os/compare/2.0.0...2.1.0
1026ac3cc110SPascal Brand[pr868]: https://github.com/OP-TEE/optee_os/issues/868
1027ac3cc110SPascal Brand[pr863]: https://github.com/OP-TEE/optee_os/issues/863
1028ac3cc110SPascal Brand[pr858]: https://github.com/OP-TEE/optee_os/issues/858
1029ac3cc110SPascal Brand[pr857]: https://github.com/OP-TEE/optee_os/issues/857
1030ac3cc110SPascal Brand[pr847]: https://github.com/OP-TEE/optee_os/issues/847
1031ac3cc110SPascal Brand[pr838]: https://github.com/OP-TEE/optee_os/issues/838
1032ac3cc110SPascal Brand[pr814]: https://github.com/OP-TEE/optee_os/issues/814
1033ac3cc110SPascal Brand[pr665]: https://github.com/OP-TEE/optee_os/issues/665
1034ac3cc110SPascal Brand[aosp_local_manifest]: https://github.com/linaro-swg/optee_android_manifest
1035ac3cc110SPascal Brand[oe_build]: https://github.com/linaro-swg/oe-optee
1036ac3cc110SPascal Brand
1037ac3cc110SPascal Brand# OP-TEE - version 2.0.0
1038a0cd5d60SPascal Brand
1039a0cd5d60SPascal Brand## New features
1040a0cd5d60SPascal Brand
1041a0cd5d60SPascal Brand* Generic driver: A new generic TEE driver is in the process of being
1042a0cd5d60SPascal Brand  [upstreamed][gendrv_v9].
1043a0cd5d60SPascal Brand  In this release, [OP-TEE/optee_linuxdriver][optee_linuxdriver] is no more used.
1044a0cd5d60SPascal Brand  Instead, linux v4.5 is being patched using the proposed Generic TEE Driver,
1045a0cd5d60SPascal Brand  as it can be found in [https://github.com/linaro-swg/linux/tree/optee][linux_optee]
1046a0cd5d60SPascal Brand
1047a0cd5d60SPascal Brand* RPMB support: Secure Storage can now use Replay Protected Memory Block (RPMB) partition
1048a0cd5d60SPascal Brand  of an eMMC device. Check the [full documentation][rpmb_doc]
1049a0cd5d60SPascal Brand
1050a0cd5d60SPascal Brand* Hard-float ABI is now available.
1051a0cd5d60SPascal Brand
1052a0cd5d60SPascal Brand* [Link][github_commits_2_0_0] to a list of all commits between this and
1053a0cd5d60SPascal Brand  previous release.
1054a0cd5d60SPascal Brand
1055a0cd5d60SPascal Brand
1056a0cd5d60SPascal Brand## Tested on
1057a0cd5d60SPascal BrandDefinitions:
1058a0cd5d60SPascal Brand
1059a0cd5d60SPascal Brand| Type | Meaning |
1060a0cd5d60SPascal Brand| ---- | ------- |
1061a0cd5d60SPascal Brand| Standard tests | The [optee_test][optee_test] project. |
1062a0cd5d60SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
1063a0cd5d60SPascal Brand
1064a0cd5d60SPascal Brand*	ARM Juno Board (vexpress-juno), standard.
1065a0cd5d60SPascal Brand*	Foundation Models (vexpress-fvp), standard tests + extended tests,
1066a0cd5d60SPascal Brand	using FVP ARM V8 Foundation Platformr0p0 (platform build 9.5.40)
1067eb00c7b9SPascal Brand*	FSL ls1021a (ls-ls1021atwr), standard.
1068a0cd5d60SPascal Brand*	HiKey (hikey), standard.
1069a0cd5d60SPascal Brand*	MTK8173-EVB (mediatek-mt8173), standard.
1070a0cd5d60SPascal Brand*	QEMU (vexpress-qemu), standard + extended tests.
1071a0cd5d60SPascal Brand*	STM Cannes (stm-cannes), standard + extended tests.
1072a0cd5d60SPascal Brand
1073a0cd5d60SPascal Brand## Known issues
1074a0cd5d60SPascal Brand* Issue(s) open on GitHub
1075a0cd5d60SPascal Brand  * [#40][prld40] BUG_ON() when re-using RPC buffer to tee-supplicant
1076a0cd5d60SPascal Brand  * [#506][pr506]: tee-supplicant panic & ta panic
1077a0cd5d60SPascal Brand
1078a0cd5d60SPascal Brand[github_commits_2_0_0]: https://github.com/OP-TEE/optee_os/compare/1.1.0...2.0.0
1079a0cd5d60SPascal Brand[rpmb_doc]: https://github.com/OP-TEE/optee_os/blob/master/documentation/secure_storage_rpmb.md
1080a0cd5d60SPascal Brand[optee_linuxdriver]: https://github.com/OP-TEE/optee_linuxdriver
1081a0cd5d60SPascal Brand[gendrv_v9]: https://lkml.org/lkml/2016/4/1/205
1082a0cd5d60SPascal Brand[linux_optee]: https://github.com/linaro-swg/linux/tree/optee
1083a0cd5d60SPascal Brand
1084a0cd5d60SPascal Brand
1085c5bbfb4dSPascal Brand# OP-TEE - version 1.1.0
1086c5bbfb4dSPascal Brand
1087c5bbfb4dSPascal Brand
1088c5bbfb4dSPascal Brand## New features
1089c5bbfb4dSPascal Brand
1090c5bbfb4dSPascal Brand* Softfloat library: floating point support is now available in 32bits TA.
1091c5bbfb4dSPascal Brand
1092c5bbfb4dSPascal Brand* Support running 64-bits TA: on ARMv8-A platform, TA can be compiled in
1093c5bbfb4dSPascal Brand  AArch32 and/or in AArch64 in case the core is compiled in AArch64.
1094c5bbfb4dSPascal Brand  An example can be found in HiKey configuration file. Using the following
1095c5bbfb4dSPascal Brand  excerpt code, the user TA libraries are compiled in both AArch32 and
1096c5bbfb4dSPascal Brand  AArch64, and can be found in `out/arm-plat-hikey/export-ta_arm32` and
1097c5bbfb4dSPascal Brand  `out/arm-plat-hikey/export-ta_arm64`
1098c5bbfb4dSPascal Brand
1099c5bbfb4dSPascal Brand```
1100c5bbfb4dSPascal Brand    ta-targets = ta_arm32
1101c5bbfb4dSPascal Brand    ta-targets += ta_arm64
1102c5bbfb4dSPascal Brand```
1103c5bbfb4dSPascal Brand
1104c5bbfb4dSPascal Brand* Concurrent TA support: multiple TA can run in parallel on
1105c5bbfb4dSPascal Brand  several cores.
1106c5bbfb4dSPascal Brand
1107c5bbfb4dSPascal Brand* New tests added in xtest test suite: concurrent TA (xtest 1013),
1108c5bbfb4dSPascal Brand  floating point tests (xtest 1006 and os_test TA) and corruption
1109c5bbfb4dSPascal Brand  file storage (xtest 20000)
1110c5bbfb4dSPascal Brand
1111c5bbfb4dSPascal Brand* [Link][github_commits_1_1_0] to a list of all commits between this and
1112c5bbfb4dSPascal Brand  previous release.
1113c5bbfb4dSPascal Brand
1114c5bbfb4dSPascal Brand
1115c5bbfb4dSPascal Brand## Tested on
1116c5bbfb4dSPascal BrandDefinitions:
1117c5bbfb4dSPascal Brand
1118c5bbfb4dSPascal Brand| Type | Meaning |
1119c5bbfb4dSPascal Brand| ---- | ------- |
1120c5bbfb4dSPascal Brand| Standard tests | The [optee_test][optee_test] project. |
1121c5bbfb4dSPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
1122c5bbfb4dSPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. |
1123c5bbfb4dSPascal Brand
1124c5bbfb4dSPascal Brand*	Foundation Models (vexpress-fvp), standard tests + extended tests,
1125c5bbfb4dSPascal Brand	using FVP ARM V8 Foundation Platformr0p0 (platform build 9.5.40)
1126c5bbfb4dSPascal Brand*	HiKey (hikey), standard + extended tests.
1127c5bbfb4dSPascal Brand*	MT8173 (mediatek), standard tests.
1128c5bbfb4dSPascal Brand*	QEMU (vexpress-qemu), standard + extended tests.
1129c5bbfb4dSPascal Brand*	STM Cannes (stm-cannes), standard + extended tests.
1130c5bbfb4dSPascal Brand
1131c5bbfb4dSPascal Brand## Known issues
1132c5bbfb4dSPascal Brand* Secure Storage is implemented, but note that anti-rollback protection
1133c5bbfb4dSPascal Brand  is not implemented yet.
1134c5bbfb4dSPascal Brand
1135c5bbfb4dSPascal Brand* Issue(s) open on GitHub
1136c5bbfb4dSPascal Brand  * [#40][prld40] BUG_ON() when re-using RPC buffer to tee-supplicant
1137c5bbfb4dSPascal Brand  * [#296][pr296]: Connecting RPMB to the storage APIs.
1138c5bbfb4dSPascal Brand  * [#493][pr493]: setup_juno_optee: unable to find pre-built binaries
1139c5bbfb4dSPascal Brand  * [#506][pr506]: tee-supplicant panic & ta panic
1140c5bbfb4dSPascal Brand
1141c5bbfb4dSPascal Brand[prld40]: https://github.com/OP-TEE/optee_linuxdriver/issues/40
1142c5bbfb4dSPascal Brand[pr506]: https://github.com/OP-TEE/optee_os/issues/506
1143c5bbfb4dSPascal Brand[github_commits_1_1_0]: https://github.com/OP-TEE/optee_os/compare/1.0.1...1.1.0
1144c5bbfb4dSPascal Brand
1145c5bbfb4dSPascal Brand
1146c5bbfb4dSPascal Brand
11478a7ee79dSPascal Brand# OP-TEE - version 1.0.0
11488a7ee79dSPascal Brand
11498a7ee79dSPascal BrandOP-TEE is now maintained by Linaro. Contributors do not need to
11508a7ee79dSPascal Brandsign a CLA anymore, but must follow the rules of the [DCO][DCO]
11518a7ee79dSPascal Brand(Developer Certificate of Origin) instead.
11528a7ee79dSPascal Brand
11538a7ee79dSPascal Brand
11548a7ee79dSPascal Brand## New features
11558a7ee79dSPascal Brand
11568a7ee79dSPascal Brand* Add hardware support for Texas Instruments DRA7xx, ARMv7 (plat-ti)
11578a7ee79dSPascal Brand
11588a7ee79dSPascal Brand* GlobalPlatform™ TEE Internal Core API Specification v1.1,
11598a7ee79dSPascal Brand  including ECC algorithms.
11608a7ee79dSPascal Brand
11618a7ee79dSPascal Brand* Secure Storage: Files stored by the REE are now encrypted. Operations
11628a7ee79dSPascal Brand  are made atomic in order to prevent inconsistencies in case of errors
11638a7ee79dSPascal Brand  during the storage operations. [Slides][LCStorage] describing the
11648a7ee79dSPascal Brand  Secure Storage have been presented at the Linaro Connect SFO15.
11658a7ee79dSPascal Brand
11668a7ee79dSPascal Brand* Change of format of the Trusted Applications: they follow a
11678a7ee79dSPascal Brand  [signed ELF format][elf]
11688a7ee79dSPascal Brand
11698a7ee79dSPascal Brand* Rework thread [synchronization][synchro] in optee_os.
11708a7ee79dSPascal Brand
11718a7ee79dSPascal Brand* Use of ARMv8 native cryptographic support.
11728a7ee79dSPascal Brand
11738a7ee79dSPascal Brand* [OP-TEE/optee_test][optee_test] test suite is released.
11748a7ee79dSPascal Brand
11758a7ee79dSPascal Brand* Introduce [OP-TEE/manifest][manifest] and [OP-TEE/build][build]
11768a7ee79dSPascal Brand  to setup and build QEMU, FVP, HiKey and Mediatek platforms. Setup scripts
11778a7ee79dSPascal Brand  that used to be in optee_os have been removed, except for Juno board.
11788a7ee79dSPascal Brand
117995422146SPascal Brand* [Link][github_commits_1_0_0] to a list of all commits between this and
118095422146SPascal Brand  previous release.
118195422146SPascal Brand
11828a7ee79dSPascal Brand
11838a7ee79dSPascal Brand## Tested on
11848a7ee79dSPascal BrandDefinitions:
11858a7ee79dSPascal Brand
11868a7ee79dSPascal Brand| Type | Meaning |
11878a7ee79dSPascal Brand| ---- | ------- |
11888a7ee79dSPascal Brand| Standard tests | The [optee_test][optee_test] project. |
11898a7ee79dSPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
11908a7ee79dSPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. |
11918a7ee79dSPascal Brand
11928a7ee79dSPascal Brand*	ARM Juno Board (vexpress-juno), standard + extended tests.
11938a7ee79dSPascal Brand*	Foundation Models (vexpress-fvp), standard tests.
11948a7ee79dSPascal Brand*	HiKey (hikey), standard + extended tests.
11958a7ee79dSPascal Brand*	MT8173 (mediatek), standard tests.
11968a7ee79dSPascal Brand*	QEMU (vexpress-qemu), standard + extended tests.
11978a7ee79dSPascal Brand*	STM Cannes (stm-cannes), standard + extended tests.
11988a7ee79dSPascal Brand
119995422146SPascal Brand## Known issues
120095422146SPascal Brand* Secure Storage is implemented, but note that anti-rollback protection
120195422146SPascal Brand  is not implemented yet.
120295422146SPascal Brand
120395422146SPascal Brand* Issue(s) open on GitHub
120495422146SPascal Brand  * [#210][pr210]: libteec.so 32-bit does not communicate well
120595422146SPascal Brand    with 64-bit kernel module
120695422146SPascal Brand  * [#296][pr296]: Connecting RPMB to the storage APIs.
120795422146SPascal Brand  * [#493][pr493]: setup_juno_optee: unable to find pre-built binaries
120895422146SPascal Brand  * [#494][pr494]: HiKey: xtest 7671 fails (1.0.0-rc2)
120995422146SPascal Brand
121095422146SPascal Brand[pr210]: https://github.com/OP-TEE/optee_os/issues/210
121195422146SPascal Brand[pr296]: https://github.com/OP-TEE/optee_os/issues/296
121295422146SPascal Brand[pr493]: https://github.com/OP-TEE/optee_os/issues/493
121395422146SPascal Brand[pr494]: https://github.com/OP-TEE/optee_os/issues/494
121495422146SPascal Brand[github_commits_1_0_0]: https://github.com/OP-TEE/optee_os/compare/0.3.0...1.0.0
12158a7ee79dSPascal Brand[DCO]: https://github.com/OP-TEE/optee_os/blob/master/Notice.md#contributions
12168a7ee79dSPascal Brand[LCStorage]: http://www.slideshare.net/linaroorg/sfo15503-secure-storage-in-optee
12178a7ee79dSPascal Brand[synchro]: https://github.com/OP-TEE/optee_os/blob/master/documentation/optee_design.md#4-thread-handling
12188a7ee79dSPascal Brand[elf]: https://github.com/OP-TEE/optee_os/blob/master/documentation/optee_design.md#format
12198a7ee79dSPascal Brand[optee_test]: https://github.com/OP-TEE/optee_test
12208a7ee79dSPascal Brand[manifest]: https://github.com/OP-TEE/manifest
12218a7ee79dSPascal Brand[build]: https://github.com/OP-TEE/build
12228a7ee79dSPascal Brand
122395422146SPascal Brand
122495422146SPascal Brand
122511d59085SPascal Brand# OP-TEE - version 0.3.0
122611d59085SPascal Brand
122711d59085SPascal Brand## New features
122811d59085SPascal Brand
122911d59085SPascal Brand*   Add hardware support for
123011d59085SPascal Brand	*   Mediatek MT8173 Board, ARMv8-A (plat-mediatek)
123111d59085SPascal Brand	*   Hisilicon HiKey Board, ARMv8-A (plat-hikey)
123211d59085SPascal Brand*   AArch64 build of optee_os is now possible through the configuration `CFG_ARM64_core=y`
123311d59085SPascal Brand*	Secure Storage: Data can be encrypted prior to their storage in the non-secure.
123411d59085SPascal Brand	Build is configured using `CFG_ENC_FS=y`
123511d59085SPascal Brand*	A generic boot scheme can be used. Boot configuration is commonalized. This helps
123611d59085SPascal Brand	new board support. It is applied on plat-hikey, plat-vexpress, plat-mediatek, plat-stm
123711d59085SPascal Brand    and plat-vexpress.
123811d59085SPascal Brand
123911d59085SPascal Brand## Tested on
124011d59085SPascal BrandDefinitions:
124111d59085SPascal Brand
124211d59085SPascal Brand| Type | Meaning |
124311d59085SPascal Brand| ---- | ------- |
124411d59085SPascal Brand| Standard tests | The optee_test project. |
124511d59085SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
124611d59085SPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. |
124711d59085SPascal Brand
124811d59085SPascal Brand*	ARM Juno Board (vexpress-juno), standard tests.
124911d59085SPascal Brand*	Foundation Models (vexpress-fvp), standard tests.
125011d59085SPascal Brand*	HiKey (hikey), standard tests.
125111d59085SPascal Brand*	MT8173 (mediatek), standard tests.
125211d59085SPascal Brand*	QEMU (vexpress-qemu), standard + extended tests.
125311d59085SPascal Brand*	STM Cannes (stm-cannes), standard + extended tests.
125411d59085SPascal Brand
125511d59085SPascal Brand-------------------------------------------
125611d59085SPascal Brand
1257f5117af2SPascal Brand# OP-TEE - version 0.2.0
1258759cc499SJoakim Bech
1259f5117af2SPascal Brand## New features
1260f5117af2SPascal Brand
1261f5117af2SPascal Brand### Linux Driver Refactoring
1262f5117af2SPascal Brand
1263f5117af2SPascal BrandLinux Driver has been refactored. It is now split in two parts:
1264f5117af2SPascal Brand*	optee.ko, the generic Linux driver. It contains all functionality
1265f5117af2SPascal Brand	common to all backends.
1266f5117af2SPascal Brand*	optee_armtz.ko, a specific backend dedicated to the TrustZone optee.
1267f5117af2SPascal Brand	It depends on optee.ko.
1268f5117af2SPascal Brand
1269f5117af2SPascal BrandLoading the TrustZone optee linux driver module is now performed using
1270f5117af2SPascal Brand
1271f5117af2SPascal Brand    modprobe optee_armtz
1272f5117af2SPascal Brand
1273f5117af2SPascal BrandThanks to the dependency between the generic and the backend modules, optee.ko is then automatically loaded.
1274f5117af2SPascal Brand
1275f5117af2SPascal Brand### Misc new features
1276f5117af2SPascal Brand* support PL310 lock down at TEE boot
1277f5117af2SPascal Brand* add 64bits support (division / print)
1278f5117af2SPascal Brand
1279f5117af2SPascal Brand## Tested on
1280f5117af2SPascal BrandDefinitions:
1281f5117af2SPascal Brand
1282f5117af2SPascal Brand| Type | Meaning |
1283f5117af2SPascal Brand| ---- | ------- |
1284f5117af2SPascal Brand| Standard tests | The optee_test project. |
1285f5117af2SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. |
1286f5117af2SPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. |
1287f5117af2SPascal Brand
1288f5117af2SPascal Brand*   ARM Juno Board (vexpress-juno), standard tests + extended tests.
1289f5117af2SPascal Brand
1290f5117af2SPascal Brand*   Foundation Models (vexpress-fvp), standard + extended tests.
1291f5117af2SPascal Brand
1292f5117af2SPascal Brand*   QEMU (vexpress-qemu), standard + extended tests.
1293f5117af2SPascal Brand
1294f5117af2SPascal Brand*   STM Cannes (stm-cannes), standard + extended tests.
1295f5117af2SPascal Brand
1296f5117af2SPascal Brand
129728fcee17SJerome Forissier## Issues resolved since last release
1298f5117af2SPascal Brand*	Fix user TA trace issue, in order each TA is able to select its own trace level
1299f5117af2SPascal Brand
1300f5117af2SPascal Brand
1301f5117af2SPascal Brand-------------------------------------------
1302f5117af2SPascal Brand# OP-TEE - version 0.1.0
1303f5117af2SPascal Brand
1304f5117af2SPascal Brand## New features
1305759cc499SJoakim BechBelow is a summary of the most important features added, but at the end you will
1306759cc499SJoakim Bechfind a link that present you all commits between the current and previous
1307759cc499SJoakim Bechrelease tag.
1308759cc499SJoakim Bech
1309759cc499SJoakim Bech*   GlobalPlatform Client API v1.0 support.
1310759cc499SJoakim Bech
1311759cc499SJoakim Bech*   GlobalPlatform Internal API v1.0 support.
1312759cc499SJoakim Bech
1313759cc499SJoakim Bech*   GlobalPlatform Secure Elements v1.0 support.
1314759cc499SJoakim Bech
1315759cc499SJoakim Bech*   Add hardware support for
1316759cc499SJoakim Bech
1317759cc499SJoakim Bech    *   Allwinner A80, ARMv7-A.
1318759cc499SJoakim Bech
1319759cc499SJoakim Bech    *   ARM Juno Board, ARMv8-A.
1320759cc499SJoakim Bech
1321759cc499SJoakim Bech    *   Foundation Models, ARMv8-A.
1322759cc499SJoakim Bech
1323759cc499SJoakim Bech    *   Fast Models, ARMv8-A.
1324759cc499SJoakim Bech
1325759cc499SJoakim Bech    *   QEMU, ARMv7-A.
1326759cc499SJoakim Bech
1327759cc499SJoakim Bech    *   STM Cannes, ARMv7-A.
1328759cc499SJoakim Bech
1329759cc499SJoakim Bech    *   STM Orly2, ARMv7-A.
1330759cc499SJoakim Bech
1331759cc499SJoakim Bech*   Add LibTomCrypt as the default software cryptographic library.
1332759cc499SJoakim Bech
1333759cc499SJoakim Bech*   Add cryptographic abstraction layer in on secure side to ease the use of
1334759cc499SJoakim Bech    other cryptographic software libraries or adding support for hardware
1335759cc499SJoakim Bech    acceleration.
1336759cc499SJoakim Bech
1337759cc499SJoakim Bech*   Extended cryptographic API with support for HKDF, Concat KDF and PBKDF2.
1338759cc499SJoakim Bech
1339759cc499SJoakim Bech*   SHA-1 and SHA-256 ARMv8-A crypto extension implementation.
1340759cc499SJoakim Bech
1341759cc499SJoakim Bech*   Enabled paging support in OP-TEE OS.
1342759cc499SJoakim Bech
1343759cc499SJoakim Bech*   Add support for xtest (both standard and extended) in QEMU and FVP setup
1344759cc499SJoakim Bech    scripts.
1345759cc499SJoakim Bech
1346759cc499SJoakim Bech*   Add documentation for the OS design, cryptographic abstraction layer, secure
1347759cc499SJoakim Bech    elements design, the build system, GitHub usage, key derivation extensions,
1348759cc499SJoakim Bech    ARM-Trusted Firmware usage within OP-TEE and GlobalPlatform usage within
1349759cc499SJoakim Bech    OP-TEE.
1350759cc499SJoakim Bech
1351759cc499SJoakim Bech*   Integrate support for Travis CI.
1352759cc499SJoakim Bech
1353759cc499SJoakim Bech*   [Link][github_commits_0_1_0] to a list of all commits between this and
1354759cc499SJoakim Bech    previous release.
1355759cc499SJoakim Bech
1356759cc499SJoakim Bech
1357f5117af2SPascal Brand## Tested on
1358759cc499SJoakim BechDefinitions:
1359759cc499SJoakim Bech
1360759cc499SJoakim Bech| Type | Meaning |
1361759cc499SJoakim Bech| ---- | ------- |
1362759cc499SJoakim Bech| Standard tests | The optee_test project. |
1363759cc499SJoakim Bech| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.0.0. |
1364759cc499SJoakim Bech| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. |
1365759cc499SJoakim Bech
1366759cc499SJoakim Bech*   Allwinner A80 (plat-sunxi), hello world test.
1367759cc499SJoakim Bech
1368759cc499SJoakim Bech*   ARM Juno Board (vexpress-juno), standard tests.
1369759cc499SJoakim Bech
1370759cc499SJoakim Bech*   Foundation Models (plat-vexpress-fvp), standard + extended tests
1371759cc499SJoakim Bech
1372759cc499SJoakim Bech*   QEMU (plat-vexpress-qemu), standard + extended tests (and Secure Elements
1373759cc499SJoakim Bech    tested separately).
1374759cc499SJoakim Bech
1375759cc499SJoakim Bech*   STM Cannes (plat-stm-cannes), standard + extended tests.
1376759cc499SJoakim Bech
1377759cc499SJoakim Bech
137828fcee17SJerome Forissier## Issues resolved since last release
1379759cc499SJoakim BechN/A since this is the first release tag on OP-TEE.
1380759cc499SJoakim Bech
1381759cc499SJoakim Bech
1382f5117af2SPascal Brand## Known issues
1383759cc499SJoakim Bech*   Storage is implemented, but not "Secure storage", meaning that a client
1384759cc499SJoakim Bech    needs to do encrypt files on their own before storing the files.
1385759cc499SJoakim Bech
1386759cc499SJoakim Bech*   Issue(s) open on GitHub
1387759cc499SJoakim Bech    *   [#95][pr95]: An error about building the test code of libtomcrypt.
1388759cc499SJoakim Bech
1389759cc499SJoakim Bech    *   [#149][pr149]: when testing optee os with arm trusted firmware (I
1390759cc499SJoakim Bech	utilized optee os tee.bin as bl32 image) on juno platform, I got an
1391759cc499SJoakim Bech        error.
1392759cc499SJoakim Bech
1393759cc499SJoakim Bech    *   [#161][pr161]: tee_svc_cryp.c lacks accessibility checks on
1394759cc499SJoakim Bech        user-supplied TEE_Attributes.
1395759cc499SJoakim Bech
1396759cc499SJoakim Bech[hello_world]: https://github.com/jenswi-linaro/lcu14_optee_hello_world
1397759cc499SJoakim Bech[github_commits_0_1_0]: https://github.com/OP-TEE/optee_os/compare/b01047730e77127c23a36591643eeb8bb0487d68...999e4a6c0f64d3177fd3d0db234107b6fb860884
1398759cc499SJoakim Bech[pr95]: https://github.com/OP-TEE/optee_os/issues/95
1399759cc499SJoakim Bech[pr149]: https://github.com/OP-TEE/optee_os/issues/149
1400759cc499SJoakim Bech[pr161]: https://github.com/OP-TEE/optee_os/issues/161
1401759cc499SJoakim Bech
14027583c59eSCedric Chaumont*   Global Platform Device Internal Core API v1.1
14037583c59eSCedric Chaumont    *   [#230][pr230]: Persistent object corruption support (TEE_ERROR_CORRUPT_OBJECT/_2)
14047583c59eSCedric Chaumont    *   [#230][pr230]: Persistent object access support (TEE_ERROR_STORAGE_NOT_AVAILABLE/_2)
1405