Commit ba247313 authored by Michael Miehling's avatar Michael Miehling Committed by Grzegorz Daniluk

fixed implementation of testcase vme_buserror

parent 657e8994
...@@ -5663,8 +5663,8 @@ PACKAGE BODY terminal_pkg IS ...@@ -5663,8 +5663,8 @@ PACKAGE BODY terminal_pkg IS
print(" ---> test case skipped"); print(" ---> test case skipped");
end if; end if;
else else
irq_req_berr := 12; irq_req_berr := 8;
irq_req_dma := 13; irq_req_dma := 9;
wr32(terminal_in_0, terminal_out_0, VME_REGS + x"0000_0010", x"0000_0008", 1, en_msg_0, TRUE, "000001"); wr32(terminal_in_0, terminal_out_0, VME_REGS + x"0000_0010", x"0000_0008", 1, en_msg_0, TRUE, "000001");
rd32(terminal_in_0, terminal_out_0, VME_REGS + x"0000_0010", x"0000_0008", 1, en_msg_0, TRUE, "000001", loc_err); rd32(terminal_in_0, terminal_out_0, VME_REGS + x"0000_0010", x"0000_0008", 1, en_msg_0, TRUE, "000001", loc_err);
err_sum := err_sum + loc_err; err_sum := err_sum + loc_err;
...@@ -5801,12 +5801,11 @@ PACKAGE BODY terminal_pkg IS ...@@ -5801,12 +5801,11 @@ PACKAGE BODY terminal_pkg IS
print(" start DMA transfer"); print(" start DMA transfer");
wr32(terminal_in_0, terminal_out_0, VME_REGS + x"0000_002c", x"0000_0003", 1, en_msg_0, TRUE, "000001"); -- start transfer wr32(terminal_in_0, terminal_out_0, VME_REGS + x"0000_002c", x"0000_0003", 1, en_msg_0, TRUE, "000001"); -- start transfer
-- check for DMA interrupt -- check for buserror interrupt
--wait_on_irq_assert(0);
bfm_calc_msi_expected( bfm_calc_msi_expected(
msi_allocated => var_msi_allocated, msi_allocated => var_msi_allocated,
msi_data => MSI_DATA_VAL, msi_data => MSI_DATA_VAL,
msi_nbr => irq_req_dma, msi_nbr => irq_req_berr,
msi_expected => var_msi_expected msi_expected => var_msi_expected
); );
var_success := false; var_success := false;
...@@ -5822,15 +5821,15 @@ PACKAGE BODY terminal_pkg IS ...@@ -5822,15 +5821,15 @@ PACKAGE BODY terminal_pkg IS
if en_msg_0 >= 1 then print_now("ERROR(vme_buserror): error while executing bfm_poll_msi()"); end if; if en_msg_0 >= 1 then print_now("ERROR(vme_buserror): error while executing bfm_poll_msi()"); end if;
end if; end if;
IF irq_req(irq_req_dma) = '0' THEN IF irq_req(irq_req_berr) = '0' THEN
print_time("ERROR vme_dma_sram2pci: dma irq NOT asserted"); print_time("ERROR vme_dma_sram2pci: buserror irq NOT asserted");
END IF; END IF;
-- check for buserror interrupt -- check for DMA interrupt
bfm_calc_msi_expected( bfm_calc_msi_expected(
msi_allocated => var_msi_allocated, msi_allocated => var_msi_allocated,
msi_data => MSI_DATA_VAL, msi_data => MSI_DATA_VAL,
msi_nbr => irq_req_berr, msi_nbr => irq_req_dma,
msi_expected => var_msi_expected msi_expected => var_msi_expected
); );
var_success := false; var_success := false;
...@@ -5846,8 +5845,8 @@ PACKAGE BODY terminal_pkg IS ...@@ -5846,8 +5845,8 @@ PACKAGE BODY terminal_pkg IS
if en_msg_0 >= 1 then print_now("ERROR(vme_buserror): error while executing bfm_poll_msi()"); end if; if en_msg_0 >= 1 then print_now("ERROR(vme_buserror): error while executing bfm_poll_msi()"); end if;
end if; end if;
IF irq_req(irq_req_berr) = '0' THEN IF irq_req(irq_req_dma) = '0' THEN
print_time("ERROR vme_dma_sram2pci: buserror irq NOT asserted"); print_time("ERROR vme_dma_sram2pci: dma irq NOT asserted");
END IF; END IF;
WAIT FOR 1 us; WAIT FOR 1 us;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment