From e4e15fa6ff04cfeefabe2aad987272e35e006026 Mon Sep 17 00:00:00 2001
From: Reinier van der Walle <walle@astron.nl>
Date: Thu, 12 May 2022 15:31:22 +0200
Subject: [PATCH] made src IP writable

---
 .../libraries/disturb/src/vhdl/disturb_beamformer_output.vhd  | 1 -
 .../disturb2/libraries/disturb/src/vhdl/disturb_pkg.vhd       | 4 ++--
 .../disturb2/libraries/disturb/src/vhdl/disturb_station.vhd   | 2 +-
 3 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/applications/disturb2/libraries/disturb/src/vhdl/disturb_beamformer_output.vhd b/applications/disturb2/libraries/disturb/src/vhdl/disturb_beamformer_output.vhd
index 7261af19e9..a75cd12734 100644
--- a/applications/disturb2/libraries/disturb/src/vhdl/disturb_beamformer_output.vhd
+++ b/applications/disturb2/libraries/disturb/src/vhdl/disturb_beamformer_output.vhd
@@ -204,7 +204,6 @@ BEGIN
   -------------------------------------------------------------------------------
   dp_offload_tx_hdr_fields(field_hi(c_disturb_cep_hdr_field_arr, "eth_src_mac" ) DOWNTO field_lo(c_disturb_cep_hdr_field_arr, "eth_src_mac" )) <= eth_src_mac;
   dp_offload_tx_hdr_fields(field_hi(c_disturb_cep_hdr_field_arr, "udp_src_port") DOWNTO field_lo(c_disturb_cep_hdr_field_arr, "udp_src_port")) <= udp_src_port;
-  dp_offload_tx_hdr_fields(field_hi(c_disturb_cep_hdr_field_arr, "ip_src_addr" ) DOWNTO field_lo(c_disturb_cep_hdr_field_arr, "ip_src_addr" )) <= ip_src_addr;
 
   dp_offload_tx_hdr_fields(field_hi(c_disturb_cep_hdr_field_arr, "disturb_observation_id"                 ) DOWNTO field_lo(c_disturb_cep_hdr_field_arr,  "disturb_observation_id"                 )) <= disturb_info.observation_id;
   dp_offload_tx_hdr_fields(field_hi(c_disturb_cep_hdr_field_arr, "disturb_station_id"                     ) DOWNTO field_lo(c_disturb_cep_hdr_field_arr,  "disturb_station_id"                     )) <= disturb_info.station_id;
diff --git a/applications/disturb2/libraries/disturb/src/vhdl/disturb_pkg.vhd b/applications/disturb2/libraries/disturb/src/vhdl/disturb_pkg.vhd
index 5ee5cf43c5..d9a2456e73 100644
--- a/applications/disturb2/libraries/disturb/src/vhdl/disturb_pkg.vhd
+++ b/applications/disturb2/libraries/disturb/src/vhdl/disturb_pkg.vhd
@@ -325,7 +325,7 @@ PACKAGE disturb_pkg is
   CONSTANT c_disturb_cep_nof_beamlets_per_block : NATURAL := c_disturb_S_sub_bf; -- number of dual pol beamlets (c_disturb_N_pol_bf = 2)
 
   CONSTANT c_disturb_cep_nof_hdr_fields : NATURAL := 3+12+4+18+1; -- 592b; 9.25 64b words
-  CONSTANT c_disturb_cep_hdr_field_sel  : STD_LOGIC_VECTOR(c_disturb_cep_nof_hdr_fields-1 DOWNTO 0) := "101"&"111111111001"&"0111"&"1100"&"00000010"&"000110"&"0";  -- 0=data path, 1=MM controlled TODO
+  CONSTANT c_disturb_cep_hdr_field_sel  : STD_LOGIC_VECTOR(c_disturb_cep_nof_hdr_fields-1 DOWNTO 0) := "101"&"111111111011"&"0111"&"1100"&"00000010"&"000110"&"0";  -- 0=data path, 1=MM controlled TODO
 --CONSTANT c_disturb_cep_hdr_field_sel  : STD_LOGIC_VECTOR(c_disturb_cep_nof_hdr_fields-1 DOWNTO 0) := "100"&"000000010001"&"0100"&"0100"&"00000000"&"101000"&"0";  -- 0=data path, 1=MM controlled TODO
 
   CONSTANT c_disturb_cep_hdr_field_arr : t_common_field_arr(c_disturb_cep_nof_hdr_fields-1 DOWNTO 0) := ( 
@@ -343,7 +343,7 @@ PACKAGE disturb_pkg is
       ( field_name_pad("ip_time_to_live"                    ), "RW",  8, field_default(127) ),
       ( field_name_pad("ip_protocol"                        ), "RW",  8, field_default(17) ),
       ( field_name_pad("ip_header_checksum"                 ), "RW", 16, field_default(0) ),
-      ( field_name_pad("ip_src_addr"                        ), "RW", 32, field_default(0) ),
+      ( field_name_pad("ip_src_addr"                        ), "RW", 32, field_default(c_disturb_cep_ip_src_addr_31_16 & x"0203") ), -- Default src IP = 192.168.2.3
       ( field_name_pad("ip_dst_addr"                        ), "RW", 32, field_default(c_disturb_cep_ip_dst_addr) ),
 
       ( field_name_pad("udp_src_port"                       ), "RW", 16, field_default(0) ), 
diff --git a/applications/disturb2/libraries/disturb/src/vhdl/disturb_station.vhd b/applications/disturb2/libraries/disturb/src/vhdl/disturb_station.vhd
index fe0e298d86..40ae21aa8c 100644
--- a/applications/disturb2/libraries/disturb/src/vhdl/disturb_station.vhd
+++ b/applications/disturb2/libraries/disturb/src/vhdl/disturb_station.vhd
@@ -824,7 +824,7 @@ BEGIN
         reg_bsn_monitor_v2_beamlet_output_copi   => reg_bsn_monitor_v2_beamlet_output_copi_arr(beamset_id),
         reg_bsn_monitor_v2_beamlet_output_cipo   => reg_bsn_monitor_v2_beamlet_output_cipo_arr(beamset_id),
  
-        disturb_info                 => disturb_info,
+        disturb_info             => disturb_info,
         ring_info                => ring_info,
         gn_id                    => gn_id,
 
-- 
GitLab