[util] Add support for partial one-to-N connections.
This allows blocks such as edn connect to fewer than 4 modules at once
Signed-off-by: Timothy Chen <timothytim@google.com>
diff --git a/hw/top_earlgrey/rtl/autogen/top_earlgrey.sv b/hw/top_earlgrey/rtl/autogen/top_earlgrey.sv
index 273038a..a644da8 100644
--- a/hw/top_earlgrey/rtl/autogen/top_earlgrey.sv
+++ b/hw/top_earlgrey/rtl/autogen/top_earlgrey.sv
@@ -407,6 +407,8 @@
logic usbdev_usb_aon_wake_ack;
logic usbdev_usb_suspend;
usbdev_pkg::awk_state_t pinmux_aon_usb_state_debug;
+ edn_pkg::edn_req_t [3:0] edn0_edn_req;
+ edn_pkg::edn_rsp_t [3:0] edn0_edn_rsp;
otp_ctrl_pkg::otp_keymgr_key_t otp_ctrl_otp_keymgr_key;
keymgr_pkg::hw_key_req_t keymgr_kmac_key;
keymgr_pkg::kmac_data_req_t keymgr_kmac_data_req;
@@ -527,6 +529,16 @@
tlul_pkg::tl_h2d_t main_tl_debug_mem_req;
tlul_pkg::tl_d2h_t main_tl_debug_mem_rsp;
+ // define partial inter-module tie-off
+ edn_pkg::edn_rsp_t unused_edn0_edn_rsp2;
+ edn_pkg::edn_rsp_t unused_edn0_edn_rsp3;
+
+ // assign partial inter-module tie-off
+ assign unused_edn0_edn_rsp2 = edn0_edn_rsp[2];
+ assign unused_edn0_edn_rsp3 = edn0_edn_rsp[3];
+ assign edn0_edn_req[2] = '0;
+ assign edn0_edn_req[3] = '0;
+
// Unused reset signals
logic unused_d0_rst_por_aon;
@@ -1278,8 +1290,8 @@
// Inter-module signals
.otp_ast_pwr_seq_o(otp_ctrl_otp_ast_pwr_seq_o),
.otp_ast_pwr_seq_h_i(otp_ctrl_otp_ast_pwr_seq_h_i),
- .edn_o(),
- .edn_i(edn_pkg::EDN_RSP_DEFAULT),
+ .edn_o(edn0_edn_req[1]),
+ .edn_i(edn0_edn_rsp[1]),
.pwr_otp_i(pwrmgr_aon_pwr_otp_req),
.pwr_otp_o(pwrmgr_aon_pwr_otp_rsp),
.lc_otp_program_i(lc_ctrl_lc_otp_program_req),
@@ -1760,8 +1772,8 @@
.alert_rx_i ( alert_rx[18:17] ),
// Inter-module signals
- .edn_o(),
- .edn_i(edn_pkg::EDN_RSP_DEFAULT),
+ .edn_o(edn0_edn_req[0]),
+ .edn_i(edn0_edn_rsp[0]),
.aes_key_o(),
.hmac_key_o(),
.kmac_key_o(keymgr_kmac_key),
@@ -1843,8 +1855,8 @@
// Inter-module signals
.csrng_cmd_o(csrng_csrng_cmd_req[0]),
.csrng_cmd_i(csrng_csrng_cmd_rsp[0]),
- .edn_i('0),
- .edn_o(),
+ .edn_i(edn0_edn_req),
+ .edn_o(edn0_edn_rsp),
.tl_i(edn0_tl_req),
.tl_o(edn0_tl_rsp),