DOC: update documentation.

Add documentation covering:
  - developer information about architecture
  - project structure and building
  - project overview and service descriptions
  - the portability model for supporting hardware

Signed-off-by: Julian Hall <julian.hall@arm.com>
Co-Authored-By: Gyorgy Szing <gyorgy.szing@gmail.com>
Change-Id: I8bf9c01a66350719d82a7ca2bc1c78a8ab17978d
diff --git a/docs/project/glossary.rst b/docs/project/glossary.rst
new file mode 100644
index 0000000..da907b4
--- /dev/null
+++ b/docs/project/glossary.rst
@@ -0,0 +1,35 @@
+Glossary
+========
+
+This glossary provides definitions for terms and abbreviations used in the Trusted Services documentation.
+
+You can find additional definitions in the `Arm Glossary`_.
+
+.. glossary::
+    :sorted:
+
+    TF-A
+        Trusted Firmware-A
+
+    TS
+        Trusted Services
+
+    C identifier like string
+        A name which uses only alphanumeric characters and underscores and the first character is not a digit.
+
+    LCS
+        `Linux Coding Style`_
+
+    ACLE
+        `Arm C language extensions`_
+
+
+--------------
+
+.. _`Arm Glossary`: https://developer.arm.com/support/arm-glossary
+.. _`Linux Coding Style`: https://www.kernel.org/doc/html/v4.10/process/coding-style.html
+.. _`Arm C language extensions`: https://developer.arm.com/documentation/101028/0012/?lang=en
+
+*Copyright (c) 2020-2021, Arm Limited and Contributors. All rights reserved.*
+
+SPDX-License-Identifier: BSD-3-Clause