blob: 761f52fb1a11373946e8ba85e2f6d601061995c3 [file] [log] [blame]
Galanakis, Minos41f85972019-09-30 15:56:40 +01001Contributing
2============
Gyorgy Szingdb9783c2019-04-17 21:08:48 +02003
Ashutosh Singh429ceec2019-05-01 16:14:10 +01004Contributions to the TF-M project need to follow the process below.
Gyorgy Szingdb9783c2019-04-17 21:08:48 +02005
Ashutosh Singh429ceec2019-05-01 16:14:10 +01006.. Note::
Gyorgy Szingdb9783c2019-04-17 21:08:48 +02007
Minos Galanakise4094012020-06-12 14:25:34 +01008 Please contact :doc:`maintainers </docs/contributing/maintainers>` for any
Galanakis, Minos0c1ad782019-11-08 11:28:40 +00009 questions.
Ashutosh Singh429ceec2019-05-01 16:14:10 +010010
11- Subscribe to `TF-M development
12 <https://lists.trustedfirmware.org/mailman/listinfo/tf-m>`_ if not subscribed
13 already.
14- Refer to the `Roadmap
15 <https://developer.trustedfirmware.org/w/tf_m/planning>`_ or send a mail to
16 the tf-m@lists.trustedfirmware.org to check if this work is already
17 planned/progresses elsewhere.
18- Create a task in `Phabricator
19 <https://developer.trustedfirmware.org/maniphest>`_, put as many details as
20 possible in the description. Add 'Trusted Firmware M' in the 'Tags' field.
21- For non-trivial changes, need to follow the design proposal process
Minos Galanakise4094012020-06-12 14:25:34 +010022 :doc:`Design Proposal Process </docs/contributing/tfm_design_proposal_process>`
Ashutosh Singh429ceec2019-05-01 16:14:10 +010023 for the TF-M project.
24- After the design has been accepted by the maintainer(s), a corresponding
25 patch should be posted; follow guidelines below:
26
27 - Clone the TF-M code on your own machine from `TF-M git repository
Minos Galanakis0f39fa52020-06-08 16:53:53 +010028 <https://git.trustedfirmware.org/TF-M/trusted-firmware-m.git>`_.
Minos Galanakise4094012020-06-12 14:25:34 +010029 - Follow the :doc:`SW Requirements </docs/getting_started/tfm_sw_requirement>`,
30 :doc:`Build Instructions </docs/getting_started/tfm_build_instruction>` and
31 :doc:`Coding Guide </docs/contributing/coding_guide>` for the TF-M project.
Ashutosh Singh429ceec2019-05-01 16:14:10 +010032 - Make your changes in logical chunks to help reviewers. Each commit should
33 be a separate review and either work properly or be squashed after the
34 review and before merging.
35 - Update documentation in docs/ folder if needed.
36 - Test your changes and add details to the commit description.
Minos Galanakise4094012020-06-12 14:25:34 +010037 - The code is accepted under :doc:`DCO </docs/contributing/dco>`, Developer
Galanakis, Minos0c1ad782019-11-08 11:28:40 +000038 Certificate of Origin, so you must add following fields to your
39 commit description:
Ashutosh Singh429ceec2019-05-01 16:14:10 +010040
41 .. code-block:: text
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020042
43 Author: Full Name <email address>
44 Signed-off-by: Full Name <email address>
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020045
Ashutosh Singh429ceec2019-05-01 16:14:10 +010046 .. Note::
47
48 Sign off authority needs to adhere to the [DCO](./dco.txt) rules.
49
50 - You may add other fields in the commit message. Need to add the Task ID link
51 in the comment for the commit.
52 - Submit your patch for review.
53
54 .. code-block:: shell
55
Minos Galanakis0f39fa52020-06-08 16:53:53 +010056 git push ssh://review.trustedfirmware.org:29418/TF-M/trusted-firmware-m.git HEAD:refs/for/master
Ashutosh Singh429ceec2019-05-01 16:14:10 +010057
Minos Galanakise4094012020-06-12 14:25:34 +010058- Add relevant :doc:`maintainers </docs/contributing/maintainers>` for reviewing
Galanakis, Minos0c1ad782019-11-08 11:28:40 +000059 the patch.
Ashutosh Singh429ceec2019-05-01 16:14:10 +010060- You may be asked to provide further details or make additional changes.
61- You can discuss further with maintainer(s) by directly over email if
62 necessary.
63- Once the change is approved by maintainers, the patch will be merged by the
64 maintainer.
65- Mark the task as 'resolved' after patch is merged.
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020066
67--------------
68
Minos Galanakis0f39fa52020-06-08 16:53:53 +010069*Copyright (c) 2017-2020, Arm Limited. All rights reserved.*