From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751287AbdBWQDe (ORCPT ); Thu, 23 Feb 2017 11:03:34 -0500 Received: from mail-ot0-f193.google.com ([74.125.82.193]:35761 "EHLO mail-ot0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750828AbdBWQDc (ORCPT ); Thu, 23 Feb 2017 11:03:32 -0500 From: Rob Herring To: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Andy Whitcroft , Joe Perches Subject: [PATCH] checkpatch.pl: Add SPDX license tag check for dts files and headers Date: Thu, 23 Feb 2017 09:56:44 -0600 Message-Id: <20170223155644.24213-1-robh@kernel.org> X-Mailer: git-send-email 2.10.1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add a check for using SPDX-License-Identifier tags to define the license of .dts{i} and DT header files rather than using free form license text. This check looks for GPL, BSD, or X11(really incorrectly labeled MIT license) license text which are the commonly used DT licenses. Signed-off-by: Rob Herring Cc: Andy Whitcroft Cc: Joe Perches --- scripts/checkpatch.pl | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 982c52ca6473..ce802b3146e3 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -2139,6 +2139,7 @@ sub process { my $commit_log_has_diff = 0; my $reported_maintainer_file = 0; my $non_utf8_charset = 0; + my $licensefile = ''; my $last_blank_line = 0; my $last_coalesced_string_linenr = -1; @@ -2805,6 +2806,18 @@ sub process { } } +# check for using SPDX tag instead of free form license text in dts and binding header files + if ($licensefile ne $realfile && + ($realfile =~ /\.dtsi?$/ || $realfile =~ /dt-bindings\/.*\.h$/) && + $rawline !~ /\bSPDX-License-Identifier/ && + ($rawline =~ /^\+.*\bGeneral\s+Public\s+License/i || + $rawline =~ /^\+.*\bTHE\s+SOFTWARE\s+IS\s+PROVIDED\s+\"AS\s+IS\"/i || + $rawline =~ /^\+.*\b(GPL|BSD|X11)/)) { + $licensefile = $realfile; + WARN("SPDX_LICENSE_TAG", + "Use SPDX-License-Identifier tags instead of full license text\n" . $herecurr); + } + # check we are in a valid source file if not then ignore this hunk next if ($realfile !~ /\.(h|c|s|S|sh|dtsi|dts)$/); -- 2.10.1