diff --git a/makefiles/lint/doc8/excl.mk b/makefiles/lint/doc8/excl.mk
index 930d5f9..cc68ab0 100644
--- a/makefiles/lint/doc8/excl.mk
+++ b/makefiles/lint/doc8/excl.mk
@@ -1,6 +1,6 @@
 # -*- makefile -*-
 # -----------------------------------------------------------------------
-# Copyright 2017-2024 Open Networking Foundation (ONF) and the ONF Contributors
+# Copyright 2017-2024 Open Networking Foundation Contributors
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -14,26 +14,45 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 # -----------------------------------------------------------------------
+# SPDX-FileCopyrightText: 2017-2024 Open Networking Foundation Contributors
+# SPDX-License-Identifier: Apache-2.0
+# -----------------------------------------------------------------------
+# Intent: This makefile maintains file and directory exclusion lists
+#         for doc8 linting.
+# -----------------------------------------------------------------------
 
 $(if $(DEBUG),$(warning ENTER))
 
 ## -----------------------------------------------------------------------
 ## -----------------------------------------------------------------------
 
-## excl := $(wildcar */*/.git)
+lint-doc8-excl-raw += '*/.git'
 lint-doc8-excl-raw += '$(venv-name)'
 lint-doc8-excl-raw += '*/$(venv-name)'
+lint-doc8-excl-raw += './lf/onf-make'
+lint-doc8-excl-raw += 'LICENSES/'
+
+# Should we filter generated content as redundant ?
+# Considering _build will be published and consumed.
 $(if $(BUILDDIR),\
   $(excl lint-doc8-excl-raw += '$(BUILDDIR)'))
 
+# -----------------------------------------------------------------------
 # YUCK! -- overhead
 #   o Submodule(s) use individual/variant virtualenv install paths.
 #   o Exclude special snowflakes to enable library makefile use.
 #   o All can use virtualenv.mk for consistent names and cleanup
 #   o [TODO] Ignore submodules, individual repos should check their sources.
+# -----------------------------------------------------------------------
+lint-doc8-excl-raw += '*/venv_*'#   # '*/venv_cord'
+lint-doc8-excl-raw += '*/*_venv'#   # '*/vst_venv'
 
-lint-doc8-excl-raw += '*/venv_cord'
-
+## -----------------------------------------------------------------------
+## repo:voltha-docs exclusions
+## Migrate into one of:
+##   makefiles/local/lint/doc8/doc8.ini
+##   makefiles/local/lint/doc8/excl.mk
+## -----------------------------------------------------------------------
 lint-doc8-excl-raw += './cord-tester'
 lint-doc8-excl-raw += './repos/cord-tester'
 
diff --git a/makefiles/lint/doc8/include.mk b/makefiles/lint/doc8/include.mk
index 272479f..affed5f 100644
--- a/makefiles/lint/doc8/include.mk
+++ b/makefiles/lint/doc8/include.mk
@@ -36,7 +36,7 @@
 
 ## -----------------------------------------------------------------------
 ## -----------------------------------------------------------------------
-include $(MAKEDIR)/lint/doc8/excl.mk
+include $(legacy-mk)/lint/doc8/excl.mk
 
 ifdef lint-doc8-excl
   lint-doc8-excl-args += $(addprefix --ignore-path$(space),$(lint-doc8-excl))
