X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fperipherals%2Fsdram%2Fsdr_top.bsv;h=20e69646baa1a285b8f2de26f3ee648db1f03e13;hb=999a00cb651c843fe869eb954f28b14e7329c7f2;hp=373fc9f3614b354719902d322ad2af44da08e29a;hpb=a30dd6bb25eea95e9175346f97b00f85a01e17a5;p=shakti-peripherals.git diff --git a/src/peripherals/sdram/sdr_top.bsv b/src/peripherals/sdram/sdr_top.bsv index 373fc9f..20e6964 100644 --- a/src/peripherals/sdram/sdr_top.bsv +++ b/src/peripherals/sdram/sdr_top.bsv @@ -31,12 +31,12 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND `define SDR_INIT_DONE 8'h58 `define SDR_WIDTH 8'h60 `define SDR_COLBITS 8'h68 -`define SDR_SDIO_CTRL 8'h70 `define SDR_CLK_DELAY 8'h78 `define verbose package sdr_top; +import GetPut:: *; import Semi_FIFOF :: *; import AXI4_Types :: *; import AXI4_Fabric :: *; @@ -61,9 +61,8 @@ interface Ifc_sdram_out; interface Get#(Bit#(8)) osdr_dqm; interface Get#(Bit#(2)) osdr_ba; interface Get#(Bit#(13)) osdr_addr; + interface Get#(Bit#(1)) osdr_clock; - method Bit#(9) sdram_sdio_ctrl; - interface Clock sdram_clk; endinterface interface Ifc_sdr_slave; @@ -266,7 +265,6 @@ module mksdr_axi4_slave#(Clock clk0) (Ifc_sdr_slave); Reg#(Bit#(4)) rg_cfg_sdr_twr_d <- mkConfigReg(4'h1,clocked_by clk0, reset_by rst0); Reg#(Bit#(2)) rg_cfg_sdr_width <- mkConfigReg(2'b0,clocked_by clk0, reset_by rst0); Reg#(Bit#(2)) rg_cfg_colbits <- mkConfigReg(2'b01,clocked_by clk0, reset_by rst0); - Reg#(Bit#(9)) rg_cfg_sdio_ctrl <- mkConfigReg(9'b000100011,clocked_by clk0, reset_by rst0); Reg#(Bit#(8)) rg_cfg_sdr_clk_delay <- mkConfigReg(8'b00001000,clocked_by clk0, reset_by rst0); Reg#(Bit#(`SDR_RFSH_TIMER_W )) rg_cfg_sdr_rfsh <- mkConfigReg(12'h100,clocked_by clk0, reset_by rst0); @@ -373,7 +371,6 @@ module mksdr_axi4_slave#(Clock clk0) (Ifc_sdr_slave); `SDR_COLBITS : rg_cfg_colbits <= data [1:0]; - `SDR_SDIO_CTRL : rg_cfg_sdio_ctrl <= data [8:0]; `SDR_CLK_DELAY : rg_cfg_sdr_clk_delay <= data [7:0]; @@ -414,7 +411,6 @@ module mksdr_axi4_slave#(Clock clk0) (Ifc_sdr_slave); `SDR_COLBITS : return extend(rg_cfg_colbits); - `SDR_SDIO_CTRL : return extend(rg_cfg_sdio_ctrl); `SDR_CLK_DELAY : return extend(rg_cfg_sdr_clk_delay); @@ -761,7 +757,7 @@ module mksdr_axi4_slave#(Clock clk0) (Ifc_sdr_slave); interface Ifc_sdram_out ifc_sdram_out; interface ipad_sdr_din = interface Put - method Action put(Bit#(64) in) + method Action put(Bit#(64) in); sdr_cntrl.ipad_sdr_din <= in; endmethod endinterface; @@ -830,13 +826,13 @@ module mksdr_axi4_slave#(Clock clk0) (Ifc_sdr_slave); endmethod endinterface; - interface sdram_clk = clk0; - method Bit#(9) sdram_sdio_ctrl(); - return rg_cfg_sdio_ctrl; - endmethod + interface osdr_clock = interface Get + method ActionValue#(Bit#(1)) get; + return ?; + endmethod + endinterface; endinterface - interface axi4_slave_sdram = s_xactor_sdram.axi_side; interface axi4_slave_cntrl_reg = s_xactor_cntrl_reg.axi_side;