diff --git a/makefiles/lint/doc8/doc8.ini b/makefiles/lint/doc8/doc8.ini
new file mode 100644
index 0000000..fd87fdc
--- /dev/null
+++ b/makefiles/lint/doc8/doc8.ini
@@ -0,0 +1,69 @@
+[doc8]
+
+## -----------------------------------------------------------------------
+# $ doc8  -h
+# 
+# usage: doc8 [-h] [--config path] [--allow-long-titles] [--ignore code]
+#             [--no-sphinx] [--ignore-path path] [--ignore-path-errors path]
+#             [--default-extension extension] [--file-encoding encoding]
+#             [--max-line-length int] [-e extension] [-v] [--version]
+#             [path [path ...]]
+# 
+# Check documentation for simple style requirements.
+# 
+# What is checked:
+#     - invalid RST format - D000
+#     - lines should not be longer than 79 characters - D001
+#       - RST exception: line with no whitespace except in the beginning
+#       - RST exception: lines with http or https urls
+#       - RST exception: literal blocks
+#       - RST exception: rst target directives
+#     - no trailing whitespace - D002
+#     - no tabulation for indentation - D003
+#     - no carriage returns (use unix newlines) - D004
+#     - no newline at end of file - D005
+# 
+# positional arguments:
+#   path                  Path to scan for doc files (default: current
+#                         directory).
+# 
+# optional arguments:
+#   -h, --help            show this help message and exit
+#   --config path         user config file location (default: .config/doc8.ini, doc8.ini, tox.ini,
+#                         pep8.ini, setup.cfg).
+#   --allow-long-titles   allow long section titles (default: false).
+#   --ignore code         ignore the given error code(s).
+#   --no-sphinx           do not ignore sphinx specific false positives.
+#   --ignore-path path    ignore the given directory or file (globs are
+#                         supported).
+#   --ignore-path-errors path
+#                         ignore the given specific errors in the provided file.
+#   --default-extension extension
+#                         default file extension to use when a file is found
+#                         without a file extension.
+#   --file-encoding encoding
+#                         set input files text encoding
+#   --max-line-length int
+#                         maximum allowed line length (default: 79).
+#   -e extension, --extension extension
+#                         check file extensions of the given type (default:
+#                         .rst, .txt).
+#   -q, --quiet           only print violations
+#   -v, --verbose         run in verbose mode.
+#   --version             show the version and exit.
+## -----------------------------------------------------------------------
+
+# verbose=1
+    
+extension       = rst, txt
+ignore-path     = .venv, */.venv
+
+# ignore-path-errors=/tmp/other_thing.rst;D001;D002
+# voltha-helm-charts/voltha-infra/templates/NOTES.txt:12: D001 Line too long
+
+max-line-length = 120
+
+# [SEE ALSO]
+# -----------------------------------------------------------------------
+# https://doc8.readthedocs.io/en/latest/readme.html
+# -----------------------------------------------------------------------
