From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Tue, 12 Jan 2016 02:59:57 +0100 Subject: [U-Boot] [PATCH v4] socfpga: Modify qts-filter args to allow input for bsp generated files and quartus project directories In-Reply-To: <1452563354-6622-1-git-send-email-dwesterg@gmail.com> References: <1452563354-6622-1-git-send-email-dwesterg@gmail.com> Message-ID: <201601120259.57545.marex@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Tuesday, January 12, 2016 at 02:49:14 AM, Dalon Westergreen wrote: > The hps_isw_handoff and bsp/generated folders are typically not in the same > path. This patch adds support for specifying the different input > directories for the bsp and quartus projects. Still not aligned to 80 :-) But I am fine if you want me to fix it up by hand, I can do that. Note that in this reply, my mailer did the alignment automatically. Use git commit --amend to append the patch in your git history and use for example :set textwidth=80 in vim to activate automatic breaking of long lines. > Signed-off-by: Dalon Westergreen > Acked-by: Marek Vasut Also, Chin added his Acked-by, so you should add it here. > --- > Changes for v2: > - Add commit message > Changes for v3: > - Fix line length issues > Changes for v4: > - Cleanup/clarify help messages > --- > arch/arm/mach-socfpga/qts-filter.sh | 76 > ++++++++++++++++++++++--------------- 1 file changed, 45 insertions(+), 31 > deletions(-) > > diff --git a/arch/arm/mach-socfpga/qts-filter.sh > b/arch/arm/mach-socfpga/qts-filter.sh index c1640bc..1adfbf7 100755 > --- a/arch/arm/mach-socfpga/qts-filter.sh > +++ b/arch/arm/mach-socfpga/qts-filter.sh > @@ -3,13 +3,15 @@ > # > # Process iocsr_config_*.[ch] > # $1: SoC type > -# $2: Input directory > -# $3: Output directory > +# $2: Input handoff directory > +# $3: Input BSP Generated directory > +# $4: Output directory > # > process_iocsr_config() { > soc="$1" > - in_dir="$2" > - out_dir="$3" > + in_qts_dir="$2" > + in_bsp_dir="$3" > + out_dir="$4" > > ( > cat << EOF > @@ -26,13 +28,13 @@ EOF > > # Retrieve the scan chain lengths > grep 'CONFIG_HPS_IOCSR_SCANCHAIN[0-9]\+_LENGTH' \ > - ${in_dir}/generated/iocsr_config_${soc}.h | tr -d "()" > + ${in_bsp_dir}/generated/iocsr_config_${soc}.h | 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_dir}/generated/iocsr_config_${soc}.c > + ${in_bsp_dir}/generated/iocsr_config_${soc}.c > > cat << EOF > > @@ -49,8 +51,9 @@ EOF > # > process_pinmux_config() { > soc="$1" > - in_dir="$2" > - out_dir="$3" > + in_qts_dir="$2" > + in_bsp_dir="$3" > + out_dir="$4" > > ( > cat << EOF > @@ -67,7 +70,7 @@ 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_dir}/generated/pinmux_config_${soc}.c > + ${in_bsp_dir}/generated/pinmux_config_${soc}.c > > cat << EOF > > @@ -84,8 +87,9 @@ EOF > # > process_pll_config() { > soc="$1" > - in_dir="$2" > - out_dir="$3" > + in_qts_dir="$2" > + in_bsp_dir="$3" > + out_dir="$4" > > ( > cat << EOF > @@ -102,7 +106,7 @@ 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_dir}/generated/pll_config.h > + ${in_bsp_dir}/generated/pll_config.h > > cat << EOF > > @@ -126,8 +130,9 @@ grep_sdram_config() { > # > process_sdram_config() { > soc="$1" > - in_dir="$2" > - out_dir="$3" > + in_qts_dir="$2" > + in_bsp_dir="$3" > + out_dir="$4" > > ( > cat << EOF > @@ -144,29 +149,32 @@ EOF > > echo "/* SDRAM configuration */" > # Retrieve the sdram config, zap broken lines and zap parenthesis > - sed -n "/\\\\$/ {N;s/ \\\\\n/\t/};p" > ${in_dir}/generated/sdram/sdram_config.h | + sed -n "/\\\\$/ {N;s/ > \\\\\n/\t/};p" \ > + ${in_bsp_dir}/generated/sdram/sdram_config.h | > 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}" \ > - ${in_dir}/hps_isw_handoff/*/sequencer_auto.h | sort -u | > grep_sdram_config + ${in_qts_dir}/hps_isw_handoff/*/sequencer_auto.h | > + sort -u | grep_sdram_config > > echo "" > echo "/* Sequencer defines configuration */" > sed -n "/^#define [^_]/ {s/__//;s/ \+\([^ ]\+\)$/\t\1/p}" \ > - ${in_dir}/hps_isw_handoff/*/sequencer_defines.h | sort -u | > grep_sdram_config + ${in_qts_dir}/hps_isw_handoff/*/sequencer_defines.h | > + 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_dir}/hps_isw_handoff/*/sequencer_auto_ac_init.c > + ${in_qts_dir}/hps_isw_handoff/*/sequencer_auto_ac_init.c > > 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_dir}/hps_isw_handoff/*/sequencer_auto_inst_init.c > + ${in_qts_dir}/hps_isw_handoff/*/sequencer_auto_inst_init.c > > cat << EOF > > @@ -176,30 +184,36 @@ EOF > } > > usage() { > - echo "$0 [soc_type] [input_dir] [output_dir]" > + echo "$0 [soc_type] [input_qts_dir] [input_bsp_dir] [output_dir]" > echo "Process QTS-generated headers into U-Boot compatible ones." > echo "" > - echo " soc_type\t\tType of SoC, either 'cyclone5' or 'arria5'," > - echo " input_dir\t\tDirectory with the QTS project." > - echo " output_dir\t\tDirectory to store the U-Boot compatible headers." > + echo -e " soc_type\t-\tType of SoC, either 'cyclone5' or 'arria5'." > + echo -e " input_qts_dir\t-\tDirectory with compiled Quartus project" > + echo -e "\t\t\t\tand containing the Quartus project file (QPF)." > + echo -e " input_bsp_dir\t-\tDirectory with generated bsp containing" > + echo -e "\t\t\t\tthe settings.bsp file." > + echo -e " output_dir\t-\tDirectory to store the U-Boot compatible" > + echo -e "\t\t\t\theaders." > echo "" > } > > soc="$1" > -in_dir="$2" > -out_dir="$3" > +in_qts_dir="$2" > +in_bsp_dir="$3" > +out_dir="$4" > > -if [ "$#" -ne 3 ] ; then > +if [ "$#" -ne 4 ] ; then > usage > exit 1 > fi > > -if [ ! -d "${in_dir}" -o ! -d "${out_dir}" -o -z "${soc}" ] ; then > +if [ ! -d "${in_qts_dir}" -o ! -d "${in_bsp_dir}" -o \ > + ! -d "${out_dir}" -o -z "${soc}" ] ; then > usage > exit 3 > fi > > -process_iocsr_config "${soc}" "${in_dir}" "${out_dir}" > -process_pinmux_config "${soc}" "${in_dir}" "${out_dir}" > -process_pll_config "${soc}" "${in_dir}" "${out_dir}" > -process_sdram_config "${soc}" "${in_dir}" "${out_dir}" > +process_iocsr_config "${soc}" "${in_qts_dir}" "${in_bsp_dir}" > "${out_dir}" +process_pinmux_config "${soc}" "${in_qts_dir}" > "${in_bsp_dir}" "${out_dir}" +process_pll_config "${soc}" > "${in_qts_dir}" "${in_bsp_dir}" "${out_dir}" +process_sdram_config > "${soc}" "${in_qts_dir}" "${in_bsp_dir}" "${out_dir}"