arm: dts: bcm2711-rpi-4-b: Adds respeaker 4mic nodes
[platform/kernel/linux-rpi.git] / scripts / kernel-doc
index 7c4a6a5..5d54b57 100755 (executable)
@@ -329,10 +329,6 @@ if (defined($ENV{'KBUILD_VERBOSE'})) {
        $verbose = "$ENV{'KBUILD_VERBOSE'}";
 }
 
-if (defined($ENV{'KDOC_WERROR'})) {
-       $Werror = "$ENV{'KDOC_WERROR'}";
-}
-
 if (defined($ENV{'KCFLAGS'})) {
        my $kcflags = "$ENV{'KCFLAGS'}";
 
@@ -341,6 +337,10 @@ if (defined($ENV{'KCFLAGS'})) {
        }
 }
 
+if (defined($ENV{'KDOC_WERROR'})) {
+       $Werror = "$ENV{'KDOC_WERROR'}";
+}
+
 # Generated docbook code is inserted in a template at a point where
 # docbook v3.1 requires a non-zero sequence of RefEntry's; see:
 # https://www.oasis-open.org/docbook/documentation/reference/html/refentry.html
@@ -1245,6 +1245,13 @@ sub dump_struct($$) {
        $members =~ s/\s*CRYPTO_MINALIGN_ATTR/ /gos;
        $members =~ s/\s*____cacheline_aligned_in_smp/ /gos;
        $members =~ s/\s*____cacheline_aligned/ /gos;
+       # unwrap struct_group():
+       # - first eat non-declaration parameters and rewrite for final match
+       # - then remove macro, outer parens, and trailing semicolon
+       $members =~ s/\bstruct_group\s*\(([^,]*,)/STRUCT_GROUP(/gos;
+       $members =~ s/\bstruct_group_(attr|tagged)\s*\(([^,]*,){2}/STRUCT_GROUP(/gos;
+       $members =~ s/\b__struct_group\s*\(([^,]*,){3}/STRUCT_GROUP(/gos;
+       $members =~ s/\bSTRUCT_GROUP(\(((?:(?>[^)(]+)|(?1))*)\))[^;]*;/$2/gos;
 
        my $args = qr{([^,)]+)};
        # replace DECLARE_BITMAP
@@ -1256,6 +1263,8 @@ sub dump_struct($$) {
        $members =~ s/DECLARE_KFIFO\s*\($args,\s*$args,\s*$args\)/$2 \*$1/gos;
        # replace DECLARE_KFIFO_PTR
        $members =~ s/DECLARE_KFIFO_PTR\s*\($args,\s*$args\)/$2 \*$1/gos;
+       # replace DECLARE_FLEX_ARRAY
+       $members =~ s/(?:__)?DECLARE_FLEX_ARRAY\s*\($args,\s*$args\)/$1 $2\[\]/gos;
        my $declaration = $members;
 
        # Split nested struct/union elements as newer ones