From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from metis.ext.pengutronix.de ([2001:6f8:1178:4:290:27ff:fe1d:cc33]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1YO3DN-0003rG-Sq for barebox@lists.infradead.org; Wed, 18 Feb 2015 11:54:51 +0000 From: Steffen Trumtrar Date: Wed, 18 Feb 2015 12:54:16 +0100 Message-Id: <1424260458-19639-2-git-send-email-s.trumtrar@pengutronix.de> In-Reply-To: <1424260458-19639-1-git-send-email-s.trumtrar@pengutronix.de> References: <1424260458-19639-1-git-send-email-s.trumtrar@pengutronix.de> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "barebox" Errors-To: barebox-bounces+u.kleine-koenig=pengutronix.de@lists.infradead.org Subject: [PATCH 1/3] scripts: add socfpga preloader-files importer To: barebox@lists.infradead.org Cc: Steffen Trumtrar Add script to automatically import and fixup the autogenerated handoff files into the board folder. Signed-off-by: Steffen Trumtrar --- Documentation/boards/socfpga.rst | 10 ++++-- scripts/socfpga_import_preloader | 69 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 77 insertions(+), 2 deletions(-) create mode 100755 scripts/socfpga_import_preloader diff --git a/Documentation/boards/socfpga.rst b/Documentation/boards/socfpga.rst index 70f959b32570..e956bccbe24a 100644 --- a/Documentation/boards/socfpga.rst +++ b/Documentation/boards/socfpga.rst @@ -67,8 +67,14 @@ To update the handoff files, the following procedure is necessary:: 6. Select the directory `hps_isw_handoff/soc_system_hps_0` under the preloader settings directory 7. Click ``Ok`` than ``Generate`` - 8. Copy the files generated in `software/spl_bsp/generated/` to your - board folder + +Now run the command:: + + scripts/socfpga_import_preloader + +where `` is the directory where the bsp-editor generated the files, +`` is the directory where Quartus generated the handoff files, and +`` is your board directory under `arch/arm/boards`. The following files are generic and belong into the `arch/arm/mach-socfpga` directory tree: diff --git a/scripts/socfpga_import_preloader b/scripts/socfpga_import_preloader new file mode 100755 index 000000000000..d52b1e8ab0b2 --- /dev/null +++ b/scripts/socfpga_import_preloader @@ -0,0 +1,69 @@ +#!/bin/bash + +if [ "$#" -lt "2" ] +then + echo "USAGE: $0 " + echo "EXAMPLE: $0 ~/cv_soc_devkit_ghrd/software/spl_bsp/generated ~/cv_soc_devkit_ghrd/hps_isw_handoff/soc_system_hps_0/ arch/arm/boards/altera-socdk" + exit 1 +fi + +splroot=$1 +handoff=$2 +boardroot=$3 +bareboxsrc=. + +cd ${bareboxsrc} + +copy_source() { + local src + local tgt + src=$1 + tgt=$2 + + echo "Merging source code $src to $tgt" + + cp $src $tgt + + unifdef -D HCX_COMPAT_MODE=1 -D ENABLE_INST_ROM_WRITE=1 $tgt -o $tgt + + echo " Fixing extern/static keywords..." + # Statify all global variables with missing static keyword + sed -i 's/^const /static const /g' $tgt + + echo " Remove unused defines..." + # Statify all global variables with missing static keyword + sed -i 's/\[CONFIG_HPS_PINMUX_NUM\]/\[\]/g' $tgt + + echo " Translating altera int types..." + # Replace altera types + sed -i 's/alt_u32/uint32_t/g' $tgt + sed -i 's/alt_u16/uint16_t/g' $tgt + sed -i 's/alt_16/int16_t/g' $tgt + sed -i 's/alt_32/int32_t/g' $tgt + sed -i 's/alt_u8/uint8_t/g' $tgt + sed -i 's/alt_8/int8_t/g' $tgt + sed -i 's/#include "alt_types.h"//g' $tgt + + echo " Fixing include pathes..." + # Fix include pathes + sed -i 's/#include /#include /g' $tgt + sed -i 's/#include /#include /g' $tgt + sed -i 's/#include "sequencer_auto.h"//g' $tgt + sed -i 's/#include "sequencer_defines.h"//g' $tgt + + echo " Automated readability fixup..." + indent -npro -kr -i8 -ts8 -sob -l100 -ss -ncs -cp1 -il0 $tgt + sed -i 's/ $//g' $tgt +} + +copy_source ${splroot}/iocsr_config_cyclone5.c ${boardroot}/iocsr_config_cyclone5.c +copy_source ${splroot}/pinmux_config_cyclone5.c ${boardroot}/pinmux_config.c +copy_source ${splroot}/pll_config.h ${boardroot}/pll_config.h +copy_source ${splroot}/sdram/sdram_config.h ${boardroot}/sdram_config.h + +copy_source ${handoff}/sequencer_auto.h ${boardroot}/sequencer_auto.h +copy_source ${handoff}/sequencer_auto_ac_init.c ${boardroot}/sequencer_auto_ac_init.c +copy_source ${handoff}/sequencer_auto_inst_init.c ${boardroot}/sequencer_auto_inst_init.c +copy_source ${handoff}/sequencer_defines.h ${boardroot}/sequencer_defines.h + +echo "DONE" -- 2.1.4 _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox