Daniel Krebs
36259d00e0
lib/ip: save address space ids for each bus master interface
2018-02-14 14:34:03 +01:00
Daniel Krebs
5d99f11a34
lib/ip: move definition of getBaseAddr() back to header
...
This is a one-liner, so IMO increases readability.
2018-02-14 14:34:03 +01:00
Daniel Krebs
e8ef3e4380
lib/memory-manager: pass strings as const reference
2018-02-14 14:34:03 +01:00
Daniel Krebs
73c6ae1f71
hwdef-parse: follow OR-gate merging DMA interrupts
...
Also update JSON config with the new output.
2018-02-14 14:34:03 +01:00
Daniel Krebs
6cb3b77c7a
ips/intc: don't fail if setting IRQ affinity is not possible
...
This is the case when the application is not executed as root which is
now possible, with the drawback that we cannot set the IRQ affinity
anymore.
2018-02-14 14:32:07 +01:00
Daniel Krebs
e2ce250288
lib: remove leftover (warning) compiler options
...
These are now set in the root CMakeLists.txt
2018-02-14 10:06:55 +01:00
Daniel Krebs
5940dcc0e5
lib/ips/fifo: remove useless code and old cruft
2018-02-14 07:28:25 +01:00
Daniel Krebs
3a8e332b42
lib/vlnv: add != operator and minor cleanup
2018-02-14 07:28:25 +01:00
Daniel Krebs
817d206243
lib/ip: formatting cleanup and more comments
2018-02-14 07:28:25 +01:00
Daniel Krebs
41e90bfda0
lib/ip: cleanup operators
2018-02-14 07:28:25 +01:00
Daniel Krebs
503d6b7f07
lib/ip: cleanup formatting and comments of IpCore's member variables
2018-02-14 07:28:25 +01:00
Daniel Krebs
e66350dbf6
tests: minor fixes in logging
2018-02-14 07:28:25 +01:00
Daniel Krebs
21333379a9
lib/ips/fifo: fix decision if AXI4 data interface is present
2018-02-14 07:28:25 +01:00
Daniel Krebs
e93b31bbf1
lib/ips: make use of MemoryManager and new config layout
2018-02-14 07:28:25 +01:00
Daniel Krebs
acf273e406
tests: let them fail if no Fifo or Timer is found
2018-02-14 07:27:37 +01:00
Daniel Krebs
ef5f6fa3a8
lib/card: use memory manager to store vfio mapping
2018-02-14 07:27:37 +01:00
Daniel Krebs
5b0013b335
lib/card: add IP lookup by VLNV
2018-02-14 07:27:37 +01:00
Daniel Krebs
c3382b9e18
lib/card: pass string as const reference to lookupIp()
2018-02-14 07:27:37 +01:00
Daniel Krebs
95e29f2706
memory-manager: allow for traversing address spaces
...
Major rework of the memory manager. Adds a memory translation class to
resolve addresses across address spaces and extents the memory manager
in order to do so.
2018-02-14 07:27:37 +01:00
Daniel Krebs
035c6f8b2a
lib/kernel/vfio: add function to get size of device memory region
2018-02-14 07:27:37 +01:00
Daniel Krebs
33ba634d87
lib/directed-graph: add findVertex() and minor refactoring
2018-02-14 07:27:37 +01:00
Daniel Krebs
02e873e8ff
lib/ip: remove dependency graph
...
Replace by static list of VLNVs that will be initialized first.
2018-02-14 07:27:37 +01:00
Daniel Krebs
95adaad32f
etc/json: update config file with current output of hwdef-parse
2018-02-14 07:26:39 +01:00
Daniel Krebs
912c3729d4
lib/ip: improve readability
2018-02-14 07:26:39 +01:00
Daniel Krebs
be3538f697
hwdef-parse: fix switch/num_port to be an integer
2018-02-14 07:26:39 +01:00
Daniel Krebs
44ad827121
hwdef-parse: treat PCIe bridge the same as all other IPs
...
This is needed in order to construct a global memory graph.
2018-02-14 07:26:39 +01:00
Daniel Krebs
7d927155db
tests: minimal test of memory manager
2018-02-14 07:26:39 +01:00
f621cfc984
Merge branch 'fix/directed_graph_loop_detection_bug' into 'develop'
...
directed-graph: fix bug in loop detection
See merge request acs/public/villas/VILLASfpga-code!1
2018-02-14 07:22:59 +01:00
bd1a5e6886
Merge branch 'feature/cpp_warnings' into 'develop'
...
enable -Wall, -Wextra and -Werror
Closes #20
See merge request acs/public/villas/VILLASfpga-code!3
2018-02-14 07:22:00 +01:00
Daniel Krebs
10745f00b5
libxil: update submodule
...
Only add temporary files to gitignore
2018-02-13 16:15:28 +01:00
Daniel Krebs
409340433d
enable -Wall, -Wextra and -Werror and fix new errors ( fixes #20 )
2018-02-13 16:04:34 +01:00
Daniel Krebs
6dab50824b
directed-graph: fix bug in loop detection
2018-02-13 09:54:31 +01:00
8206f867a5
logging: use similar log style in all modules
2018-01-31 20:24:11 +01:00
2336acaf98
tests: override some criteriod_log() functions in order to use spdlog style log output
2018-01-31 20:23:48 +01:00
51a3d0b8e9
tests: some cleanups
2018-01-31 20:22:15 +01:00
2a03d19d53
tests: readd missing graph test suite
2018-01-31 15:12:36 +01:00
b0f4577dd3
tests: automatically detect whether or not we can run tests in parallel
2018-01-31 15:12:19 +01:00
0aed1a1b12
tests: moved initialization of FPGA stuff to fpga.cpp
2018-01-31 15:11:13 +01:00
Daniel Krebs
32be16ef98
tests/graph: move criterion setup to from main.cpp to graph.cpp
2018-01-31 11:21:02 +01:00
Daniel Krebs
3de2170ad6
tests: move variables to global state and set criterion jobs to 1
2018-01-31 11:17:21 +01:00
1b6d0d7700
Merge branch 'feature/hw-testing' into feature/cpp ( closes #14 and #15 )
2018-01-30 19:38:49 +01:00
3c7f6e968b
do parallel build
2018-01-30 19:36:39 +01:00
e25a3e24bc
cleanup build dir before building
2018-01-30 19:35:03 +01:00
4a4a5fe176
tiny change
2018-01-30 19:32:22 +01:00
a45de4ec1a
FPGA tests fail if we attempt to run them in parallel
2018-01-30 19:27:22 +01:00
bb6d31a971
Merge branch 'feature/non-root' into feature/hw-testing
2018-01-30 19:26:38 +01:00
Daniel Krebs
5a7989d552
lib/memory-manager: start implementation using DirectedGraph
2018-01-30 19:16:59 +01:00
Daniel Krebs
ba7531ac46
lib/graph: allow stringifying of vertex and edge derived types
...
This yields nices debug messages and a much nice dump().
2018-01-30 19:16:59 +01:00
Daniel Krebs
22ce8f2b3f
lib/graph: slightly change interface to allow for custom edges
2018-01-30 19:16:59 +01:00
Daniel Krebs
201bbde4b6
lib/graph: move identifiers into classes
2018-01-30 19:16:59 +01:00