-config=MC3R1.R5.3,reports+={safe, "any_area(any_loc(any_exp(macro(^read_debugreg$))&&any_exp(macro(^write_debugreg$))))"}
-doc_end
+-doc_begin="The type \"ret_t\" is deliberately defined multiple times,
+depending on the guest."
+-config=MC3R1.R5.6,reports+={deliberate,"any_area(any_loc(text(^.*ret_t.*$)))"}
+-doc_end
+
+-doc_begin="The following files are imported from the gnu-efi package."
+-file_tag+={adopted_r5_6,"^xen/include/efi/.*$"}
+-file_tag+={adopted_r5_6,"^xen/arch/.*/include/asm/.*/efibind\\.h$"}
+-config=MC3R1.R5.6,reports+={deliberate,"any_area(any_loc(file(adopted_r5_6)))"}
+-doc_end
+
#
# Series 7.
#
- __emulate_2op and __emulate_2op_nobyte
- read_debugreg and write_debugreg
+ * - R5.6
+ - The type ret_t is deliberately defined multiple times depending on the
+ type of guest to service.
+ - Tagged as `deliberate` for ECLAIR.
+
+ * - R5.6
+ - Some files are not subject to respect MISRA rules at
+ the moment, but, among these out-of-scope files, there are definitions
+ of typedef names that are already defined within in-scope files and
+ therefore, ECLAIR does report a violation since not all the files
+ involved in the violation are excluded from the analysis.
+ - Tagged as `deliberate` for ECLAIR. Such excluded files are:
+ - xen/include/efi/*
+ - xen/arch/*/include/asm/*/efibind.h
+
* - R7.1
- It is safe to use certain octal constants the way they are defined
in specifications, manuals, and algorithm descriptions. Such places