Doc: Update contribution guide

Clarification added for the review process for design and code
contributions.
Steps added to explain how to create a ticket and patch.

Change-Id: I1402c58f65629b2dffa159b150c1a949af29c828
Signed-off-by: Ashutosh Singh <ashutosh.singh@arm.com>
diff --git a/docs/contributing.rst b/docs/contributing.rst
index c58334b..8cc9e40 100644
--- a/docs/contributing.rst
+++ b/docs/contributing.rst
@@ -1,41 +1,65 @@
 Contributing
 ============
 
-Contributions to TF-M project need to follow the process below.
+Contributions to the TF-M project need to follow the process below.
 
-``Note`` Please contact :doc:`/docs/maintainers` for any questions.
+.. Note::
 
--  Create an issue in http://issues.trustedfirmware.org
-   to keep others informed about your ongoing work.
--  If it is a major change then please discuss the design with
-   maintainers.
--  Clone the TF-M code on your own machine from
-   http://git.trustedfirmware.org/trusted-firmware-m.git
--  Follow the :doc:`Coding Guide </docs/coding_guide>` for the TF-M
-   project.
--  Make your changes in logical chunks to help reviewers.
--  Update relevant documentation.
--  Test your changes and add details to the commit description.
--  Add the issue number and details to commit description as well.
--  The code is accepted under :doc:`DCO </docs/dco>`, Developer
-   Certificate of Origin, so you must add following fields to your commit
-   description.::
+   Please contact :doc:`maintainers </docs/maintainers>` for any questions.
+
+- Subscribe to `TF-M development
+  <https://lists.trustedfirmware.org/mailman/listinfo/tf-m>`_ if not subscribed
+  already.
+- Refer to the `Roadmap
+  <https://developer.trustedfirmware.org/w/tf_m/planning>`_ or send a mail to
+  the tf-m@lists.trustedfirmware.org to check if this work is already
+  planned/progresses elsewhere.
+- Create a task in `Phabricator
+  <https://developer.trustedfirmware.org/maniphest>`_, put as many details as
+  possible in the description. Add 'Trusted Firmware M' in the 'Tags' field.
+- For non-trivial changes, need to follow the design proposal process
+  :doc:`Design Proposal Process </docs/processes/tfm_design_proposal_process>`
+  for the TF-M project.
+- After the design has been accepted by the maintainer(s), a corresponding
+  patch should be posted; follow guidelines below:
+
+  - Clone the TF-M code on your own machine from `TF-M git repository
+    <http://git.trustedfirmware.org/trusted-firmware-m.git>`_.
+  - Follow the :doc:`SW Requirements </docs/user_guides/tfm_sw_requirement>`,
+    :doc:`Build Instructions </docs/user_guides/tfm_build_instruction>` and
+    :doc:`Coding Guide </docs/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.
+  - Update documentation in docs/ folder if needed.
+  - Test your changes and add details to the commit description.
+  - The code is accepted under :doc:`DCO </docs/dco>`, Developer Certificate of
+    Origin, so you must add following fields to your commit description:
+
+    .. code-block:: text
 
        Author: Full Name <email address>
        Signed-off-by: Full Name <email address>
-      
-       Note: Sign off authority needs to adhere to the [DCO](./dco.txt) rules.
 
--  You may add other fields in the commit message.
--  Submit your patch for review at
-   http://review.trustedfirmware.org
--  Maintainers will be notified and they will start review process.
--  You may be asked to provide further details or make additional
-   changes.
--  You can discuss further with maintainer(s) offline if necessary.
--  | Once the change is approved by maintainers, the patch can be
-     submitted
-   | either by maintainer or patch owner.
+    .. Note::
+
+       Sign off authority needs to adhere to the [DCO](./dco.txt) rules.
+
+  - You may add other fields in the commit message. Need to add the Task ID link
+    in the comment for the commit.
+  - Submit your patch for review.
+
+    .. code-block:: shell
+
+       git push ssh://review.trustedfirmware.org:29418/trusted-firmware-m.git HEAD:refs/for/master
+
+- Add relevant :doc:`maintainers </docs/maintainers>` for reviewing the patch.
+- You may be asked to provide further details or make additional changes.
+- You can discuss further with maintainer(s) by directly over email if
+  necessary.
+- Once the change is approved by maintainers, the patch will be merged by the
+  maintainer.
+- Mark the task as 'resolved' after patch is merged.
 
 --------------