[ spi_host ] AUTOGEN
Signed-off-by: Martin Lueker-Boden <martin.lueker-boden@wdc.com>
diff --git a/hw/ip/spi_host/rtl/spi_host_reg_pkg.sv b/hw/ip/spi_host/rtl/spi_host_reg_pkg.sv
index af33445..2feb78f 100644
--- a/hw/ip/spi_host/rtl/spi_host_reg_pkg.sv
+++ b/hw/ip/spi_host/rtl/spi_host_reg_pkg.sv
@@ -11,6 +11,7 @@
parameter int NumCS = 1;
parameter int TxDepth = 72;
parameter int RxDepth = 64;
+ parameter int CmdDepth = 4;
parameter int NumAlerts = 1;
// Address widths within the block
@@ -197,6 +198,10 @@
logic de;
} rxqd;
struct packed {
+ logic [3:0] d;
+ logic de;
+ } cmdqd;
+ struct packed {
logic d;
logic de;
} rxwm;
@@ -286,8 +291,8 @@
// HW -> register type
typedef struct packed {
- spi_host_hw2reg_intr_state_reg_t intr_state; // [55:52]
- spi_host_hw2reg_status_reg_t status; // [51:12]
+ spi_host_hw2reg_intr_state_reg_t intr_state; // [60:57]
+ spi_host_hw2reg_status_reg_t status; // [56:12]
spi_host_hw2reg_error_status_reg_t error_status; // [11:0]
} spi_host_hw2reg_t;
diff --git a/hw/ip/spi_host/rtl/spi_host_reg_top.sv b/hw/ip/spi_host/rtl/spi_host_reg_top.sv
index 71af8e8..75dd76b 100644
--- a/hw/ip/spi_host/rtl/spi_host_reg_top.sv
+++ b/hw/ip/spi_host/rtl/spi_host_reg_top.sv
@@ -187,6 +187,7 @@
logic control_spien_wd;
logic [7:0] status_txqd_qs;
logic [7:0] status_rxqd_qs;
+ logic [3:0] status_cmdqd_qs;
logic status_rxwm_qs;
logic status_byteorder_qs;
logic status_rxstall_qs;
@@ -562,6 +563,31 @@
.qs (status_rxqd_qs)
);
+ // F[cmdqd]: 19:16
+ prim_subreg #(
+ .DW (4),
+ .SwAccess(prim_subreg_pkg::SwAccessRO),
+ .RESVAL (4'h0)
+ ) u_status_cmdqd (
+ .clk_i (clk_i),
+ .rst_ni (rst_ni),
+
+ // from register interface
+ .we (1'b0),
+ .wd ('0),
+
+ // from internal hardware
+ .de (hw2reg.status.cmdqd.de),
+ .d (hw2reg.status.cmdqd.d),
+
+ // to internal hardware
+ .qe (),
+ .q (),
+
+ // to register interface (read)
+ .qs (status_cmdqd_qs)
+ );
+
// F[rxwm]: 20:20
prim_subreg #(
.DW (1),
@@ -1692,6 +1718,7 @@
addr_hit[5]: begin
reg_rdata_next[7:0] = status_txqd_qs;
reg_rdata_next[15:8] = status_rxqd_qs;
+ reg_rdata_next[19:16] = status_cmdqd_qs;
reg_rdata_next[20] = status_rxwm_qs;
reg_rdata_next[22] = status_byteorder_qs;
reg_rdata_next[23] = status_rxstall_qs;