diff --git a/makefiles/lint/doc8/README.md b/makefiles/lint/doc8/README.md
new file mode 100644
index 0000000..0596967
--- /dev/null
+++ b/makefiles/lint/doc8/README.md
@@ -0,0 +1,17 @@
+doc8
+====
+
+The doc8 tool can be configured by modifying doc8.ini files.
+Common config changes can be added in repo:onf-make/makefiles/lint/doc8.
+per-repository changes can be added in lf/local/makefiles/lint/doc8/doc8.ini.
+
+The makefile target lint-doc8 will merge these two config files into
+a single config prior to invoking the doc8 tool.
+
+Common exclusions are added in repo:onf-make/makefiles/lint/doc8/doc.ini.
+
+[TODO]
+  - Deploy repo:onf-make to all voltha repositories.
+  - Create lf/local/lib/makefiles/doc8/doc.ini and configure.
+  - Once all repositories have been updated delete lint/doc8/excl.mk
+
diff --git a/makefiles/lint/doc8/doc8.ini b/makefiles/lint/doc8/doc8.ini
index 3fe7969..fd87fdc 100644
--- a/makefiles/lint/doc8/doc8.ini
+++ b/makefiles/lint/doc8/doc8.ini
@@ -1,26 +1,5 @@
 [doc8]
 
-# -----------------------------------------------------------------------
-# 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.
-# You may obtain a copy of the License at
-#
-# http:#www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# 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:
-# -----------------------------------------------------------------------
-    
 ## -----------------------------------------------------------------------
 # $ doc8  -h
 # 
diff --git a/makefiles/lint/doc8/doc8.mk b/makefiles/lint/doc8/doc8.mk
index 9bb71fc..2c499ac 100644
--- a/makefiles/lint/doc8/doc8.mk
+++ b/makefiles/lint/doc8/doc8.mk
@@ -1,12 +1,12 @@
 # -*- makefile -*-
 # -----------------------------------------------------------------------
-# Copyright 2017-2024 Open Networking Foundation Contributors
+# Copyright 2017-2022 Open Networking Foundation
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at
 #
-# http:#www.apache.org/licenses/LICENSE-2.0
+# http://www.apache.org/licenses/LICENSE-2.0
 #
 # Unless required by applicable law or agreed to in writing, software
 # distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,11 +14,6 @@
 # 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:
-# -----------------------------------------------------------------------
 
 $(if $(DEBUG),$(eval LINT_DOC8_DEBUG=1))
 
@@ -37,7 +32,9 @@
 # use only one.  Repos have more special exclusions so pass onf-make
 # doc8 config as command line args so local makefiles to use --config
 # -----------------------------------------------------------------------
-# lint-doc8-args += --config $(ONF_MAKEDIR)/lint/doc8/doc8.ini
+ifdef USE_DOC8_INI
+  lint-doc8-args += --config $(ONF_MAKEDIR)/lint/doc8/doc8.ini
+endif
 
 ## -----------------------------------------------------------------------
 ## -----------------------------------------------------------------------
@@ -72,7 +69,9 @@
 ## -----------------------------------------------------------------------
 ## Usage: make lint-doc8 LINT_DOC8_DEBUG=1
 ## -----------------------------------------------------------------------
-lint-doc8: lint-doc8-cmd-version
+lint-doc8: \
+  lint-doc8-cmd-version \
+  lint-doc8-ini-tmp
 
 	$(call banner-enter,Target $@)
 	$(activate) && doc8 $(lint-doc8-excl) $(lint-doc8-args)
diff --git a/makefiles/lint/doc8/help.mk b/makefiles/lint/doc8/help.mk
index 5dbd23a..1ec6cb8 100644
--- a/makefiles/lint/doc8/help.mk
+++ b/makefiles/lint/doc8/help.mk
@@ -1,12 +1,12 @@
 # -*- makefile -*-
 # -----------------------------------------------------------------------
-# Copyright 2023-2024 Open Networking Foundation Contributors
+# Copyright 2022-2023 Open Networking Foundation (ONF) and the ONF Contributors
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at
 #
-# http:#www.apache.org/licenses/LICENSE-2.0
+# http://www.apache.org/licenses/LICENSE-2.0
 #
 # Unless required by applicable law or agreed to in writing, software
 # distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,11 +14,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 # -----------------------------------------------------------------------
-# SPDX-FileCopyrightText: 2023-2024 Open Networking Foundation Contributors
-# SPDX-License-Identifier: Apache-2.0
-# -----------------------------------------------------------------------
-# Intent:
-# -----------------------------------------------------------------------
 
 $(if $(DEBUG),$(warning ENTER))
 
diff --git a/makefiles/lint/doc8/include.mk b/makefiles/lint/doc8/include.mk
index d1b69cb..83bbcbf 100644
--- a/makefiles/lint/doc8/include.mk
+++ b/makefiles/lint/doc8/include.mk
@@ -1,12 +1,12 @@
 # -*- makefile -*-
 # -----------------------------------------------------------------------
-# Copyright 2017-2024 Open Networking Foundation Contributors
+# Copyright 2017-2022 Open Networking Foundation
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at
 #
-# http:#www.apache.org/licenses/LICENSE-2.0
+# http://www.apache.org/licenses/LICENSE-2.0
 #
 # Unless required by applicable law or agreed to in writing, software
 # distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,11 +14,6 @@
 # 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:
-# -----------------------------------------------------------------------
 # NOTE: The doc8 command runs recursively on directories so targets
 #       *-mod and *-src are not yet supported.
 # -----------------------------------------------------------------------
@@ -26,9 +21,11 @@
 ##--------------------##
 ##---]  INCLUDES  [---##
 ##--------------------##
-include $(ONF_MAKEDIR)/lint/doc8/doc8.mk
-include $(ONF_MAKEDIR)/lint/doc8/excl.mk
-include $(ONF_MAKEDIR)/lint/doc8/help.mk
-include $(ONF_MAKEDIR)/lint/doc8/install.mk
+include $(onf-mk-top)/lint/doc8/ini.mk
+include $(onf-mk-top)/lint/doc8/excl.mk
+include $(onf-mk-top)/lint/doc8/help.mk
+include $(onf-mk-top)/lint/doc8/install.mk
+
+include $(onf-mk-top)/lint/doc8/doc8.mk
 
 # [EOF]
diff --git a/makefiles/lint/doc8/ini.mk b/makefiles/lint/doc8/ini.mk
index 7a2393f..971bfb4 100644
--- a/makefiles/lint/doc8/ini.mk
+++ b/makefiles/lint/doc8/ini.mk
@@ -17,7 +17,9 @@
 # SPDX-FileCopyrightText: 2023-2024 Open Networking Foundation Contributors
 # SPDX-License-Identifier: Apache-2.0
 # -----------------------------------------------------------------------
-# Intent:
+# Intent: doc8(s) --config switch will only accept one argument and
+#   config(s)/exclusion(s) are needed from multiple sources.
+#   This target will merge doc8.ini from onf-make/ and local/ for use.
 # -----------------------------------------------------------------------
 
 ##-------------------##
@@ -32,18 +34,12 @@
 lint-doc8-ini-tmp : $(lint-doc8-ini-tmp)
 
 # -----------------------------------------------------------------------
-# Intent: Doc8(s) --config switch will only accept one argument and
-#   configs/exclusions are needed from multiple sources.
-#   This target will merge doc8.ini from onf-make/ and local/ for use.
+# doc8 config files to merge: lf/makefiles/{onf-make,local}/
 # -----------------------------------------------------------------------
-# repo:onf-make is special, MAKEDIR=makefiles/local does not exist.
-# -----------------------------------------------------------------------
-lint-doc8-ini-raw := $(ONF_MAKEDIR)/lint/doc8/doc8.ini
-ifneq ($(--repo-name--),onf-make)
-  lint-doc8-ini-raw += $(MAKEDIR)/lint/doc8/doc8.ini
-endif
+lint-doc8-ini-raw := $(onf-mk-dir)/lint/doc8/doc8.ini
+lint-doc8-ini-raw += $(local-mk-dir)/lint/doc8/doc8.ini
 
-lint-doc8-ini-src = $(wildcard $(lint-doc8-ini-raw))
+lint-doc8-ini-src = $(wildcard $(sort $(lint-doc8-ini-raw)))
 $(lint-doc8-ini-tmp):
 
 	$(call banner,Target $@)
