Contributing Process ==================== Contributions to the TF-M project need to follow the process below. .. Note:: Please contact `TF-M mailing list `_ for any question. - It is recommended to subscribe to `TF-M mailing list `_ via `this page `_. - Refer to the `Roadmap `_ or send a mail to the `TF-M mailing list `_ to get the latest status and plan of TF-M. - Follow :doc:`Design Proposal Guideline ` to propose your design. - Follow guidelines below to prepare the patch: - Clone the TF-M code on your own machine from `TF-M git repository `_. - Follow the :doc:`TF-M getting started `, :doc:`Build Instructions ` :doc:`Coding Guide ` for the TF-M project. - Make your changes in logical chunks to help reviewers. Each commit should be a separate review and either work properly or be squashed after the review and before merging. - Follow :doc:`Documentation Contribution Guidelines ` to update documentation in ``docs`` folder if needed. - Test your changes and add details to the commit description. - The code is accepted under :doc:`Developer Certificate of Origin (DCO) `. Use ``git commit -s`` to add a ``Signed-off-by`` trailer at the end of the commit log message. See `git-commit `_ for details. - Add a `Change-Id `_ to the commit message, which can be generated any way you like (e.g. from the SHA of the commit). It is suggested to clone repositories with commit-msg hook. The commit-msg hook attaches Change-Id automatically. Take `trusted-firmware-m `_ as an example. - Submit your patch for review. Refer to `Uploading Changes `_ for details of uploading patch. - Add relevant :doc:`code owner(s) ` for reviewing the patch. - You may be asked to provide further details or make additional changes. - You can discuss further with code owner(s) and maintainer(s) directly via `TF-M mailing list `_ if necessary. - Click ``Allow-CI +1`` button on Gerrit page to run CI to validate your patch. Your patch shall pass CI successfully before being merged. Code owner(s) and maintainer(s) may ask for additional test. - Once the change is approved by code owners, the patch will be merged by the maintainer. .. _mailing_list: tf-m@lists.trustedfirmware.org -------------- *Copyright (c) 2017-2022, Arm Limited. All rights reserved.*