Add tf_fuzz tool

This is fully derived from tf-m repo.

Signed-off-by: Karl Zhang <karl.zhang@arm.com>
Change-Id: I8d35e70eda9081af66d8fa3f3cb4beb1d953060e
diff --git a/tf_fuzz/docs/parser_dir.rst b/tf_fuzz/docs/parser_dir.rst
new file mode 100644
index 0000000..ddbca5a
--- /dev/null
+++ b/tf_fuzz/docs/parser_dir.rst
@@ -0,0 +1,27 @@
+########################
+'parser'-directory guide
+########################
+
+************
+Introduction
+************
+
+Users' test-template files are parsed using a Lex/YACC grammar, to make the
+test-template language easily extensible.  Much of the actual work is done in
+helper functions, but the Lex/YACC grammar manages the process.
+
+***********************************************
+``.../tools/tf_fuzz/parser`` directory contents
+***********************************************
+.. code-block:: bash
+
+    tf_fuzz_grammar.l  tf_fuzz_grammar.y
+
+This directory contains the Lex and YACC grammars for parsing the TF-Fuzz
+command "language," if it can be called that.  The
+``tf_fuzz_grammar.tab.cpp/.hpp`` files generated also form the executive for
+the entire parsing process.
+
+--------------
+
+*Copyright (c) 2020, Arm Limited. All rights reserved.*