* [U-Boot] [PATCH v4] socfpga: Modify qts-filter args to allow input for bsp generated files and quartus project directories
@ 2016-01-12 1:49 Dalon Westergreen
2016-01-12 1:59 ` Marek Vasut
0 siblings, 1 reply; 2+ messages in thread
From: Dalon Westergreen @ 2016-01-12 1:49 UTC (permalink / raw)
To: u-boot
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.
Signed-off-by: Dalon Westergreen <dwesterg@gmail.com>
Acked-by: Marek Vasut <marex@denx.de>
---
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}"
--
2.5.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [U-Boot] [PATCH v4] socfpga: Modify qts-filter args to allow input for bsp generated files and quartus project directories
2016-01-12 1:49 [U-Boot] [PATCH v4] socfpga: Modify qts-filter args to allow input for bsp generated files and quartus project directories Dalon Westergreen
@ 2016-01-12 1:59 ` Marek Vasut
0 siblings, 0 replies; 2+ messages in thread
From: Marek Vasut @ 2016-01-12 1:59 UTC (permalink / raw)
To: u-boot
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 <dwesterg@gmail.com>
> Acked-by: Marek Vasut <marex@denx.de>
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}"
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-01-12 1:59 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-12 1:49 [U-Boot] [PATCH v4] socfpga: Modify qts-filter args to allow input for bsp generated files and quartus project directories Dalon Westergreen
2016-01-12 1:59 ` Marek Vasut
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.