Browse Source

scripts/dtc: dtx_diff - add info to error message

If kernel config options are not properly set, "make scripts" will not
compile dtc.  Update the unable to find dtc error message to check
the kernel config and give better advice on how to create dtc.

Reword another error message to increase clarity.

Signed-off-by: Frank Rowand <frank.rowand@sonymobile.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Frank Rowand 9 years ago
parent
commit
60c7f4cb1f
1 changed files with 10 additions and 4 deletions
  1. 10 4
      scripts/dtc/dtx_diff

+ 10 - 4
scripts/dtc/dtx_diff

@@ -136,8 +136,7 @@ compile_to_dts() {
 			echo ""                                              >&2
 			echo ""                                              >&2
 			echo "  architecture ${dtx_arch} is in file path,"   >&2
 			echo "  architecture ${dtx_arch} is in file path,"   >&2
 			echo "  but does not match shell variable \$ARCH"    >&2
 			echo "  but does not match shell variable \$ARCH"    >&2
-			echo "  (${ARCH}) does not match shell variable"     >&2
-			echo "  \$ARCH (${ARCH})"                            >&2
+			echo "  >>\$ARCH<< is: >>${ARCH}<<"                  >&2
 		fi
 		fi
 
 
 		if [ ! -d ${srctree}/arch/${ARCH} ] ; then
 		if [ ! -d ${srctree}/arch/${ARCH} ] ; then
@@ -267,6 +266,14 @@ DTC="${__KBUILD_OUTPUT}/scripts/dtc/dtc"
 
 
 if [ ! -x ${DTC} ] ; then
 if [ ! -x ${DTC} ] ; then
 	__DTC="dtc"
 	__DTC="dtc"
+	if grep -q "^CONFIG_DTC=y" ${__KBUILD_OUTPUT}/.config ; then
+		make_command='
+         make scripts'
+	else
+		make_command='
+         Enable CONFIG_DTC in the kernel configuration
+         make scripts'
+	fi
 	if ( ! which ${__DTC} >/dev/null ) ; then
 	if ( ! which ${__DTC} >/dev/null ) ; then
 
 
 		# use spaces instead of tabs in the error message
 		# use spaces instead of tabs in the error message
@@ -280,8 +287,7 @@ ERROR: unable to find a 'dtc' program
       'dtc' is: ${DTC}
       'dtc' is: ${DTC}
 
 
       If it does not exist, create it from the root of the Linux source tree:
       If it does not exist, create it from the root of the Linux source tree:
-
-         'make scripts'.
+${make_command}
 
 
       If not at the root of the Linux kernel source tree -s SRCTREE or -S
       If not at the root of the Linux kernel source tree -s SRCTREE or -S
       may need to be specified to find 'dtc'.
       may need to be specified to find 'dtc'.