# Configuration for checkpatch.pl
# ===============================

# Enable more tests
--strict

# Quiet
--quiet

# No per-file summary
--no-summary

# Don't expect the Linux kernel tree
--no-tree

# Show file line, not input line
--showfile

# Don't expect SPDX tag in the first line of a file
--ignore SPDX_LICENSE_TAG

# Don't expect Signed-off-by lines in commit messages
--no-signoff

# List of ignored rules
# ---------------------

# There's no BIT macro
--ignore BIT_MACRO

# Don't complain when bools are used in structs
--ignore BOOL_MEMBER

# Allow CamelCase
--ignore CAMELCASE

# Comparing to NULL explicitly isn't a bad thing
--ignore COMPARISON_TO_NULL

# Causes false positives
--ignore COMPLEX_MACRO

# Don't complain about structs not being const
--ignore CONST_STRUCT

# Don't complain about printing "warning:" without the function name, as warning
# printing is relevant to the code being parsed, not RGBDS' code
--ignore EMBEDDED_FUNCTION_NAME

# Do not check the format of commit messages
--ignore GIT_COMMIT_ID

# Do not check for global initializers (this is specific to the kernel)
--ignore GLOBAL_INITIALISERS

# Don't complain about initializing statics (this is specific to the kernel)
--ignore INITIALISED_STATIC

# We don't have a MAINTAINERS file, don't complain about it.
--ignore FILE_PATH_CHANGES

# Writing the continuation on the start of the line can make it clearer
--ignore LOGICAL_CONTINUATIONS

# Don't complain if a line that contains a string is too long. It's better to
# have a really long line that can be found with grep.
--ignore LONG_LINE_STRING

# Don't complain when files are modified in 'include/asm'
--ignore MODIFIED_INCLUDE_ASM

# Allow new typedefs
--ignore NEW_TYPEDEFS

# We allow lines ending with parentheses for the usage prints
--ignore OPEN_ENDED_LINE

# Prefer stdint.h types over kernel types
--ignore PREFER_KERNEL_TYPES

# Don't ask to replace sscanf by kstrto
--ignore SSCANF_TO_KSTRTO

# Parentheses can make the code clearer
--ignore UNNECESSARY_PARENTHESES

# We don't have `fallthrough;` */
--ignore PREFER_FALLTHROUGH
