add experimental LiteDRAM package
This commit is contained in:
parent
4c7ca4a8d1
commit
4af5e6fb9e
38
cores/litedram.nix
Normal file
38
cores/litedram.nix
Normal file
@ -0,0 +1,38 @@
|
||||
{ stdenv, fetchFromGitHub, python3Packages, litex }:
|
||||
|
||||
python3Packages.buildPythonPackage {
|
||||
name = "litedram";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "enjoy-digital";
|
||||
repo = "litedram";
|
||||
rev = "7fbe0b712ceda5bcc526a55a5c9c071eb21eb90e";
|
||||
sha256 = "0qfz0qkxkqjxn523chh2g3375wfwmljcahxqr27098pk618v0n8s";
|
||||
};
|
||||
|
||||
patchPhase =
|
||||
''
|
||||
rm examples/litedram_gen.py
|
||||
rm test/test_examples.py
|
||||
|
||||
# FIXME: this spews out a lot of irrelevant "pattern doesn't match anything" warnings
|
||||
for file in `find test litedram -name "*.py"`; do
|
||||
substituteInPlace "$file" \
|
||||
--replace "from litex.gen.sim import *" "" \
|
||||
--replace "from migen.genlib.roundrobin import *" "from litex.roundrobin import *" \
|
||||
--replace migen nmigen.compat
|
||||
done
|
||||
'';
|
||||
|
||||
# some tests fail at the moment, fix and re-enable later
|
||||
doCheck = false;
|
||||
|
||||
propagatedBuildInputs = [ litex ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "LiteDRAM memory controller (via nMigen compatibility mode)";
|
||||
homepage = "http://enjoy-digital.fr";
|
||||
license = licenses.bsd2;
|
||||
maintainers = [ maintainers.sb0 ];
|
||||
};
|
||||
}
|
@ -15,6 +15,7 @@ rec {
|
||||
scalaToRun = "vexriscv.demo.GenSmallAndProductive";
|
||||
};
|
||||
litex = pkgs.callPackage ./cores/litex.nix { inherit nmigen; };
|
||||
litedram = pkgs.callPackage ./cores/litedram.nix { inherit litex; };
|
||||
|
||||
heavycomps = pkgs.callPackage ./heavycomps.nix { inherit nmigen; };
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user