From 7409d2024da36b58266337dc08792f1b65012ab6 Mon Sep 17 00:00:00 2001 From: Steffen Vogel Date: Mon, 25 Jun 2018 17:03:09 +0200 Subject: [PATCH] add more copyright / license headers --- fpga/CMakeLists.txt | 24 +++++++++++++++++++++++- fpga/include/villas/directed_graph.hpp | 23 +++++++++++++++++++++++ fpga/include/villas/fpga/ips/bram.hpp | 2 +- fpga/include/villas/list.h | 2 +- fpga/include/villas/log.hpp | 23 +++++++++++++++++++++++ fpga/include/villas/memory.hpp | 23 +++++++++++++++++++++++ fpga/include/villas/memory_manager.hpp | 23 +++++++++++++++++++++++ fpga/include/villas/utils.hpp | 23 +++++++++++++++++++++++ fpga/lib/CMakeLists.txt | 22 ++++++++++++++++++++++ fpga/lib/common/CMakeLists.txt | 22 ++++++++++++++++++++++ fpga/lib/common/memory.cpp | 22 ++++++++++++++++++++++ fpga/lib/common/memory_manager.cpp | 22 ++++++++++++++++++++++ fpga/lib/common/utils.cpp | 22 ++++++++++++++++++++++ fpga/lib/gpu/CMakeLists.txt | 22 ++++++++++++++++++++++ fpga/lib/gpu/gpu.cpp | 23 +++++++++++++++++++++++ fpga/lib/gpu/include/villas/gpu.hpp | 23 +++++++++++++++++++++++ fpga/lib/gpu/kernels.cu | 25 ++++++++++++++++++++++++- fpga/lib/gpu/kernels.hpp | 23 +++++++++++++++++++++++ fpga/lib/ip_node.cpp | 22 ++++++++++++++++++++++ fpga/lib/ips/bram.cpp | 22 ++++++++++++++++++++++ fpga/lib/memory.cpp | 22 ++++++++++++++++++++++ fpga/scripts/hwdef-parse.py | 2 +- fpga/scripts/non_root.sh | 24 ++++++++++++++++++++++-- fpga/src/CMakeLists.txt | 22 ++++++++++++++++++++++ fpga/src/bench-datamovers.c | 22 ++++++++++++++++++++++ fpga/src/bench-jitter.c | 22 ++++++++++++++++++++++ fpga/src/bench-latency.c | 22 ++++++++++++++++++++++ fpga/src/bench-memcpy.c | 22 ++++++++++++++++++++++ fpga/src/bench-overruns.c | 18 +++++++++++++++++- fpga/src/bench.c | 18 +++++++++++++++++- fpga/src/bench.h | 22 ++++++++++++++++++++++ fpga/src/fpga.c | 18 +++++++++++++++++- fpga/src/pcimem.c | 25 ++++++++++++------------- fpga/src/streamer.cpp | 22 ++++++++++++++++++++++ fpga/tests/CMakeLists.txt | 22 ++++++++++++++++++++++ fpga/tests/dma.c | 1 - fpga/tests/dma.cpp | 22 ++++++++++++++++++++++ fpga/tests/fifo.cpp | 1 - fpga/tests/fpga.cpp | 1 - fpga/tests/global.hpp | 22 ++++++++++++++++++++++ fpga/tests/gpu.cpp | 22 ++++++++++++++++++++++ fpga/tests/graph.cpp | 22 ++++++++++++++++++++++ fpga/tests/hls.c | 1 - fpga/tests/intc.c | 1 - fpga/tests/logging.cpp | 22 ++++++++++++++++++++++ fpga/tests/main.cpp | 1 - fpga/tests/rtds.cpp | 1 - fpga/tests/rtds_rtt.c | 1 - fpga/tests/timer.cpp | 1 - fpga/tests/tmrctr.c | 1 - fpga/tests/xsg.c | 1 - 51 files changed, 803 insertions(+), 34 deletions(-) diff --git a/fpga/CMakeLists.txt b/fpga/CMakeLists.txt index 58481fbf2..b7d88750b 100644 --- a/fpga/CMakeLists.txt +++ b/fpga/CMakeLists.txt @@ -1,4 +1,26 @@ -cmake_minimum_required(VERSION 3.5) +## CMakeLists.txt +# +# @author Daniel Krebs +# @copyright 2018, RWTH Institute for Automation of Complex Power Systems (ACS) +# @license GNU General Public License (version 3) +# +# VILLASfpga +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +############################################################################## + + cmake_minimum_required(VERSION 3.5) project(VILLASfpga C CXX) diff --git a/fpga/include/villas/directed_graph.hpp b/fpga/include/villas/directed_graph.hpp index 5273979d3..18f58a9cc 100644 --- a/fpga/include/villas/directed_graph.hpp +++ b/fpga/include/villas/directed_graph.hpp @@ -1,3 +1,26 @@ +/** A directed graph. + * + * @file + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #pragma once #include diff --git a/fpga/include/villas/fpga/ips/bram.hpp b/fpga/include/villas/fpga/ips/bram.hpp index 01a46256f..f19ce4bf2 100644 --- a/fpga/include/villas/fpga/ips/bram.hpp +++ b/fpga/include/villas/fpga/ips/bram.hpp @@ -1,5 +1,5 @@ /** Block-Raam related helper functions - * * + * * @author Daniel Krebs * @copyright 2018, Daniel Krebs * @license GNU General Public License (version 3) diff --git a/fpga/include/villas/list.h b/fpga/include/villas/list.h index 481527b8b..effebdd9b 100644 --- a/fpga/include/villas/list.h +++ b/fpga/include/villas/list.h @@ -8,7 +8,7 @@ * * @file * @author Steffen Vogel - * @copyright 2017-20187, Institute for Automation of Complex Power Systems, EONERC + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC *********************************************************************************/ #pragma once diff --git a/fpga/include/villas/log.hpp b/fpga/include/villas/log.hpp index 656d24313..e814412b6 100644 --- a/fpga/include/villas/log.hpp +++ b/fpga/include/villas/log.hpp @@ -1,3 +1,26 @@ +/** Logging. + * + * @file + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #pragma once #include diff --git a/fpga/include/villas/memory.hpp b/fpga/include/villas/memory.hpp index ce7a9190c..75311fb2f 100644 --- a/fpga/include/villas/memory.hpp +++ b/fpga/include/villas/memory.hpp @@ -1,3 +1,26 @@ +/** Memory management. + * + * @file + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #pragma once #include diff --git a/fpga/include/villas/memory_manager.hpp b/fpga/include/villas/memory_manager.hpp index bbc0cdffd..bd023b5ab 100644 --- a/fpga/include/villas/memory_manager.hpp +++ b/fpga/include/villas/memory_manager.hpp @@ -1,3 +1,26 @@ +/** Memory manager. + * + * @file + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #pragma once #include diff --git a/fpga/include/villas/utils.hpp b/fpga/include/villas/utils.hpp index e07db49aa..11e044d98 100644 --- a/fpga/include/villas/utils.hpp +++ b/fpga/include/villas/utils.hpp @@ -1,3 +1,26 @@ +/** Utilities. + * + * @file + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #pragma once #include diff --git a/fpga/lib/CMakeLists.txt b/fpga/lib/CMakeLists.txt index eea93a1c9..09e08c272 100644 --- a/fpga/lib/CMakeLists.txt +++ b/fpga/lib/CMakeLists.txt @@ -1,3 +1,25 @@ +## CMakeLists.txt +# +# @author Daniel Krebs +# @copyright 2018, RWTH Institute for Automation of Complex Power Systems (ACS) +# @license GNU General Public License (version 3) +# +# VILLASfpga +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +############################################################################## + add_subdirectory(common) set(SOURCES diff --git a/fpga/lib/common/CMakeLists.txt b/fpga/lib/common/CMakeLists.txt index 20bb3b6e2..e1981c6e8 100644 --- a/fpga/lib/common/CMakeLists.txt +++ b/fpga/lib/common/CMakeLists.txt @@ -1,3 +1,25 @@ +## CMakeLists.txt +# +# @author Daniel Krebs +# @copyright 2018, RWTH Institute for Automation of Complex Power Systems (ACS) +# @license GNU General Public License (version 3) +# +# VILLASfpga +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +############################################################################## + cmake_minimum_required(VERSION 3.7) project(villas-common) diff --git a/fpga/lib/common/memory.cpp b/fpga/lib/common/memory.cpp index fe15e72b1..c7305956c 100644 --- a/fpga/lib/common/memory.cpp +++ b/fpga/lib/common/memory.cpp @@ -1,3 +1,25 @@ +/** Memory managment. + * + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/lib/common/memory_manager.cpp b/fpga/lib/common/memory_manager.cpp index ad234a1d5..915ee8649 100644 --- a/fpga/lib/common/memory_manager.cpp +++ b/fpga/lib/common/memory_manager.cpp @@ -1,3 +1,25 @@ +/** Memory managment. + * + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include #include diff --git a/fpga/lib/common/utils.cpp b/fpga/lib/common/utils.cpp index e32b2a516..0795c1017 100644 --- a/fpga/lib/common/utils.cpp +++ b/fpga/lib/common/utils.cpp @@ -1,3 +1,25 @@ +/** Utilities. + * + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/lib/gpu/CMakeLists.txt b/fpga/lib/gpu/CMakeLists.txt index c2dd78804..c1bca7594 100644 --- a/fpga/lib/gpu/CMakeLists.txt +++ b/fpga/lib/gpu/CMakeLists.txt @@ -1,3 +1,25 @@ +## CMakeLists.txt +# +# @author Daniel Krebs +# @copyright 2018, RWTH Institute for Automation of Complex Power Systems (ACS) +# @license GNU General Public License (version 3) +# +# VILLASfpga +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +############################################################################## + cmake_minimum_required(VERSION 3.8) project(villas-gpu diff --git a/fpga/lib/gpu/gpu.cpp b/fpga/lib/gpu/gpu.cpp index e8f7d58ec..99f269c20 100644 --- a/fpga/lib/gpu/gpu.cpp +++ b/fpga/lib/gpu/gpu.cpp @@ -1,3 +1,26 @@ +/** GPU managment. + * + * @file + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include #include diff --git a/fpga/lib/gpu/include/villas/gpu.hpp b/fpga/lib/gpu/include/villas/gpu.hpp index 88b316815..4ce1240aa 100644 --- a/fpga/lib/gpu/include/villas/gpu.hpp +++ b/fpga/lib/gpu/include/villas/gpu.hpp @@ -1,3 +1,26 @@ +/** GPU managment. + * + * @file + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #pragma once #include diff --git a/fpga/lib/gpu/kernels.cu b/fpga/lib/gpu/kernels.cu index 7e8b5524d..14a0d47b7 100644 --- a/fpga/lib/gpu/kernels.cu +++ b/fpga/lib/gpu/kernels.cu @@ -1,4 +1,27 @@ -#include +/** GPU Kernels. + * + * @file + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + + #include #include #include "kernels.hpp" diff --git a/fpga/lib/gpu/kernels.hpp b/fpga/lib/gpu/kernels.hpp index 986eba31e..a6015bb12 100644 --- a/fpga/lib/gpu/kernels.hpp +++ b/fpga/lib/gpu/kernels.hpp @@ -1,3 +1,26 @@ +/** GPU Kernels. + * + * @file + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #pragma once #include diff --git a/fpga/lib/ip_node.cpp b/fpga/lib/ip_node.cpp index 9435e24a3..c1dc36a5b 100644 --- a/fpga/lib/ip_node.cpp +++ b/fpga/lib/ip_node.cpp @@ -1,3 +1,25 @@ +/** An IP node. + * + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include #include diff --git a/fpga/lib/ips/bram.cpp b/fpga/lib/ips/bram.cpp index 11dda7f67..a7919a279 100644 --- a/fpga/lib/ips/bram.cpp +++ b/fpga/lib/ips/bram.cpp @@ -1,3 +1,25 @@ +/** Block RAM IP. + * + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include "fpga/ips/bram.hpp" namespace villas { diff --git a/fpga/lib/memory.cpp b/fpga/lib/memory.cpp index ed0656ec2..ca850782d 100644 --- a/fpga/lib/memory.cpp +++ b/fpga/lib/memory.cpp @@ -1,3 +1,25 @@ +/** Memory managment. + * + * @author Daniel Krebs + * @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/scripts/hwdef-parse.py b/fpga/scripts/hwdef-parse.py index 09abe905a..f999b5c01 100755 --- a/fpga/scripts/hwdef-parse.py +++ b/fpga/scripts/hwdef-parse.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 """ Author: Daniel Krebs -Copyright: 2017, Institute for Automation of Complex Power Systems, EONERC +Copyright: 2017-2018, Institute for Automation of Complex Power Systems, EONERC License: GNU General Public License (version 3) This program is free software: you can redistribute it and/or modify diff --git a/fpga/scripts/non_root.sh b/fpga/scripts/non_root.sh index daaf1b856..2cff33617 100755 --- a/fpga/scripts/non_root.sh +++ b/fpga/scripts/non_root.sh @@ -1,4 +1,26 @@ #!/bin/bash +# +# Setup VFIO for non-root users +# +# @author Steffen Vogel +# @copyright 2017-2018, Institute for Automation of Complex Power Systems, EONERC +# @license GNU General Public License (version 3) +# +# VILLASnode +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +################################################################################## # PCI-e parameters of FPGA card PCI_BDF="0000:03:00.0" @@ -21,5 +43,3 @@ usermod -G fpga -a dkr chgrp fpga /dev/vfio/${IOMMU_GROUP} chmod g+rw /dev/vfio/${IOMMU_GROUP} - - diff --git a/fpga/src/CMakeLists.txt b/fpga/src/CMakeLists.txt index 0f6488b7f..7b607cfd5 100644 --- a/fpga/src/CMakeLists.txt +++ b/fpga/src/CMakeLists.txt @@ -1,3 +1,25 @@ +## CMakeLists.txt +# +# @author Daniel Krebs +# @copyright 2018, RWTH Institute for Automation of Complex Power Systems (ACS) +# @license GNU General Public License (version 3) +# +# VILLASfpga +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +############################################################################## + add_executable(streamer streamer.cpp) add_executable(pcimem pcimem.c) diff --git a/fpga/src/bench-datamovers.c b/fpga/src/bench-datamovers.c index e98dc2507..22d55e019 100644 --- a/fpga/src/bench-datamovers.c +++ b/fpga/src/bench-datamovers.c @@ -1,3 +1,25 @@ +/** Data mover benchmarks. + * + * @author Steffen Vogel + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/src/bench-jitter.c b/fpga/src/bench-jitter.c index fe4309755..8469faa27 100644 --- a/fpga/src/bench-jitter.c +++ b/fpga/src/bench-jitter.c @@ -1,3 +1,25 @@ +/** Jitter benchmarks. + * + * @author Steffen Vogel + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/src/bench-latency.c b/fpga/src/bench-latency.c index f0affc4e0..40c8e5229 100644 --- a/fpga/src/bench-latency.c +++ b/fpga/src/bench-latency.c @@ -1,3 +1,25 @@ +/** Latency benchmarks. + * + * @author Steffen Vogel + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/src/bench-memcpy.c b/fpga/src/bench-memcpy.c index b34788d17..ae7372e08 100644 --- a/fpga/src/bench-memcpy.c +++ b/fpga/src/bench-memcpy.c @@ -1,3 +1,25 @@ +/** Memcpy benchmarks. + * + * @author Steffen Vogel + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/src/bench-overruns.c b/fpga/src/bench-overruns.c index e23fc03ff..4917a2fe2 100644 --- a/fpga/src/bench-overruns.c +++ b/fpga/src/bench-overruns.c @@ -2,7 +2,23 @@ * * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel - **********************************************************************************/ + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ #include #include diff --git a/fpga/src/bench.c b/fpga/src/bench.c index 30970485d..210d3bc8d 100644 --- a/fpga/src/bench.c +++ b/fpga/src/bench.c @@ -2,7 +2,23 @@ * * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel - **********************************************************************************/ + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ #include #include diff --git a/fpga/src/bench.h b/fpga/src/bench.h index a056230aa..2f479c0ca 100644 --- a/fpga/src/bench.h +++ b/fpga/src/bench.h @@ -1,3 +1,25 @@ +/** Benchmarks for VILLASfpga + * + * @author Steffen Vogel + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include "config.h" diff --git a/fpga/src/fpga.c b/fpga/src/fpga.c index 8cdbedfd7..854c550c8 100644 --- a/fpga/src/fpga.c +++ b/fpga/src/fpga.c @@ -2,7 +2,23 @@ * * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel - **********************************************************************************/ + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ #include #include diff --git a/fpga/src/pcimem.c b/fpga/src/pcimem.c index ca51a21ae..1f34c4b68 100644 --- a/fpga/src/pcimem.c +++ b/fpga/src/pcimem.c @@ -1,26 +1,25 @@ -/* - * pcimem.c: Simple program to read/write from/to a pci device from userspace. +/** Simple program to read/write from/to a pci device from userspace. * - * Copyright (C) 2010, Bill Farrow (bfarrow@beyondelectronics.us) + * @Copyright 2010, Bill Farrow (bfarrow@beyondelectronics.us) * * Based on the devmem2.c code - * Copyright (C) 2000, Jan-Derk Bakker (J.D.Bakker@its.tudelft.nl) + * @copyright 2000, Jan-Derk Bakker (J.D.Bakker@its.tudelft.nl) * - * This program is free software; you can redistribute it and/or modify + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. + * the Free Software Foundation, either version 3 of the License, or + * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - */ + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ #include #include @@ -107,7 +106,7 @@ int main(int argc, char **argv) { fprintf(stderr, "Illegal data type '%c'.\n", access_type); exit(2); } - + printf("Value at offset %#lx (%p): %#x\n", target, virt_addr, read_result); fflush(stdout); diff --git a/fpga/src/streamer.cpp b/fpga/src/streamer.cpp index b040fc8ec..ece8db5ba 100644 --- a/fpga/src/streamer.cpp +++ b/fpga/src/streamer.cpp @@ -1,3 +1,25 @@ +/** Streaming data from STDIN/OUT to FPGA. + * + * @author Daniel Krebs + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include #include diff --git a/fpga/tests/CMakeLists.txt b/fpga/tests/CMakeLists.txt index 00d80dcfa..2447335a4 100644 --- a/fpga/tests/CMakeLists.txt +++ b/fpga/tests/CMakeLists.txt @@ -1,3 +1,25 @@ +## CMakeLists.txt +# +# @author Daniel Krebs +# @copyright 2018, RWTH Institute for Automation of Complex Power Systems (ACS) +# @license GNU General Public License (version 3) +# +# VILLASfpga +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +############################################################################## + set(SOURCES main.cpp fpga.cpp diff --git a/fpga/tests/dma.c b/fpga/tests/dma.c index 01fad0831..82ec4fef6 100644 --- a/fpga/tests/dma.c +++ b/fpga/tests/dma.c @@ -1,6 +1,5 @@ /** DMA unit test. * - * @file * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel * @license GNU General Public License (version 3) diff --git a/fpga/tests/dma.cpp b/fpga/tests/dma.cpp index e7c462b26..63207748f 100644 --- a/fpga/tests/dma.cpp +++ b/fpga/tests/dma.cpp @@ -1,3 +1,25 @@ +/** DMA unit test. + * + * @author Steffen Vogel + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/tests/fifo.cpp b/fpga/tests/fifo.cpp index 6eba5e377..5ef8e9653 100644 --- a/fpga/tests/fifo.cpp +++ b/fpga/tests/fifo.cpp @@ -1,6 +1,5 @@ /** FIFO unit test. * - * @file * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel * @license GNU General Public License (version 3) diff --git a/fpga/tests/fpga.cpp b/fpga/tests/fpga.cpp index fe9e79847..95730c053 100644 --- a/fpga/tests/fpga.cpp +++ b/fpga/tests/fpga.cpp @@ -1,6 +1,5 @@ /** FPGA related code for bootstrapping the unit-tests * - * @file * @author Steffen Vogel * @copyright 2018, Steffen Vogel * @license GNU General Public License (version 3) diff --git a/fpga/tests/global.hpp b/fpga/tests/global.hpp index 01519df9d..b0699edaa 100644 --- a/fpga/tests/global.hpp +++ b/fpga/tests/global.hpp @@ -1,3 +1,25 @@ +/** Global include for tests. + * + * @author Steffen Vogel + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #pragma once #include diff --git a/fpga/tests/gpu.cpp b/fpga/tests/gpu.cpp index bdc3aba92..6bb3a7dd8 100644 --- a/fpga/tests/gpu.cpp +++ b/fpga/tests/gpu.cpp @@ -1,3 +1,25 @@ +/** GPU unit tests. + * + * @author Steffen Vogel + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/tests/graph.cpp b/fpga/tests/graph.cpp index 354b10d3e..aedc33c13 100644 --- a/fpga/tests/graph.cpp +++ b/fpga/tests/graph.cpp @@ -1,3 +1,25 @@ +/** Graph unit test. + * + * @author Steffen Vogel + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/tests/hls.c b/fpga/tests/hls.c index be7e31c03..e2bdd2d03 100644 --- a/fpga/tests/hls.c +++ b/fpga/tests/hls.c @@ -1,6 +1,5 @@ /** HLS unit test. * - * @file * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel * @license GNU General Public License (version 3) diff --git a/fpga/tests/intc.c b/fpga/tests/intc.c index 74427dc4f..49abdd687 100644 --- a/fpga/tests/intc.c +++ b/fpga/tests/intc.c @@ -1,6 +1,5 @@ /** Intc unit test. * - * @file * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel * @license GNU General Public License (version 3) diff --git a/fpga/tests/logging.cpp b/fpga/tests/logging.cpp index cbb3f80b7..e147759fa 100644 --- a/fpga/tests/logging.cpp +++ b/fpga/tests/logging.cpp @@ -1,3 +1,25 @@ +/** Logging utilities for unit test. + * + * @author Steffen Vogel + * @copyright 2017-2018, Steffen Vogel + * @license GNU General Public License (version 3) + * + * VILLASfpga + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + *********************************************************************************/ + #include #include diff --git a/fpga/tests/main.cpp b/fpga/tests/main.cpp index e59840fc2..23e5cc2b2 100644 --- a/fpga/tests/main.cpp +++ b/fpga/tests/main.cpp @@ -1,6 +1,5 @@ /** Main Unit Test entry point. * - * @file * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel * @license GNU General Public License (version 3) diff --git a/fpga/tests/rtds.cpp b/fpga/tests/rtds.cpp index fd6de2baf..0b1067cdd 100644 --- a/fpga/tests/rtds.cpp +++ b/fpga/tests/rtds.cpp @@ -1,6 +1,5 @@ /** RTDS AXI-Stream RTT unit test. * - * @file * @author Steffen Vogel * @author Daniel Krebs * @copyright 2018, Steffen Vogel, Daniel Krebs diff --git a/fpga/tests/rtds_rtt.c b/fpga/tests/rtds_rtt.c index ba902c7a4..c6567f4a0 100644 --- a/fpga/tests/rtds_rtt.c +++ b/fpga/tests/rtds_rtt.c @@ -1,6 +1,5 @@ /** RTDS AXI-Stream RTT unit test. * - * @file * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel * @license GNU General Public License (version 3) diff --git a/fpga/tests/timer.cpp b/fpga/tests/timer.cpp index bf0d324f3..d5f96a446 100644 --- a/fpga/tests/timer.cpp +++ b/fpga/tests/timer.cpp @@ -1,6 +1,5 @@ /** Timer/Counter unit test. * - * @file * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel * @license GNU General Public License (version 3) diff --git a/fpga/tests/tmrctr.c b/fpga/tests/tmrctr.c index a522fb3eb..d21722705 100644 --- a/fpga/tests/tmrctr.c +++ b/fpga/tests/tmrctr.c @@ -1,6 +1,5 @@ /** Timer/Counter unit test. * - * @file * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel * @license GNU General Public License (version 3) diff --git a/fpga/tests/xsg.c b/fpga/tests/xsg.c index abaf6da42..5c1dfbdf4 100644 --- a/fpga/tests/xsg.c +++ b/fpga/tests/xsg.c @@ -1,6 +1,5 @@ /** System Generator unit test. * - * @file * @author Steffen Vogel * @copyright 2017-2018, Steffen Vogel * @license GNU General Public License (version 3)