From 68ce605d756b081f0e345d564c897262a13cd510 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Tue, 29 Dec 2020 22:20:38 +0100 Subject: [PATCH] updared readme, added scripts --- README.md | 138 ++++++++++++------ cmake/Q7SCrossCompileConfig.cmake | 8 +- .../Q7S/win_path_helper_xilinx_tools.sh | 4 + doc/img/vivado-edition.png | Bin 0 -> 36951 bytes doc/img/vivado-hl-design.png | Bin 0 -> 50686 bytes 5 files changed, 105 insertions(+), 45 deletions(-) create mode 100644 cmake/scripts/Q7S/win_path_helper_xilinx_tools.sh create mode 100644 doc/img/vivado-edition.png create mode 100644 doc/img/vivado-hl-design.png diff --git a/README.md b/README.md index 0dd496c5..144d186d 100644 --- a/README.md +++ b/README.md @@ -16,55 +16,118 @@ Target systems: * Linux Kernel https://github.com/XiphosSystemsCorp/linux-xlnx.git * Host System * Generic software components which are not dependant on hardware can also - be run. All host code is contained in the hosted folder + be run on a host system. All host code is contained in the `bsp_hosted` folder * Tested for Linux (Ubuntu 20.04) and Windows 10 * Raspberry Pi * EIVE OBC can be built for Raspberry Pi as well (either directly on Raspberry Pi or by installing a cross compiler) The steps in the primary README are related to the main OBC target Q7S. +The CMake build system can be used to generate build systems as well (see helper scripts in `cmake/scripts`: + +- Linux (Raspberry Pi): Using the `bsp_rpi` BSP folder, and a very similar cross-compiler. + For running the software on a Raspberry Pi, it is recommended to follow the steps specified in + [the fsfw example](https://egit.irs.uni-stuttgart.de/fsfw/fsfw_example/src/branch/mueller/master/doc/README-rpi.md#top) and + using the TCF agent to have a similar set-up process also required for the Q7S. +- Linux Host: Uses the `bsp_hosted` BSP folder and the CMake Unix Makefiles generator. +- Windows Host: Uses the `bsp_hosted` BSP folder, the CMake MinGW Makefiles generator and MSYS2. ## Setting up development environment +### Installing Vivado the the Xilinx development tools + * Install Vivado 2018.2 and Xilinx SDK from https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/vivado-design-tools/archive.html. - Install the Vivado Design Suite - HLx Editions - 2018.2 Full Product Installation instead of the updates. It is recommended to use the installer + Install the Vivado Design Suite - HLx Editions - 2018.2 Full Product Installation instead of the updates. It is recommended to use the installer. + * Install settings. In the Devices selection, it is sufficient to pick SoC → Zynq-7000:
-
+ +
+
+
+ * For supported OS refer to https://www.xilinx.com/support/documentation/sw_manuals/xilinx2018_2/ug973-vivado-release-notes-install-license.pdf -* Add path of linux cross-compiler to environment variables SDK\2018.2\gnu\aarch32\nt\gcc-arm-linux-gnueabi\bin -* Install make (only on windows, SDK on Linux can use the make installed with the SDK) +* Add path of linux cross-compiler to permanent environment variables (`.profile` file in Linux): + `SDK\2018.2\gnu\aarch32\nt\gcc-arm-linux-gnueabi\bin` + or set up path each time before debugging. -### Installing make on Windows -1. Install NodeJS LTS -2. Install xpm - -```sh -npm install --global xpm -``` +### Installing CMake and MSYS2 on Windows -3. Install Windows build tools (after installation also linux commands like mkdir can be used from windows) +1. Install [MSYS2](https://www.msys2.org/) and [CMake](https://cmake.org/download/) first. -```sh -xpm install --global @xpack-dev-tools/windows-build-tools@latest -``` +2. Open the MinGW64 console. It is recommended to set up aliases in `.bashrc` to navigate to the + software repository quickly + +3. Run the following commands in MinGW64 -## Building the software + ```sh + pacman -Syuuu + ``` + + It is recommended to install the full base development toolchain + + ```sh + pacman -S base-devel + ``` + + It is also possible to only install required packages + + ```sh + pacman -S mingw-w64-x86_64-cmake mingw-w64-x86_64-make mingw-w64-x86_64-gcc mingw-w64-x86_64-gdb python3 + ``` + +### Installing CMake on Linux + +1. Run the following command + + ```sh + sudo apt-get install cmake + ```` + +## Building the software with CMake + +When using Windows, run theses steps in MSYS2. 1. Clone the repository with -```sh -git clone https://egit.irs.uni-stuttgart.de/eive/eive_obsw.git -``` + ```sh + git clone https://egit.irs.uni-stuttgart.de/eive/eive_obsw.git + ``` 2. Update all the submodules -```sh -git submodule init -git submodule sync -git submodule update -``` -3. Open Xilinx SDK 2018.2 -4. Import project + ```sh + git submodule init + git submodule sync + git submodule update + ``` + +3. Ensure that the cross-compiler is working with `arm-linux-gnueabihf-gcc --version`. + It is recommended to run the shell script `win_path_helper_xilinx_tools.sh` in `cmake/scripts/Q7S` + or to set up the [PATH and the CROSS_COMPILE variable permanently](https://unix.stackexchange.com/questions/26047/how-to-correctly-add-a-path-to-path) + in the `.profile` file. + +4. Run the CMake configuration to create the build system in a `Debug` folder. + Navigate into the `eive_obsw` folder first. + + ```sh + cd cmake/scripts/Q7S` + ./create_cmake_debug.sh + cd ../../.. + ``` + + This will invoke a Python script which in turn invokes CMake with the correct + arguments to configure CMake for Q7S cross-compilation. + +5. Build the software with + ```sh + cd Debug + cmake --build . -j + ``` + +## Building in Xilinx SDK 2018.2 + +1. Open Xilinx SDK 2018.2 +2. Import project * File → Import → C/C++ → Existing Code as Makefile Project -5. Set build command. Replace \ with either debug or release. +3. Set build command. Replace \ with either debug or release. * When on Linux right click project → Properties → C/C++ Build → Set build command to `make -j` * -j causes the compiler to use all available cores * The target is used to either compile the debug or the optimized release build. @@ -73,11 +136,13 @@ git submodule update * Target name: all * Uncheck "Same as the target name" * Uncheck "Use builder settings" - * As build command type: `make -j WINDOWS=1` -6. Run build command by double clicking the created target or by right clicking + * As build command type: `cmake --build .` + * In the Behaviour tab, you can enable build acceleration +4. Run build command by double clicking the created target or by right clicking the project folder and selecting Build Project. ## Debugging the software (when workstation is directly conncected to Q7S) + 1. Assign static IP address to Q7S * Open serial console of Q7S (Accessible via the micro-USB of the PIM, see also Q7S user maunal chapter 10.3) * Baudrate 115200 @@ -96,6 +161,7 @@ git submodule update * When IP address is set to 192.168.133.10 and the netmask is 255.255.255.0, an example IP address for the workstation is 192.168.133.2 4. Run tcf-agent on Q7S + * Tcf-agent is not yet integrated in the rootfs of the Q7S. Therefore build tcf-agent manually ```sh @@ -307,17 +373,6 @@ a permanent solution). If running the script before executing the binary does not help or an warning is issue that the soft real time value is invalid, the hard real-time limit of the system might not be high enough (see step 1). -## Building and running the software on a host system - -The host build can be built with following command - -```sh -make -f Makefile-Hosted all -j -``` - -If compiling on Windows, it is recommended to supply `WINDOWS=1` . -A release build can be built by using the `mission` target. - ## Flight Software Framework (FSFW) An EIVE fork of the FSFW is submodules into this repository. @@ -339,6 +394,7 @@ Alternatively, changes from other upstreams (forks) and branches can be merged l the same way. ## PCDU + Connect to serial console of P60 Dock ```` picocom -b 500000 /dev/ttyUSBx diff --git a/cmake/Q7SCrossCompileConfig.cmake b/cmake/Q7SCrossCompileConfig.cmake index 665869f9..2fb8134b 100644 --- a/cmake/Q7SCrossCompileConfig.cmake +++ b/cmake/Q7SCrossCompileConfig.cmake @@ -1,13 +1,13 @@ # CROSS_COMPILE also needs to be set accordingly or passed to the CMake command -#if(NOT DEFINED ENV{Q7S_ROOTFS}) +if(NOT DEFINED ENV{Q7S_SYSROOT}) # message(FATAL_ERROR # "Define the Q7S_ROOTFS variable to " # "point to the raspbian rootfs." # ) -#else() -# set(SYSROOT_PATH "$ENV{Q7S_ROOTFS}") -#endif() +else() + set(SYSROOT_PATH "$ENV{Q7S_SYSROOT}") +endif() if(NOT DEFINED ENV{CROSS_COMPILE}) set(CROSS_COMPILE "arm-linux-gnueabihf") diff --git a/cmake/scripts/Q7S/win_path_helper_xilinx_tools.sh b/cmake/scripts/Q7S/win_path_helper_xilinx_tools.sh new file mode 100644 index 00000000..ac2411b7 --- /dev/null +++ b/cmake/scripts/Q7S/win_path_helper_xilinx_tools.sh @@ -0,0 +1,4 @@ +export PATH=$PATH:"/c/Xilinx/SDK/2018.2/gnu/aarch32/nt/gcc-arm-linux-gnueabi/bin" +export CROSS_COMPILE="arm-linux-gnueabihf" + +export Q7S_SYSROOT="/c/Xilinx/SDK/2018.2/gnu/aarch32/nt/gcc-arm-linux-gnueabi/arm-linux-gnueabihf/libc" diff --git a/doc/img/vivado-edition.png b/doc/img/vivado-edition.png new file mode 100644 index 0000000000000000000000000000000000000000..c34051f3ed3c3cf7c798e8e18d93e5e78d61f26e GIT binary patch literal 36951 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%0A#<4=r+Zl>Dsguq3zsH^zuKVdH!bj zUwtkjx%@Ha{QZCY{kJjyn}7YEx?cbP8OZ-;(f|J){J-B7|8MC2l@KAM@;rq95H5XkuL8yFQjRWqj!N{}7 zHgM!~O}e=zgx3L&4xWlgqvR>n5posL3}g*EBE33c-+@KES~)+>W5Lc7c7uIg;NdS{ zA}ZqY$6Uv&lxs7rDt*B|!J+D7y{UucY+aofCrtMaaPtOA&F`G=-Ptp0!x>*(NZo~vQ1_gLb300Z^~VP zIYQ{FY3W9>WiPX6)4*~=VuLJy%SKJj7ciFyYkE>94lZu_>`$?q>f04oPYsI|pp80s zdvg+|mZZYY$lgQ&0~WLjZbLIEyHaNI<3ZuPL$s!4ewAB1zI^O?*RTv#2L#$UFS^J( z{kdhz8q!dOdGRyiT~t`V$xcMw2{DT}k{|C<36h7t_(^qJnsmBw2Y*mH?%r(Gi4X?e z`u#*aE@xTGv1}?0u&)VY!UK6Z7o%z>5IZX=gPjj6#v{=CEET?esp{9{+bRwo+b zdIUlZPB2?+7ZhsuV+Fchat|L=#yYFtfBPn`O1|Zx4}7FT^Z+A%LRf+^5~~i$;lVvR zI(sF8^L{zAGgU?UnTBWL(AACXiTuR-xj+1tiK=}8O)Pqj20^j4AANf{3EH;V znN@j$bgs^Zbs&rAbYdawW)Rn54KY%UJuQq`KM7Z!D(t7; z;EX?4k(F!j#z$d0RD37#I=|HE*Cz*)nvqL55~70!>GEC=l3;iE0&;;UqmLogUQF-kf$0tETd5mJHmQAtF^hQ*@vu?qCVdK z-IwP{D~8m8e@UCKNAsK8m()qDCntuvuu z;Qe<${

lrO2I>Z+IYp40k)b7h}vE* zANkI*K@Z-&fZSlQ@=8UY3OD2;?+kD5%50wTg(Y~~cMS>-<8?zOsu!PDU4D%yz~RD$ zw;53z?#*OC-j#Z!8n&5)Plz{R#MS7BeDGQybqo6wENRvF&Tg4Chs};|P4HHL;(i$T%vucu z&@ra)12XX4|k0Mkm8yUoPCUVq-$I; z%{L~{Yn!!8S$C}<0lGTj1E&=G{fLT|jM~>oVc#MM`?;V$B`SLgx%l*8~4Lxvfm`{s)iK9-Ibi6@_j!bK}42BOgF9dO9hOCiy*vbEy0oXATtScP@Vbct zy{Sj#$AJnFy-f4nI(t(J)bgPKUuc)6bnc7egab+Nmga);Qm?Lp=GyFS`OpGyt`6Qh;U@C|=6^LzE# z>rVo*bBDG+=a)YiZiHXF;vbUz#<}?!kcM5Wf@}AF+s);b@gfMejHs6t2|%xbiY&?n zVEZexapEGwzz%iYTp7%@-+ZQiwv(;vIp5d^Lp^chHOX5uJJ0^pA=!ncPxj93^WZ+u Kz2rToul#?R_Jb$@ literal 0 HcmV?d00001 diff --git a/doc/img/vivado-hl-design.png b/doc/img/vivado-hl-design.png new file mode 100644 index 0000000000000000000000000000000000000000..3603f8cb7e8be788332ada13ebd19707c1516284 GIT binary patch literal 50686 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

H!;JX8^KAj>L#e;@V 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