From 377df61fa7b996f50c0177c99378fd895b57b77b Mon Sep 17 00:00:00 2001
From: David Gabriel Monk <david.gabriel.monk@cern.ch>
Date: Mon, 4 Jul 2022 16:11:23 +0200
Subject: [PATCH] Fix dependencies issues after migration to mainline EMP

---
 .gitlab-ci.yml                        |  2 +-
 dependencies.yml                      |  2 +-
 top/firmware/cfg/top.dep              |  4 ++--
 top/firmware/hdl/LinkCombiner.vhd     |  2 +-
 top/firmware/hdl/emp_project_decl.vhd | 22 +++++-----------------
 5 files changed, 10 insertions(+), 22 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3892f290..d8cc2f13 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -8,7 +8,7 @@ variables:
   PROJECT_ALGORITHM: top
   PROJECT_NAME: mprocessor
   EMPHUB_TAG: $CI_COMMIT_REF_NAME-$CI_COMMIT_SHORT_SHA
-  IPBB_VER: "dev-2021j"
+  IPBB_VER: "dev-2021j-v1.2"
 
 
 .vivado-job-build:
diff --git a/dependencies.yml b/dependencies.yml
index f82c96b4..04b2b8c7 100644
--- a/dependencies.yml
+++ b/dependencies.yml
@@ -1,7 +1,7 @@
 ---
 sources:
     emp-fwk:
-        branch: k_fe_mgt
+        branch: master
         url: https://gitlab.cern.ch/p2-xware/firmware/emp-fwk.git
 
     ttc_legacy:
diff --git a/top/firmware/cfg/top.dep b/top/firmware/cfg/top.dep
index 8879349e..0bb0b671 100644
--- a/top/firmware/cfg/top.dep
+++ b/top/firmware/cfg/top.dep
@@ -13,8 +13,8 @@ src -c ipbus-firmware:components/ipbus_slaves ipbus_reg_types.vhd
 src -c ipbus-firmware:components/ipbus_core ipbus_dc_node.vhd
 src -c ipbus-firmware:components/ipbus_core ipbus_dc_fabric_sel.vhd
 include -c emp-fwk:boards/serenity/dc_ku15p dc_ku15p_sm1_v1.dep
-include -c emp-fwk:components/links/fe_mgt/interface interface_gbt.dep
-include -c emp-fwk:components/links/fe_mgt/interface interface_lpgbt.dep
+include -c emp-fwk:components/links/fe_mgt/interface interface.dep
+include -c emp-fwk:components/links/fe_mgt/lpgbt/interface interface_lpgbt.dep
 
 include -c 10gb-ethernet:eth10g emp_eth10g.dep
 
diff --git a/top/firmware/hdl/LinkCombiner.vhd b/top/firmware/hdl/LinkCombiner.vhd
index 32574913..0aea5348 100644
--- a/top/firmware/hdl/LinkCombiner.vhd
+++ b/top/firmware/hdl/LinkCombiner.vhd
@@ -376,7 +376,7 @@ begin
                     end loop;
                     status    := status0 & status1;
                     status_sr <= status_sr(status_sr'high - 1 downto 0) & status;
-                    bcid      := std_logic_vector(header_in(2).bcid);
+                    bcid      := std_logic_vector(header_in(0).bcid);
                     bcid_sr   <= bcid_sr(bcid_sr'high - 1 downto 0) & bcid;
                     if unsigned(bcid_sr(bcid_sr'high)) > unsigned(bcid_sr(bcid_sr'high - 1)) then
                         super_id <= super_id + 1;
diff --git a/top/firmware/hdl/emp_project_decl.vhd b/top/firmware/hdl/emp_project_decl.vhd
index b4d2cac9..6dbcdbab 100644
--- a/top/firmware/hdl/emp_project_decl.vhd
+++ b/top/firmware/hdl/emp_project_decl.vhd
@@ -5,18 +5,14 @@
 library ieee;
 use ieee.std_logic_1164.all;
 
-
 library lpgbt_lib;
 use lpgbt_lib.lpgbtfpga_package.all;
-use work.emp_lpgbt_decl.all;
 
 use work.emp_framework_decl.all;
 use work.emp_device_decl.all;
 use work.emp_device_types.all;
---use work.lpgbtfpga_package.all;
-use work.emp_gbt_package.all;
+use work.emp_lpgbt_decl.all;
 use work.emp_data_framer_decl.all;
-use work.gbt_bank_package.all;
 
 -------------------------------------------------------------------------------
 package emp_project_decl is
@@ -62,27 +58,19 @@ package emp_project_decl is
 
   -- for data framer (ic_simple, no_ec, n_ec_spare, ec_broadcast)
   constant REGION_DATA_FRAMER_CONF : region_data_framer_conf_array_t := (
-      0 => ( 0=>(false, true, 0, false), 1=>(false, true, 0, false), 2=>(false, true, 0, false), 3=>(false, true, 0, false)),
-      1 => ( 0=>(false, false, 0, false), 1=>(false, false, 0, false), 2=>(false, false, 0, false), 3=>(false, false, 0, false)),
-      2 => ( 0=>(false, true, 0, false), 1=>(false, true, 0, false), 2=>(false, true, 0, false), 3=>(false, true, 0, false)),
-      others => kDummyRegionDataFramer
-  );
-
-  -- for gbt
-  constant REGION_GBT_CONF : region_gbt_conf_array_t := (
-      -- 1 => ( STANDARD, STANDARD, WIDE_BUS, WIDE_BUS),
-      others => kDummyRegionGbt
+    2 => ( 0=>(false, true, 0, false), 1=>(false, true, 0, false), 2=>(false, true, 0, false), 3=>(false, true, 0, false)),
+    others => kDummyRegionDataFramer
   );
 
   -- for lpgbt
   constant REGION_LPGBT_CONF : region_lpgbt_conf_array_t := (
-    0  => (FEC5, DATARATE_5G12, PCS),
-    1  => (FEC5, DATARATE_5G12, PCS),
     2  => (FEC5, DATARATE_5G12, PCS),
     others => kDummyRegionLpgbt
   );
 
 
 
+
+
 end emp_project_decl;
 -------------------------------------------------------------------------------
-- 
GitLab