Commit 18f4a937 authored by Andrey Filippov's avatar Andrey Filippov

updated from x393_sata, fixed behavior after desk errors. Matching x393_sata bitsteram version 0x0b

parent 8e6d42b4
...@@ -2,6 +2,6 @@ ...@@ -2,6 +2,6 @@
, .INIT_08 (256'h000000000024000600000000000000000000000080000C000000000080000800) , .INIT_08 (256'h000000000024000600000000000000000000000080000C000000000080000800)
, .INIT_09 (256'h000000000000000000000000000000000000000000000000FFFFFFFF00000000) , .INIT_09 (256'h000000000000000000000000000000000000000000000000FFFFFFFF00000000)
, .INIT_0B (256'h0000000000000000000000000000003300000000000000000000000000000000) , .INIT_0B (256'h0000000000000000000000000000003300000000000000000000000000000000)
, .INIT_0C (256'h000000000000000000000000000000000000000001010002001000000001FFFE) , .INIT_0C (256'h00000000000000000000000000000000000000000101000B001000000001FFFE)
, .INIT_0D (256'h000001000000000000000040000000000001FFFE000000008000000000000000) , .INIT_0D (256'h000001000000000000000040000000000001FFFE000000008000000000000000)
, .INIT_0E (256'h0000000000000000000000000000000000000000000000000000000040000001) , .INIT_0E (256'h0000000000000000000000000000000000000000000000000000000040000001)
...@@ -97,7 +97,7 @@ ...@@ -97,7 +97,7 @@
// RO: HBA Revision ID // RO: HBA Revision ID
localparam PCI_Header__RID__RID__ADDR = 'h62; localparam PCI_Header__RID__RID__ADDR = 'h62;
localparam PCI_Header__RID__RID__MASK = 'hff; localparam PCI_Header__RID__RID__MASK = 'hff;
localparam PCI_Header__RID__RID__DFLT = 'h2; localparam PCI_Header__RID__RID__DFLT = 'hb;
// RO: Base Class Code: 1 - Mass Storage Device // RO: Base Class Code: 1 - Mass Storage Device
localparam PCI_Header__CC__BCC__ADDR = 'h62; localparam PCI_Header__CC__BCC__ADDR = 'h62;
localparam PCI_Header__CC__BCC__MASK = 'hff000000; localparam PCI_Header__CC__BCC__MASK = 'hff000000;
......
...@@ -498,7 +498,7 @@ localparam PxCMD_MASK = HBA_PORT__PxCMD__ICC__MASK | // 'hf0000000; ...@@ -498,7 +498,7 @@ localparam PxCMD_MASK = HBA_PORT__PxCMD__ICC__MASK | // 'hf0000000;
else if (swr_HBA_PORT__PxCI) pxci0_r <= soft_write_data[0]; else if (swr_HBA_PORT__PxCI) pxci0_r <= soft_write_data[0];
end end
// HBA_PORT__PxCMD register - different behaviors of differtnt fields // HBA_PORT__PxCMD register - different behaviors of different fields
// use PxCMD_MASK to prevent generation of unneeded register bits // use PxCMD_MASK to prevent generation of unneeded register bits
always @(posedge mclk) begin always @(posedge mclk) begin
......
...@@ -394,7 +394,9 @@ module ahci_fsm ...@@ -394,7 +394,9 @@ module ahci_fsm
if (fsm_actions && fsm_next) was_last_action_r <= fsm_last_act_w; if (fsm_actions && fsm_next) was_last_action_r <= fsm_last_act_w;
if (hba_rst || pre_jump_w) fsm_transitions <= 0; //// if (hba_rst || pre_jump_w) fsm_transitions <= 0;
/// 2016.12.07 jumps were not disabled after async transitions, they came from the previously executed code
if (hba_rst || pre_jump_w || dis_actions) fsm_transitions <= 0;
else if (fsm_transitions_w) fsm_transitions <= 1; else if (fsm_transitions_w) fsm_transitions <= 1;
// else if ((fsm_last_act_w && fsm_actions && fsm_next && !fsm_wait_act_w) || // else if ((fsm_last_act_w && fsm_actions && fsm_next && !fsm_wait_act_w) ||
// (fsm_act_busy && fsm_act_done && was_last_action_r) ) fsm_transitions <= 1; // (fsm_act_busy && fsm_act_done && was_last_action_r) ) fsm_transitions <= 1;
......
...@@ -332,7 +332,8 @@ module axi_ahci_regs#( ...@@ -332,7 +332,8 @@ module axi_ahci_regs#(
end end
always @ (hba_clk) begin //// always @ (hba_clk) begin
always @ (posedge aclk) begin
was_hba_rst_r <= {was_hba_rst_aclk, was_hba_rst_r[2:1]}; was_hba_rst_r <= {was_hba_rst_aclk, was_hba_rst_r[2:1]};
was_port_rst_r <= {was_port_rst_aclk, was_port_rst_r[2:1]}; was_port_rst_r <= {was_port_rst_aclk, was_port_rst_r[2:1]};
end end
......
/*! /*!
* <b>Module:</b>action_decoder * <b>Module:</b>action_decoder
* @file action_decoder.v * @file action_decoder.v
* @date 2016-03-12 * @date 2016-12-08
* @author auto-generated file, see ahci_fsm_sequence_old.py * @author auto-generated file, see ahci_fsm_sequence.py
* * @brief Decode sequencer code to 1-hot actions
* @brief Decode sequencer code to 1-hot actions
*/ */
`timescale 1ns/1ps `timescale 1ns/1ps
......
/*! /*!
* <b>Module:</b>condition_mux * <b>Module:</b>condition_mux
* @file condition_mux.v * @file condition_mux.v
* @date 2016-03-12 * @date 2016-12-08
* @author auto-generated file, see ahci_fsm_sequence_old.py * @author auto-generated file, see ahci_fsm_sequence.py
* * @brief Select condition
* @brief Select condition
*/ */
`timescale 1ns/1ps `timescale 1ns/1ps
......
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