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