Soby Mathew | 6e93eef | 2018-09-26 11:17:23 +0100 | [diff] [blame] | 1 | TF-A Platform Compatibility Policy |
Sandrine Bailleux | f3cacad | 2019-02-08 15:26:36 +0100 | [diff] [blame] | 2 | ================================== |
Soby Mathew | 6e93eef | 2018-09-26 11:17:23 +0100 | [diff] [blame] | 3 | |
| 4 | |
| 5 | .. section-numbering:: |
| 6 | :suffix: . |
| 7 | |
| 8 | .. contents:: |
| 9 | |
| 10 | -------------- |
| 11 | |
| 12 | Introduction |
| 13 | ------------ |
| 14 | |
| 15 | This document clarifies the project's policy around compatibility for upstream |
| 16 | platforms. |
| 17 | |
| 18 | Platform compatibility policy |
| 19 | ----------------------------- |
| 20 | |
| 21 | Platform compatibility is mainly affected by changes to Platform APIs (as |
| 22 | documented in the `Porting Guide`_), driver APIs (like the GICv3 drivers) or |
| 23 | library interfaces (like xlat_table library). The project will try to maintain |
| 24 | compatibility for upstream platforms. Due to evolving requirements and |
| 25 | enhancements, there might be changes affecting platform compatibility which |
| 26 | means the previous interface needs to be deprecated and a new interface |
| 27 | introduced to replace it. In case the migration to the new interface is trivial, |
| 28 | the contributor of the change is expected to make good effort to migrate the |
| 29 | upstream platforms to the new interface. |
| 30 | |
| 31 | The `Release information`_ documents the deprecated interfaces and the intended |
| 32 | release after which it will be removed. When an interface is deprecated, the |
| 33 | page must be updated to indicate the release after which the interface will be |
| 34 | removed. This must be at least 1 full release cycle in future. For non-trivial |
| 35 | interface changes, a `tf-issue`_ should be posted to notify platforms that they |
| 36 | should migrate away from the deprecated interfaces. Platforms are expected to |
| 37 | migrate before the removal of the deprecated interface. |
| 38 | |
| 39 | -------------- |
| 40 | |
| 41 | *Copyright (c) 2018, Arm Limited and Contributors. All rights reserved.* |
| 42 | |
| 43 | .. _Porting Guide: ./porting-guide.rst |
Paul Beesley | dd4e9a7 | 2019-02-08 16:43:05 +0000 | [diff] [blame] | 44 | .. _Release information: https://github.com/ARM-software/arm-trusted-firmware/wiki/TF-A-Release-information#removal-of-deprecated-interfaces |
Soby Mathew | fad365d | 2018-10-02 14:01:03 +0100 | [diff] [blame] | 45 | .. _tf-issue: https://github.com/ARM-software/tf-issues/issues |