From b1b8a14e5ebafd544db627e63e5889645aa546d1 Mon Sep 17 00:00:00 2001
From: David Gabriel Monk <david.gabriel.monk@cern.ch>
Date: Sat, 15 Oct 2022 18:10:43 +0200
Subject: [PATCH] Update top/firmware/hdl/emp_project_decl.vhd,
 top/firmware/hdl/link_maps.vhd, top/firmware/hdl/emp_payload.vhd

---
 top/firmware/hdl/emp_payload.vhd      | 2 +-
 top/firmware/hdl/emp_project_decl.vhd | 8 ++++++--
 top/firmware/hdl/link_maps.vhd        | 4 ++--
 3 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/top/firmware/hdl/emp_payload.vhd b/top/firmware/hdl/emp_payload.vhd
index 5ce5af20..aeb60cdd 100644
--- a/top/firmware/hdl/emp_payload.vhd
+++ b/top/firmware/hdl/emp_payload.vhd
@@ -236,7 +236,7 @@ begin
 end generate;
 
 
-linkor.data(63 downto 0) <= linksout(0).data(63 downto 0) or linksout(1).data(63 downto 0) or linksout(2).data(63 downto 0) or linksout(3).data(63 downto 0) or linksout(4).data(63 downto 0) or linksout(5).data(63 downto 0) or linksout(6).data(63 downto 0) or linksout(7).data(63 downto 0) or linksout(8).data(63 downto 0) or linksout(9).data(63 downto 0) or linksout(10).data(63 downto 0) or linksout(11).data(63 downto 0) or linksout(12).data(63 downto 0) or linksout(13).data(63 downto 0) or linksout(14).data(63 downto 0) or linksout(15).data(63 downto 0) or linksout(16).data(63 downto 0) or linksout(17).data(63 downto 0) or linksout(18).data(63 downto 0) or linksout(19).data(63 downto 0);
+linkor.data(63 downto 0) <= linksout(0).data(63 downto 0) or linksout(1).data(63 downto 0) or linksout(2).data(63 downto 0) or linksout(3).data(63 downto 0) or linksout(4).data(63 downto 0) or linksout(5).data(63 downto 0) or linksout(6).data(63 downto 0) or linksout(7).data(63 downto 0) or linksout(8).data(63 downto 0) or linksout(9).data(63 downto 0) or linksout(10).data(63 downto 0) or linksout(11).data(63 downto 0) or linksout(12).data(63 downto 0) or linksout(13).data(63 downto 0) or linksout(14).data(63 downto 0) or linksout(15).data(63 downto 0) or linksout(16).data(63 downto 0) or linksout(17).data(63 downto 0) or linksout(18).data(63 downto 0) or linksout(19).data(63 downto 0) or linksout(20).data(63 downto 0) or linksout(21).data(63 downto 0) or linksout(22).data(63 downto 0) or linksout(23).data(63 downto 0) or linksout(24).data(63 downto 0) or linksout(25).data(63 downto 0) or linksout(26).data(63 downto 0) or linksout(27).data(63 downto 0);
 
 --==============================--
 genHack: for i in 0 to cNumberOfFEModules - 1 generate
diff --git a/top/firmware/hdl/emp_project_decl.vhd b/top/firmware/hdl/emp_project_decl.vhd
index a1bd213c..ec0eeeb0 100644
--- a/top/firmware/hdl/emp_project_decl.vhd
+++ b/top/firmware/hdl/emp_project_decl.vhd
@@ -37,8 +37,8 @@ package emp_project_decl is
     2  => (lpgbt, buf, no_fmt, buf, lpgbt),   --Bank 227
     3  => (lpgbt, buf, no_fmt, buf, lpgbt),   --Bank 228
     4  => (lpgbt, buf, no_fmt, buf, lpgbt),   --Bank 229
-    5  => (no_mgt, buf, no_fmt, buf, no_mgt),   --Bank 230
-    6  => (no_mgt, buf, no_fmt, buf, no_mgt),   --Bank 231
+    5  => (lpgbt, buf, no_fmt, buf, lpgbt),   --Bank 230
+    6  => (lpgbt, buf, no_fmt, buf, lpgbt),   --Bank 231
     7  => (no_mgt, buf, no_fmt, buf, no_mgt),   --Bank 232
     8  => (no_mgt, buf, no_fmt, buf, no_mgt),   --Bank 233
     9  => (no_mgt, buf, no_fmt, buf, no_mgt),   --Bank 234
@@ -63,6 +63,8 @@ package emp_project_decl is
     2 => ( 0=>(false, true, 0, false), 1=>(false, true, 0, false), 2=>(false, true, 0, false), 3=>(false, true, 0, false)),
     3 => ( 0=>(false, true, 0, false), 1=>(false, true, 0, false), 2=>(false, true, 0, false), 3=>(false, true, 0, false)),
     4 => ( 0=>(false, true, 0, false), 1=>(false, true, 0, false), 2=>(false, true, 0, false), 3=>(false, true, 0, false)),
+    5 => ( 0=>(false, true, 0, false), 1=>(false, true, 0, false), 2=>(false, true, 0, false), 3=>(false, true, 0, false)),
+    6 => ( 0=>(false, true, 0, false), 1=>(false, true, 0, false), 2=>(false, true, 0, false), 3=>(false, true, 0, false)),
     others => kDummyRegionDataFramer
   );
 
@@ -73,6 +75,8 @@ package emp_project_decl is
     2  => (FEC5, DATARATE_5G12, PCS),
     3  => (FEC5, DATARATE_5G12, PCS),
     4  => (FEC5, DATARATE_5G12, PCS),
+    5  => (FEC5, DATARATE_5G12, PCS),
+    6  => (FEC5, DATARATE_5G12, PCS),
     others => kDummyRegionLpgbt
   );
 
diff --git a/top/firmware/hdl/link_maps.vhd b/top/firmware/hdl/link_maps.vhd
index 0be49d4b..37ac0295 100644
--- a/top/firmware/hdl/link_maps.vhd
+++ b/top/firmware/hdl/link_maps.vhd
@@ -3,11 +3,11 @@ use IEEE.STD_LOGIC_1164.ALL;
 use IEEE.NUMERIC_STD.ALL;
 
 package dtc_link_maps is
-    constant cNumberOfFEModules   : integer := 20;
+    constant cNumberOfFEModules   : integer := 28;
     constant cNumberOfOutputLinks : integer := 4;
 
     type tDTCInputLinkMap is array(0 to cNumberOfFEModules - 1) of integer;
-    constant cDTCInputLinkMap     : tDTCInputLinkMap := (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19);
+    constant cDTCInputLinkMap     : tDTCInputLinkMap := (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27);
 
     type tDTCOutputLinkMap is array(0 to cNumberOfOutputLinks - 1) of integer;
     constant cDTCOutputLinkMap    : tDTCOutputLinkMap := (16, 17, 18, 19);
-- 
GitLab