Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[i2c,dv] I2C chip-level vseq fixes for transfer-level TLM #23959

6 changes: 3 additions & 3 deletions hw/dv/sv/i2c_agent/seq_lib/i2c_base_seq.sv
Original file line number Diff line number Diff line change
Expand Up @@ -115,18 +115,18 @@ class i2c_base_seq extends dv_base_seq #(
case (inp_xfer.state)
StAddrByteRcvd: begin
// Drive an ACK/NACK to the address byte
drive_addr_byte_ack();
fork drive_addr_byte_ack(); join_none
end
StDataByte: begin
if (inp_xfer.dir == i2c_pkg::READ) begin
// The agent drives the read bytes as target-transmitter.
drive_read_byte();
fork drive_read_byte(); join_none
end
end
StDataByteRcvd: begin
if (inp_xfer.dir == i2c_pkg::WRITE) begin
// The agent now needs to ACK or NACK the received write data byte.
drive_write_byte_ack();
fork drive_write_byte_ack(); join_none
end
end
default:; // We want to fall through for all other states.
Expand Down
4 changes: 2 additions & 2 deletions hw/top_earlgrey/dv/chip_sim_cfg.hjson
Original file line number Diff line number Diff line change
Expand Up @@ -2161,8 +2161,8 @@
"chip_sw_uart_tx_rx",
"chip_sw_spi_host_tx_rx",
"chip_sw_spi_device_pass_through",
// "chip_sw_i2c_host_tx_rx",
// "chip_sw_i2c_device_tx_rx",
"chip_sw_i2c_host_tx_rx",
"chip_sw_i2c_device_tx_rx",
"chip_sw_flash_scrambling_smoketest",
"chip_plic_all_irqs_0",
"chip_plic_all_irqs_10",
Expand Down
4 changes: 2 additions & 2 deletions hw/top_earlgrey/dv/env/chip_env.sv
Original file line number Diff line number Diff line change
Expand Up @@ -158,8 +158,8 @@ class chip_env extends cip_base_env #(
// Set default monitor enable to zero for shared io agents.
cfg.m_i2c_agent_cfgs[i].en_monitor = 1'b0;

m_i2c_agents[i].monitor.analysis_port.connect(
virtual_sequencer.i2c_rd_fifos[i].analysis_export);
m_i2c_agents[i].monitor.controller_mode_rd_item_port.connect(
virtual_sequencer.i2c_rd_fifos[i].analysis_export);
end

if (cfg.is_active && cfg.m_jtag_riscv_agent_cfg.is_active) begin
Expand Down
Loading