]> git.sur5r.net Git - u-boot/blobdiff - arch/arm/mach-socfpga/qts-filter.sh
SPDX: Convert all of our single license tags to Linux Kernel style
[u-boot] / arch / arm / mach-socfpga / qts-filter.sh
index 1148a713113748f32f8c2d93d216a4974b1769e1..02c28be2b7729673eae2d547276b0908ddd711a5 100755 (executable)
@@ -1,5 +1,13 @@
 #!/bin/sh
 
+#
+# helper function to convert from DOS to Unix, if necessary, and handle
+# lines ending in '\'.
+#
+fix_newlines_in_macros() {
+       sed -n ':next;s/\r$//;/[^\\]\\$/ {N;s/\\\n//;b next};p' $1
+}
+
 #
 # Process iocsr_config_*.[ch]
 # $1:  SoC type
@@ -15,10 +23,9 @@ process_iocsr_config() {
 
        (
        cat << EOF
+/* SPDX-License-Identifier: BSD-3-Clause */
 /*
  * Altera SoCFPGA IOCSR configuration
- *
- * SPDX-License-Identifier:    BSD-3-Clause
  */
 
 #ifndef __SOCFPGA_IOCSR_CONFIG_H__
@@ -27,14 +34,16 @@ process_iocsr_config() {
 EOF
 
        # Retrieve the scan chain lengths
-       grep 'CONFIG_HPS_IOCSR_SCANCHAIN[0-9]\+_LENGTH'                 \
-               ${in_bsp_dir}/generated/iocsr_config_${soc}.h | tr -d "()"
+       fix_newlines_in_macros \
+               ${in_bsp_dir}/generated/iocsr_config_${soc}.h |
+       grep 'CONFIG_HPS_IOCSR_SCANCHAIN[0-9]\+_LENGTH' | tr -d "()"
 
        echo ""
 
        # Retrieve the scan chain config and zap the ad-hoc length encoding
-       sed -n '/^const/ !b; :next {/^const/ s/(.*)//;p;n;b next}'      \
-               ${in_bsp_dir}/generated/iocsr_config_${soc}.c
+       fix_newlines_in_macros \
+               ${in_bsp_dir}/generated/iocsr_config_${soc}.c |
+       sed -n '/^const/ !b; :next {/^const/ s/(.*)//;p;n;b next}'
 
        cat << EOF
 
@@ -57,10 +66,9 @@ process_pinmux_config() {
 
        (
        cat << EOF
+/* SPDX-License-Identifier: BSD-3-Clause */
 /*
  * Altera SoCFPGA PinMux configuration
- *
- * SPDX-License-Identifier:    BSD-3-Clause
  */
 
 #ifndef __SOCFPGA_PINMUX_CONFIG_H__
@@ -69,8 +77,9 @@ process_pinmux_config() {
 EOF
 
        # Retrieve the pinmux config and zap the ad-hoc length encoding
-       sed -n '/^unsigned/ !b; :next {/^unsigned/ {s/\[.*\]/[]/;s/unsigned long/const u8/};p;n;b next}' \
-               ${in_bsp_dir}/generated/pinmux_config_${soc}.c
+       fix_newlines_in_macros \
+               ${in_bsp_dir}/generated/pinmux_config_${soc}.c |
+       sed -n '/^unsigned/ !b; :next {/^unsigned/ {s/\[.*\]/[]/;s/unsigned long/const u8/};p;n;b next}'
 
        cat << EOF
 
@@ -93,10 +102,9 @@ process_pll_config() {
 
        (
        cat << EOF
+/* SPDX-License-Identifier: BSD-3-Clause */
 /*
  * Altera SoCFPGA Clock and PLL configuration
- *
- * SPDX-License-Identifier:    BSD-3-Clause
  */
 
 #ifndef __SOCFPGA_PLL_CONFIG_H__
@@ -105,8 +113,9 @@ process_pll_config() {
 EOF
 
        # Retrieve the pll config and zap parenthesis
-       sed -n '/CONFIG_HPS/ !b; :next {/CONFIG_HPS/ s/[()]//g;/endif/ b;p;n;b next}' \
-               ${in_bsp_dir}/generated/pll_config.h
+       fix_newlines_in_macros \
+               ${in_bsp_dir}/generated/pll_config.h |
+       sed -n '/CONFIG_HPS/ !b; :next {/CONFIG_HPS/ s/[()]//g;/endif/ b;p;n;b next}'
 
        cat << EOF
 
@@ -149,32 +158,37 @@ EOF
 
        echo "/* SDRAM configuration */"
        # Retrieve the sdram config, zap broken lines and zap parenthesis
-       sed -n "/\\\\$/ {N;s/ \\\\\n/\t/};p"            \
+       fix_newlines_in_macros \
                ${in_bsp_dir}/generated/sdram/sdram_config.h |
+       sed -n "/\\\\$/ {N;s/ \\\\\n/\t/};p" |
        sed -n '/CONFIG_HPS/ !b; :next {/CONFIG_HPS/ s/[()]//g;/endif/ b;p;n;b next}' |
                sort -u | grep_sdram_config
 
        echo ""
        echo "/* Sequencer auto configuration */"
-       sed -n "/__RW_MGR/ {s/__//;s/ \+\([^ ]\+\)$/\t\1/p}"            \
+       fix_newlines_in_macros \
                ${in_qts_dir}/hps_isw_handoff/*/sequencer_auto.h |
+       sed -n "/__RW_MGR/ {s/__//;s/ \+\([^ ]\+\)$/\t\1/p}" |
                sort -u | grep_sdram_config
 
        echo ""
        echo "/* Sequencer defines configuration */"
-       sed -n "/^#define [^_]/ {s/__//;s/ \+\([^ ]\+\)$/\t\1/p}"       \
+       fix_newlines_in_macros \
                ${in_qts_dir}/hps_isw_handoff/*/sequencer_defines.h |
+       sed -n "/^#define [^_]/ {s/__//;s/ \+\([^ ]\+\)$/\t\1/p}" |
                sort -u | grep_sdram_config
 
        echo ""
        echo "/* Sequencer ac_rom_init configuration */"
-       sed -n '/^const.*\[/ !b; :next {/^const.*\[/ {N;s/\n//;s/alt_u32/u32/;s/\[.*\]/[]/};/endif/ b;p;n;b next}'\
-               ${in_qts_dir}/hps_isw_handoff/*/sequencer_auto_ac_init.c
+       fix_newlines_in_macros \
+               ${in_qts_dir}/hps_isw_handoff/*/sequencer_auto_ac_init.c |
+       sed -n '/^const.*\[/ !b; :next {/^const.*\[/ {N;s/\n//;s/alt_u32/u32/;s/\[.*\]/[]/};/endif/ b;p;n;b next}'
 
        echo ""
        echo "/* Sequencer inst_rom_init configuration */"
-       sed -n '/^const.*\[/ !b; :next {/^const.*\[/ {N;s/\n//;s/alt_u32/u32/;s/\[.*\]/[]/};/endif/ b;p;n;b next}'\
-               ${in_qts_dir}/hps_isw_handoff/*/sequencer_auto_inst_init.c
+       fix_newlines_in_macros \
+               ${in_qts_dir}/hps_isw_handoff/*/sequencer_auto_inst_init.c |
+       sed -n '/^const.*\[/ !b; :next {/^const.*\[/ {N;s/\n//;s/alt_u32/u32/;s/\[.*\]/[]/};/endif/ b;p;n;b next}'
 
        cat << EOF