"Use of $flag is deprecated, please use \`$replacement->{$flag} instead.\n" . $herecurr) if ($replacement->{$flag});
                }
 
+# check for DT compatible documentation
+               if (defined $root && $realfile =~ /\.dts/ &&
+                   $rawline =~ /^\+\s*compatible\s*=/) {
+                       my @compats = $rawline =~ /\"([a-zA-Z0-9\-\,\.\+_]+)\"/g;
+
+                       foreach my $compat (@compats) {
+                               my $compat2 = $compat;
+                               my $dt_path =  $root . "/Documentation/devicetree/bindings/";
+                               $compat2 =~ s/\,[a-z]*\-/\,<\.\*>\-/;
+                               `grep -Erq "$compat|$compat2" $dt_path`;
+                               if ( $? >> 8 ) {
+                                       WARN("UNDOCUMENTED_DT_STRING",
+                                            "DT compatible string \"$compat\" appears un-documented -- check $dt_path\n" . $herecurr);
+                               }
+
+                               my $vendor = $compat;
+                               my $vendor_path = $dt_path . "vendor-prefixes.txt";
+                               next if (! -f $vendor_path);
+                               $vendor =~ s/^([a-zA-Z0-9]+)\,.*/$1/;
+                               `grep -Eq "$vendor" $vendor_path`;
+                               if ( $? >> 8 ) {
+                                       WARN("UNDOCUMENTED_DT_STRING",
+                                            "DT compatible string vendor \"$vendor\" appears un-documented -- check $vendor_path\n" . $herecurr);
+                               }
+                       }
+               }
+
 # check we are in a valid source file if not then ignore this hunk
                next if ($realfile !~ /\.(h|c|s|S|pl|sh)$/);