Skip to content
  • Russell King's avatar
    ARM: config: sort select statements alphanumerically · b1b3f49c
    Russell King authored
    
    
    As suggested by Andrew Morton:
    
      This is a pet peeve of mine.  Any time there's a long list of items
      (header file inclusions, kconfig entries, array initalisers, etc) and
      someone wants to add a new item, they *always* go and stick it at the
      end of the list.
    
      Guys, don't do this.  Either put the new item into a randomly-chosen
      position or, probably better, alphanumerically sort the list.
    
    lets sort all our select statements alphanumerically.  This commit was
    created by the following perl:
    
    while (<>) {
    	while (/\\\s*$/) {
    		$_ .= <>;
    	}
    	undef %selects if /^\s*config\s+/;
    	if (/^\s+select\s+(\w+).*/) {
    		if (defined($selects{$1})) {
    			if ($selects{$1} eq $_) {
    				print STDERR "Warning: removing duplicated $1 entry\n";
    			} else {
    				print STDERR "Error: $1 differently selected\n".
    					"\tOld: $selects{$1}\n".
    					"\tNew: $_\n";
    				exit 1;
    			}
    		}
    		$selects{$1} = $_;
    		next;
    	}
    	if (%selects and (/^\s*$/ or /^\s+help/ or /^\s+---help---/ or
    			  /^endif/ or /^endchoice/)) {
    		foreach $k (sort (keys %selects)) {
    			print "$selects{$k}";
    		}
    		undef %selects;
    	}
    	print;
    }
    if (%selects) {
    	foreach $k (sort (keys %selects)) {
    		print "$selects{$k}";
    	}
    }
    
    It found two duplicates:
    
    Warning: removing duplicated S5P_SETUP_MIPIPHY entry
    Warning: removing duplicated HARDIRQS_SW_RESEND entry
    
    and they are identical duplicates, hence the shrinkage in the diffstat
    of two lines.
    
    We have four testers reporting success of this change (Tony, Stephen,
    Linus and Sekhar.)
    
    Acked-by: default avatarJason Cooper <jason@lakedaemon.net>
    Acked-by: default avatarTony Lindgren <tony@atomide.com>
    Acked-by: Stephen Warren's avatarStephen Warren <swarren@nvidia.com>
    Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Acked-by: default avatarSekhar Nori <nsekhar@ti.com>
    Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
    b1b3f49c