Compare commits
2 commits
6f78ac5068
...
c0857403b8
Author | SHA1 | Date | |
---|---|---|---|
|
c0857403b8 | ||
|
278b82d662 |
38
flake.nix
38
flake.nix
|
@ -55,6 +55,10 @@
|
||||||
|
|
||||||
checks = forAllSystems (pkgs: {
|
checks = forAllSystems (pkgs: {
|
||||||
formatting = treefmtEval.${pkgs.system}.config.build.check self;
|
formatting = treefmtEval.${pkgs.system}.config.build.check self;
|
||||||
|
packages = pkgs.symlinkJoin {
|
||||||
|
name = "all";
|
||||||
|
paths = pkgs.lib.attrsets.attrValues self.packages.${pkgs.system};
|
||||||
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
# this is mainly so that nix-update works. I have no idea if this works without it.
|
# this is mainly so that nix-update works. I have no idea if this works without it.
|
||||||
|
@ -66,39 +70,5 @@
|
||||||
path = ./templates/default;
|
path = ./templates/default;
|
||||||
description = "basic template to get started with an ecp5";
|
description = "basic template to get started with an ecp5";
|
||||||
};
|
};
|
||||||
|
|
||||||
# example, not really something you should import unless you want everything.
|
|
||||||
devShells = forAllSystems (pkgs: {
|
|
||||||
default = pkgs.mkShell {
|
|
||||||
packages = with pkgs; [
|
|
||||||
(python3.withPackages (
|
|
||||||
ps: with ps; [
|
|
||||||
cocotb
|
|
||||||
cocotb-bus
|
|
||||||
litex
|
|
||||||
litedram
|
|
||||||
liteeth
|
|
||||||
litescope
|
|
||||||
litespi
|
|
||||||
liteiclink
|
|
||||||
pythondata-cpu-vexriscv
|
|
||||||
pythondata-software-compiler_rt
|
|
||||||
pythondata-software-picolibc
|
|
||||||
amaranth
|
|
||||||
]
|
|
||||||
))
|
|
||||||
yosys
|
|
||||||
nextpnr
|
|
||||||
# simulators
|
|
||||||
verilog
|
|
||||||
verilator
|
|
||||||
# support package
|
|
||||||
trellis
|
|
||||||
# loader
|
|
||||||
openfpgaloader
|
|
||||||
ecpdap # easier to poke probes.
|
|
||||||
];
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,13 +7,13 @@
|
||||||
}:
|
}:
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "litedram";
|
pname = "litedram";
|
||||||
version = "2023.12";
|
version = "2024.12";
|
||||||
|
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "enjoy-digital";
|
owner = "enjoy-digital";
|
||||||
repo = "litedram";
|
repo = "litedram";
|
||||||
rev = "${version}";
|
rev = "${version}";
|
||||||
hash = "sha256-EaUszy0v6r5sKM5d5YmpRbR8Cf9xITObU71zUpg9cLU=";
|
hash = "sha256-IlqaB6zocfo5MCvmNJYdsNOuLjz07f3yTwL/wTqPq8E=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
@ -21,8 +21,5 @@ buildPythonPackage rec {
|
||||||
migen
|
migen
|
||||||
];
|
];
|
||||||
|
|
||||||
checkPhase = ''
|
|
||||||
python -m unittest test
|
|
||||||
'';
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,9 @@
|
||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
lib,
|
|
||||||
buildPythonPackage,
|
buildPythonPackage,
|
||||||
migen,
|
migen,
|
||||||
setuptools,
|
|
||||||
litex,
|
litex,
|
||||||
|
litespi,
|
||||||
pyyaml,
|
pyyaml,
|
||||||
}:
|
}:
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
|
@ -27,11 +26,9 @@ buildPythonPackage rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeCheckInputs = [
|
nativeCheckInputs = [
|
||||||
|
litespi
|
||||||
pyyaml
|
pyyaml
|
||||||
];
|
];
|
||||||
|
|
||||||
checkPhase = ''
|
|
||||||
python -m unittest test
|
|
||||||
'';
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,24 +2,33 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
buildPythonPackage,
|
buildPythonPackage,
|
||||||
litex,
|
litex,
|
||||||
|
migen,
|
||||||
|
liteeth,
|
||||||
|
pytest,
|
||||||
}:
|
}:
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "liteiclink";
|
pname = "liteiclink";
|
||||||
version = "2023.12";
|
version = "2024.12";
|
||||||
|
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "enjoy-digital";
|
owner = "enjoy-digital";
|
||||||
repo = "liteiclink";
|
repo = "liteiclink";
|
||||||
rev = "${version}";
|
rev = "${version}";
|
||||||
hash = "sha256-5Hp5vFqmfkXo1q60FvOkToTy952svirChIPIvkam04M=";
|
hash = "sha256-eWetbj6nhaNS8PsQlkwAZ4MCgHy9CIgJBP8u4AP884M=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
litex
|
litex
|
||||||
|
migen
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeCheckInputs = [
|
||||||
|
pytest
|
||||||
|
liteeth
|
||||||
];
|
];
|
||||||
|
|
||||||
checkPhase = ''
|
checkPhase = ''
|
||||||
python -m unittest test
|
pytest -v test/
|
||||||
'';
|
'';
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,28 +1,24 @@
|
||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
lib,
|
|
||||||
buildPythonPackage,
|
buildPythonPackage,
|
||||||
migen,
|
migen,
|
||||||
setuptools,
|
|
||||||
litex,
|
litex,
|
||||||
}:
|
}:
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "litescope";
|
pname = "litescope";
|
||||||
version = "2023.12";
|
version = "2024.12";
|
||||||
|
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "enjoy-digital";
|
owner = "enjoy-digital";
|
||||||
repo = "litescope";
|
repo = "litescope";
|
||||||
rev = "${version}";
|
rev = "${version}";
|
||||||
hash = "sha256-OWC+XwB+BzlCQkPKJCbQ0W4T6JbsInldrn9jYYjWypM=";
|
hash = "sha256-BlDEiM65oOLTc6nXYNyBPn+XLni6EhRdNjkZgs+gDwE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
litex
|
litex
|
||||||
|
migen
|
||||||
];
|
];
|
||||||
|
|
||||||
checkPhase = ''
|
|
||||||
python -m unittest test
|
|
||||||
'';
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,13 +8,13 @@
|
||||||
}:
|
}:
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "litespi";
|
pname = "litespi";
|
||||||
version = "2023.12";
|
version = "2024.12";
|
||||||
|
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "litex-hub";
|
owner = "litex-hub";
|
||||||
repo = "litespi";
|
repo = "litespi";
|
||||||
rev = "${version}";
|
rev = "${version}";
|
||||||
hash = "sha256-XYeWokF1IGtZWRK+6jhRSN91MOV5vyh5aO08sbtFBxw=";
|
hash = "sha256-BiRyYCysr7Sb/XPYzUz8vSKtEmRz/p/2RMxX8Bmyrd4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
@ -28,8 +28,5 @@ buildPythonPackage rec {
|
||||||
nativeCheckInputs = [
|
nativeCheckInputs = [
|
||||||
];
|
];
|
||||||
|
|
||||||
checkPhase = ''
|
|
||||||
python -m unittest test
|
|
||||||
'';
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,13 +4,13 @@
|
||||||
}:
|
}:
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pythondata-cpu-vexriscv";
|
pname = "pythondata-cpu-vexriscv";
|
||||||
version = "2023.12";
|
version = "2024.12";
|
||||||
|
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "litex-hub";
|
owner = "litex-hub";
|
||||||
repo = "pythondata-cpu-vexriscv";
|
repo = "pythondata-cpu-vexriscv";
|
||||||
rev = "${version}";
|
rev = "${version}";
|
||||||
hash = "sha256-1RgwJCYxtiP5dfRHulfTNBgu6fum6RfoqkbFIlRTgKI=";
|
hash = "sha256-wkdKTODOu83hCsBTcH+5skNlHr6ypuUu04Tyop4PrEc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
}:
|
}:
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pythondata-software-compiler_rt";
|
pname = "pythondata-software-compiler_rt";
|
||||||
version = "2023.12";
|
version = "2024.12";
|
||||||
|
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "litex-hub";
|
owner = "litex-hub";
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
}:
|
}:
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pythondata-software-picolibc";
|
pname = "pythondata-software-picolibc";
|
||||||
version = "2023.12";
|
version = "2024.12";
|
||||||
|
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "litex-hub";
|
owner = "litex-hub";
|
||||||
|
|
Loading…
Reference in a new issue