aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorLouis Mayencourt <louis.mayencourt@arm.com>2020-03-09 16:43:25 +0000
committerLouis Mayencourt <louis.mayencourt@arm.com>2020-03-11 11:16:27 +0000
commit6a7b3ce7edcdceb664c56f19280d14b8f442cba4 (patch)
tree8732aecbbf928ecffa0cb990fa67c6901d7ecd5a /docs
parente31026776b0c5676f7d4a4c9c9fdf7ee61d9d6fc (diff)
downloadplatform_external_arm-trusted-firmware-6a7b3ce7edcdceb664c56f19280d14b8f442cba4.tar.gz
platform_external_arm-trusted-firmware-6a7b3ce7edcdceb664c56f19280d14b8f442cba4.tar.bz2
platform_external_arm-trusted-firmware-6a7b3ce7edcdceb664c56f19280d14b8f442cba4.zip
fconf: Add namespace guidance inside documentation
Change-Id: I50707d1836c7f5e4ef162c00256624a1f278baef Signed-off-by: Louis Mayencourt <louis.mayencourt@arm.com>
Diffstat (limited to 'docs')
-rw-r--r--docs/components/fconf.rst27
1 files changed, 27 insertions, 0 deletions
diff --git a/docs/components/fconf.rst b/docs/components/fconf.rst
index cec3cebe4..0e0f0756f 100644
--- a/docs/components/fconf.rst
+++ b/docs/components/fconf.rst
@@ -83,3 +83,30 @@ This function will call all the ``populate()`` callbacks which have been
registered with ``FCONF_REGISTER_POPULATOR()``.
.. uml:: ../resources/diagrams/plantuml/fconf_bl2_populate.puml
+
+Namespace guidance
+~~~~~~~~~~~~~~~~~~
+
+As mentioned above, properties are logically grouped around namespaces and
+sub-namespaces. The following concepts should be considered when adding new
+properties/namespaces.
+The framework differentiates two types of properties:
+ - Properties used inside common code.
+ - Properties used inside platform specific code.
+
+The first category applies to properties being part of the firmware and shared
+across multiple platforms. They should be globally accessible and defined
+inside the ``lib/fconf`` directory. The namespace must be chosen to reflect the
+feature/data abstracted.
+Example:
+ - |TBBR| related properties: tbbr.cot.bl2_id
+ - Dynamic configuration information: dyn_cfg.dtb_info.hw_config_id
+
+The second category should represent the majority of the properties defined
+within the framework: Platform specific properties. They must be accessed only
+within the platform API and are defined only inside the platform scope. The
+namespace must contain the platform name under which the properties defined
+belong.
+Example:
+ - Arm io framework: arm.io_policies.bl31_id
+