Compare commits

...

5 Commits

Author SHA1 Message Date
b332d72c5e mirny: update latest release to 0.3.1 2024-09-25 11:49:56 +08:00
c7cafe6e61 Temporary upload website to intl with m-labs.hk
Signed-off-by: Egor Savkin <es@m-labs.hk>
2024-08-14 16:49:08 +08:00
e9432e25cb gluelogic: update vivado 2024-07-28 11:54:28 +08:00
3ec9d18b58 Build website for m-labs-intl domain
Signed-off-by: Egor Savkin <es@m-labs.hk>
2024-07-19 17:23:53 +08:00
938f48d392 mcu: update rust 2024-06-21 13:59:09 +08:00
5 changed files with 10 additions and 55 deletions

View File

@ -58,12 +58,12 @@ in
src = <mirnySrc>; src = <mirnySrc>;
}; };
mirny-cpld-release = buildMirnyCpld rec { mirny-cpld-release = buildMirnyCpld rec {
version = "0.3"; version = "0.3.1";
src = pkgs.fetchFromGitHub { src = pkgs.fetchFromGitHub {
owner = "quartiq"; owner = "quartiq";
repo = "mirny"; repo = "mirny";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-u1iXcbGX6JkVgfpnCbkyTOVoMYnYcSufLBb6OBAeu8c="; sha256 = "sha256-FbPUgXcUByEnczbnDCh8wYPO+rpSZSAabG1rtvA7mIs=";
}; };
}; };
mirny-cpld-legacy-almazny = buildMirnyCpld rec { mirny-cpld-legacy-almazny = buildMirnyCpld rec {
@ -76,16 +76,6 @@ in
}; };
patchPhase = "patch -p1 < ${./mirny-legacy-almazny.diff}"; patchPhase = "patch -p1 < ${./mirny-legacy-almazny.diff}";
}; };
mirny-cpld-almazny = buildMirnyCpld rec {
version = "0.3";
src = pkgs.fetchFromGitHub {
owner = "quartiq";
repo = "mirny";
rev = "v${version}";
sha256 = "sha256-u1iXcbGX6JkVgfpnCbkyTOVoMYnYcSufLBb6OBAeu8c=";
};
patchPhase = "patch -p1 < ${./mirny-almazny.diff}";
};
fastino-fpga = pkgs.stdenv.mkDerivation { fastino-fpga = pkgs.stdenv.mkDerivation {
name = "fastino-fpga"; name = "fastino-fpga";
src = <fastinoSrc>; src = <fastinoSrc>;

View File

@ -1,4 +1,4 @@
{ pkgs, isePath ? "/opt/Xilinx/14.7/ISE_DS", vivadoPath ? "/opt/Xilinx/Vivado/2021.2" }: { pkgs, isePath ? "/opt/Xilinx/14.7/ISE_DS", vivadoPath ? "/opt/Xilinx/Vivado/2022.2" }:
rec { rec {
ise = let ise = let
makeXilinxEnv = name: pkgs.buildFHSUserEnv { makeXilinxEnv = name: pkgs.buildFHSUserEnv {

View File

@ -1,40 +0,0 @@
diff --git a/mirny.py b/mirny.py
index 6c041de..73991b1 100644
--- a/mirny.py
+++ b/mirny.py
@@ -135,7 +135,7 @@ class SR(Module):
)
]
- def connect_ext(self, ext, adr, mask):
+ def connect_ext(self, ext, adr, mask, sdi_passthrough=False):
adr &= mask
self._check_intersection(adr, mask)
self._slaves.append((ext, adr, mask))
@@ -146,12 +146,16 @@ class SR(Module):
stb.ce.eq(self.bus.re),
# don't glitch with &stb.o
ext.sck.eq(self.ext.sck),
- ext.sdi.eq(self.ext.sdi & stb.o),
ext.cs.eq(stb.o),
If(stb.o,
self.ext.sdo.eq(ext.sdo),
),
]
+ # Almazny shares one SDI with 4 devices, it cannot be masked by stb
+ if sdi_passthrough:
+ self.comb += ext.sdi.eq(self.ext.sdi)
+ else:
+ self.comb += ext.sdi.eq(self.ext.sdi & stb.o),
def intersection(a, b):
@@ -360,7 +364,7 @@ class Mirny(Module):
]
ext = Record(ext_layout)
- self.sr.connect_ext(ext, adr=i + 12, mask=mask)
+ self.sr.connect_ext(ext, adr=i + 12, mask=mask, sdi_passthrough=True)
self.comb += [
mezz[i + 3].oe.eq(1),
mezz[i + 3].o.eq(~ext.cs), # Almazny REG_LATCH

View File

@ -8,8 +8,8 @@ let
"thumbv7em-none-eabihf" "thumbv7em-none-eabihf"
]; ];
rustManifest = pkgs.fetchurl { rustManifest = pkgs.fetchurl {
url = "https://static.rust-lang.org/dist/2023-12-07/channel-rust-stable.toml"; url = "https://static.rust-lang.org/dist/2024-06-13/channel-rust-stable.toml";
sha256 = "sha256-PjvuouwTsYfNKW5Vi5Ye7y+lL7SsWGBxCtBOOm2z14c="; sha256 = "sha256-Ngiz76YP4HTY75GGdH2P+APE/DEIx2R/Dn+BwwOyzZU=";
}; };
rustChannelOfTargets = _channel: _date: targets: rustChannelOfTargets = _channel: _date: targets:
(pkgs.lib.rustLib.fromManifestFile rustManifest { (pkgs.lib.rustLib.fromManifestFile rustManifest {

View File

@ -5,6 +5,11 @@ let
in in
rec { rec {
web = pkgs.runCommand "web" {} "cd ${web-src}; ${pkgs.zola}/bin/zola build -o $out"; web = pkgs.runCommand "web" {} "cd ${web-src}; ${pkgs.zola}/bin/zola build -o $out";
web-intl = pkgs.runCommand "web-intl" {}
''
cd ${web-src}
DOMAINNAME=m-labs.hk ${pkgs.zola}/bin/zola build -o $out
'';
sphinxcontrib-platformpicker = pkgs.python3Packages.buildPythonPackage rec { sphinxcontrib-platformpicker = pkgs.python3Packages.buildPythonPackage rec {
pname = "sphinxcontrib-platformpicker"; pname = "sphinxcontrib-platformpicker";
version = "1.3"; version = "1.3";