The DTS/DTSI files represent hardware description for Linux kernel, which is necessary to properly recognize and configure hardware by Linux. DTS is usually created by people having the actual hardware and having interest in keeping it in good shape. Such people can provide review (they might have board schematics) and testing. Unfortunately they mostly do not appear in MAINTAINERS file. Adding per-DTS entries to MAINTAINERS would quickly make it bloated (hundreds of new per-DTS entries). On the other hand there is no point in CC-ing every Copyright email appearing in files, because it might be outdated. Add new in-file pattern for storing maintainers dedicated to specific boards: Maintainer: John Smith <email> Suggested-by: Joe Perches <joe@xxxxxxxxxxx> Suggested-by: Shawn Guo <shawnguo@xxxxxxxxxx> Reviewed-by: Krzysztof Kozlowski <krzk@xxxxxxxxxx> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> --- This is rework of earlier approach: Link: https://lore.kernel.org/r/20210809080204.8381-1-shawnguo@xxxxxxxxxx --- scripts/get_maintainer.pl | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl index ab123b498fd9..f02a2a80c3bc 100755 --- a/scripts/get_maintainer.pl +++ b/scripts/get_maintainer.pl @@ -445,6 +445,17 @@ sub maintainers_in_file { my @poss_addr = $text =~ m$[A-Za-zÀ-ÿ\"\' \,\.\+-]*\s*[\,]*\s*[\(\<\{]{0,1}[A-Za-z0-9_\.\+-]+\@[A-Za-z0-9\.-]+\.[A-Za-z0-9]+[\)\>\}]{0,1}$g; push(@file_emails, clean_file_emails(@poss_addr)); } + + # Match "Maintainer: email" entries only in DTS sources + if (-f $file && ($email_file_emails || $file =~ /\.dtsi?$/)) { + open(my $f, '<', $file) + or die "$P: Can't open $file: $!\n"; + my $text = do { local($/) ; <$f> }; + close($f); + + my @poss_addr = $text =~ m$Maintainer: [A-Za-zÀ-ÿ\"\' \,\.\+-]*\s*[\,]*\s*[\(\<\{]{0,1}[A-Za-z0-9_\.\+-]+\@[A-Za-z0-9\.-]+\.[A-Za-z0-9]+[\)\>\}]{0,1}$g; + push(@file_emails, clean_file_emails(@poss_addr)); + } } # -- 2.34.1