From a7b0d3b4f213b28ae47e83e3f98681a63ca2f55b Mon Sep 17 00:00:00 2001
From: DmitriyEshenko <dmitriy.eshenko@vyos.io>
Date: Tue, 31 Dec 2019 21:32:37 +0000
Subject: Create common build for Dell VEP1400/4600 devices

---
 Makefile                                     | 13 +++++++++++++
 tools/vendors_udev/64-vyos-VEP1400-net.rules | 12 ++++++++++++
 tools/vendors_udev/64-vyos-VEP4600-net.rules | 12 ++++++++++++
 3 files changed, 37 insertions(+)
 create mode 100644 tools/vendors_udev/64-vyos-VEP1400-net.rules
 create mode 100644 tools/vendors_udev/64-vyos-VEP4600-net.rules

diff --git a/Makefile b/Makefile
index f1d6dc15..30d5fbb9 100644
--- a/Makefile
+++ b/Makefile
@@ -241,6 +241,19 @@ edgecore: check_build_config clean prepare
 	cd ..
 	@scripts/copy-image
 
+.PHONY: dell
+.ONESHELL:
+dell: check_build_config clean prepare
+	@set -e
+	@echo "It's not like I'm building this specially for you or anything!"
+	mkdir -p build/config/includes.chroot/lib/udev/rules.d/
+	cp tools/vendors_udev/64-vyos-VEP4600-net.rules build/config/includes.chroot/lib/udev/rules.d/
+	cp tools/vendors_udev/64-vyos-VEP1400-net.rules build/config/includes.chroot/lib/udev/rules.d/
+	cd $(build_dir)
+	lb build 2>&1 | tee build.log
+	cd ..
+	@scripts/copy-image
+
 .PHONY: clean
 .ONESHELL:
 clean:
diff --git a/tools/vendors_udev/64-vyos-VEP1400-net.rules b/tools/vendors_udev/64-vyos-VEP1400-net.rules
new file mode 100644
index 00000000..d14aa8f5
--- /dev/null
+++ b/tools/vendors_udev/64-vyos-VEP1400-net.rules
@@ -0,0 +1,12 @@
+ATTR{[dmi/id]board_name}!="VEP-1400", GOTO="end_dell_nic"
+
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.1", ENV{VYOS_IFNAME}="eth0",  ATTR{ifalias}="SFP+1"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.0", ENV{VYOS_IFNAME}="eth1",  ATTR{ifalias}="SFP+2"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.2", ENV{VYOS_IFNAME}="eth2",  ATTR{ifalias}="GE1"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.3", ENV{VYOS_IFNAME}="eth3",  ATTR{ifalias}="GE2"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.0", ENV{VYOS_IFNAME}="eth4",  ATTR{ifalias}="GE3"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.1", ENV{VYOS_IFNAME}="eth5",  ATTR{ifalias}="GE4"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:07:00.1", ENV{VYOS_IFNAME}="eth6",  ATTR{ifalias}="GE5"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:07:00.0", ENV{VYOS_IFNAME}="eth7",  ATTR{ifalias}="GE6"
+
+LABEL="end_dell_nic"
\ No newline at end of file
diff --git a/tools/vendors_udev/64-vyos-VEP4600-net.rules b/tools/vendors_udev/64-vyos-VEP4600-net.rules
new file mode 100644
index 00000000..21aa166d
--- /dev/null
+++ b/tools/vendors_udev/64-vyos-VEP4600-net.rules
@@ -0,0 +1,12 @@
+ATTR{[dmi/id]board_name}!="VEP-4600", GOTO="end_dell_nic"
+
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:b6:00.0", ENV{VYOS_IFNAME}="eth1"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:b6:00.1", ENV{VYOS_IFNAME}="eth2"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.1", ENV{VYOS_IFNAME}="eth3"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.0", ENV{VYOS_IFNAME}="eth4"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.3", ENV{VYOS_IFNAME}="eth5"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.2", ENV{VYOS_IFNAME}="eth6"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:b6:00.2", NAME="unused0"
+ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:b6:00.3", NAME="unused1"
+
+LABEL="end_dell_nic"
\ No newline at end of file
-- 
cgit v1.2.3