summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrant Thomsen <brant.thomsen@harman.com>2017-12-05 09:29:38 -0700
committerBrant Thomsen <brant.thomsen@harman.com>2017-12-05 09:40:59 -0700
commitb02a3663431cdf3f5be0ceb0b190ecf6a337f94f (patch)
treeaf971fad495159f0052264d66fe42dd69754f072
parent9bbb455e4eb27a428404e00bb82b2cf3976dd087 (diff)
downloadOpen-AVB-b02a3663431cdf3f5be0ceb0b190ecf6a337f94f.tar.gz
AVTP Pipeline Build Cleanup
Switched from defaulting from i210-specific to generic adapter support. (Intel i210 will still work if the PCAP interface is used.) GStreamer support defaults to being disabled, as the feature is not needed. AVDECC binaries copied to the build/bin folder, so that .INI files can be shared more easily with the AVTP Pipeline binaries. Explicitly sets CMAKE_TOOLCHAIN_FILE, which makes it easier to change the build type. README file recommends using run_daemons.sh to start necessary daemons.
-rw-r--r--lib/avtp_pipeline/README.md27
-rw-r--r--lib/avtp_pipeline/avtp_avdecc.mk9
-rw-r--r--lib/avtp_pipeline/avtp_pipeline.mk7
3 files changed, 23 insertions, 20 deletions
diff --git a/lib/avtp_pipeline/README.md b/lib/avtp_pipeline/README.md
index 23e6e525..cbf89a1a 100644
--- a/lib/avtp_pipeline/README.md
+++ b/lib/avtp_pipeline/README.md
@@ -6,8 +6,7 @@
- gPTP
- MAAP
- MSRP
- - igb direct for packet TX.
- - igb credit based shaper
+ - credit based shaper
- build system
- Credit-based shaper algorithm is not used for individual streams.
- Testing of various mappings and benchmarking has been performed. Look at the end of this file for benchmark results.
@@ -25,15 +24,17 @@
- $ sudo apt-get install linux-headers-generic
- linux-headers (same version as the kernel you're building for)
-- Install dependencies for AVTP pipeline
+- Additional install dependencies for AVTP pipeline
- $ sudo apt-get install libglib2.0-dev
+ - $ sudo apt-get install libasound2-dev
+
+- Additional install dependencies for AVTP pipeline if GStreamer support is enabled
- $ sudo apt-get install libgstreamer0.10-dev
- $ sudo apt-get install libgstreamer-plugins-base0.10-dev
- - $ sudo apt-get install libasound2-dev
### Building everything
- Building from the repo root
-- $ ARCH=I210 make all
+- $ make all
### Building just AVTP pipeline
- $ make avtp_pipeline
@@ -51,7 +52,8 @@ Make sure to call `make avtp_pipeline_clean` before.
### Building just AVTP AVDECC support
- $ make avtp_avdecc
-Binaries will be installed in lib/avtp_pipeline/build_avdecc/bin.
+Binaries will be installed in lib/avtp_pipeline/build/bin.
+Build files will be in the lib/avtp_pipeline/build_avdecc directory, to avoid interfering with the AVTP Pipeline build files.
The openavb_avdecc binary needs to be run in addition to the AVTP pipeline binary (openavb_harness or openavb_host) for AVDECC to be supported.
@@ -61,13 +63,10 @@ The openavb_avdecc binary needs to be run in addition to the AVTP pipeline binar
## Running OpenAvnu daemons
- Helper scripts in the repo root.
- `$ sudo ./run_igb.sh eth1`
- - Load the igb driver. Supply the interface name (ethx) as parameter.
-- `$ sudo ./run_gptp.sh eth1`
- - Start gptp daemon. Supply the interface name (ethx) as parameter.
-- `$ sudo ./run_srp.sh eth1`
- - Start msrp daemon. Supply the interface name (ethx) as parameter.
-- `$ sudo ./run_maap.sh eth1`
- - Start maap daemon. Supply the interface name (ethx) as parameter.
+ - Load the igb driver. Supply the interface name (ethx) as parameter. Only needed if using IGB support for the Intel i210 adapter.
+- `$ sudo ./run_daemons.sh eth1`
+ - Start gptp, msrp, maap, and shaper daemons. Supply the interface name (ethx) as parameter.
+ - Daemons can also be started individually using the run_gptp.sh, run_srp.sh, run_maap.sh, and run_shaper.sh scripts.
## Running OpenAvnu simple talker example
- `$ sudo ./run_simple_talker.sh eth1`
@@ -84,7 +83,7 @@ The openavb_avdecc binary needs to be run in addition to the AVTP pipeline binar
## Benchmark results
-All test done on DELL Optiplex 755 with Intel Core 2 Duo CPU E8400 @ 3.00GHz
+All test done on DELL Optiplex 755 with Intel Core 2 Duo CPU E8400 @ 3.00GHz
| Type | Comment | Class | Streams | CPU Talker | CPU Listener |
|:-------:| -------------|:-----:| -------:| ----------:| ------------:|
diff --git a/lib/avtp_pipeline/avtp_avdecc.mk b/lib/avtp_pipeline/avtp_avdecc.mk
index 9a140c03..1331daf0 100644
--- a/lib/avtp_pipeline/avtp_avdecc.mk
+++ b/lib/avtp_pipeline/avtp_avdecc.mk
@@ -1,10 +1,12 @@
AVB_FEATURE_AVDECC ?= 1
-PLATFORM_TOOLCHAIN ?= x86_i210_linux
+PLATFORM_TOOLCHAIN ?= generic
.PHONY: all clean
all: build_avdecc/Makefile
$(MAKE) -s -C build_avdecc install
+ mkdir -p build/bin
+ cp build_avdecc/bin/* build/bin/.
doc: build_avdecc/Makefile
$(MAKE) -s -C build_avdecc doc
@@ -17,7 +19,8 @@ clean:
build_avdecc/Makefile:
mkdir -p build_avdecc && \
cd build_avdecc && \
- cmake -DCMAKE_TOOLCHAIN_FILE=../platform/Linux/$(PLATFORM_TOOLCHAIN).cmake \
+ cmake -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_TOOLCHAIN_FILE=../platform/Linux/$(PLATFORM_TOOLCHAIN).cmake \
-DAVB_FEATURE_AVDECC=$(AVB_FEATURE_AVDECC) \
- ..
+ ..
diff --git a/lib/avtp_pipeline/avtp_pipeline.mk b/lib/avtp_pipeline/avtp_pipeline.mk
index a3ed80e8..e08ac9b9 100644
--- a/lib/avtp_pipeline/avtp_pipeline.mk
+++ b/lib/avtp_pipeline/avtp_pipeline.mk
@@ -1,7 +1,7 @@
AVB_FEATURE_ENDPOINT ?= 1
IGB_LAUNCHTIME_ENABLED ?= 0
-AVB_FEATURE_GSTREAMER ?= 1
-PLATFORM_TOOLCHAIN ?= x86_i210_linux
+AVB_FEATURE_GSTREAMER ?= 0
+PLATFORM_TOOLCHAIN ?= generic
.PHONY: all clean
@@ -19,7 +19,8 @@ clean:
build/Makefile:
mkdir -p build && \
cd build && \
- cmake -DCMAKE_TOOLCHAIN_FILE=../platform/Linux/$(PLATFORM_TOOLCHAIN).cmake \
+ cmake -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_TOOLCHAIN_FILE=../platform/Linux/$(PLATFORM_TOOLCHAIN).cmake \
-DAVB_FEATURE_ENDPOINT=$(AVB_FEATURE_ENDPOINT) \
-DIGB_LAUNCHTIME_ENABLED=$(IGB_LAUNCHTIME_ENABLED) \
-DAVB_FEATURE_GSTREAMER=$(AVB_FEATURE_GSTREAMER) \