1#
2# Copyright (c) 2016-2019, ARM Limited and Contributors. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6
7#
8# Configure how the Linux checkpatch script should be invoked in the context of
9# the Trusted Firmware source tree.
10#
11
12# This is not Linux so don't expect a Linux tree!
13--no-tree
14
15# The Linux kernel expects the SPDX license tag in the first line of each file.
16# We don't follow this in the Trusted Firmware.
17--ignore SPDX_LICENSE_TAG
18
19# This clarifes the lines indications in the report.
20#
21# E.g.:
22# Without this option, we have the following output:
23#      #333: FILE: drivers/arm/gic/arm_gic.c:160:
24# So we have 2 lines indications (333 and 160), which is confusing.
25# We only care about the position in the source file.
26#
27# With this option, it becomes:
28#      drivers/arm/gic/arm_gic.c:160:
29--showfile
30
31# Don't show some messages like the list of ignored types or the suggestion to
32# use "--fix" or report changes to the maintainers.
33--quiet
34
35#
36# Ignore the following message types, as they don't necessarily make sense in
37# the context of the Trusted Firmware.
38#
39
40# COMPLEX_MACRO generates false positives.
41--ignore COMPLEX_MACRO
42
43# Commit messages might contain a Gerrit Change-Id.
44--ignore GERRIT_CHANGE_ID
45
46# Do not check the format of commit messages, as Gerrit's merge commits do not
47# preserve it.
48--ignore GIT_COMMIT_ID
49
50# FILE_PATH_CHANGES reports this kind of message:
51# "added, moved or deleted file(s), does MAINTAINERS need updating?"
52# We do not use this MAINTAINERS file process in TF.
53--ignore FILE_PATH_CHANGES
54
55# AVOID_EXTERNS reports this kind of messages:
56# "externs should be avoided in .c files"
57# We don't follow this convention in TF.
58--ignore AVOID_EXTERNS
59
60# NEW_TYPEDEFS reports this kind of messages:
61# "do not add new typedefs"
62# We allow adding new typedefs in TF.
63--ignore NEW_TYPEDEFS
64
65# Avoid "Does not appear to be a unified-diff format patch" message
66--ignore NOT_UNIFIED_DIFF
67
68# VOLATILE reports this kind of messages:
69# "Use of volatile is usually wrong: see Documentation/volatile-considered-harmful.txt"
70# We allow the usage of the volatile keyword in TF.
71--ignore VOLATILE
72
73# BRACES reports this kind of messages:
74# braces {} are not necessary for any arm of this statement
75--ignore BRACES
76
77# PREFER_KERNEL_TYPES reports this kind of messages (when using --strict):
78# "Prefer kernel type 'u32' over 'uint32_t'"
79--ignore PREFER_KERNEL_TYPES
80
81# USLEEP_RANGE reports this kind of messages (when using --strict):
82# "usleep_range is preferred over udelay; see Documentation/timers/timers-howto.txt"
83--ignore USLEEP_RANGE
84
85# COMPARISON_TO_NULL reports this kind of messages (when using --strict):
86# Comparison to NULL could be written ""
87--ignore COMPARISON_TO_NULL
88
89# UNNECESSARY_PARENTHESES reports this kind of messages (when using --strict):
90# Unnecessary parentheses around ""
91--ignore UNNECESSARY_PARENTHESES
92