forked from M-Labs/artiq
conda: split RTM and AMC packages back.
This avoids multiplying the RTM compilation time by the number of AMC packages.
This commit is contained in:
parent
11a8b84355
commit
885ab40946
|
@ -151,8 +151,8 @@ def main():
|
||||||
if action == "build":
|
if action == "build":
|
||||||
logger.info("Building target")
|
logger.info("Building target")
|
||||||
if args.target == "sayma":
|
if args.target == "sayma":
|
||||||
build("sayma_rtm", output_dir=build_dir("rtm"))
|
build("sayma_rtm", output_dir=build_dir("rtm_gateware"))
|
||||||
build("sayma_amc", "--rtm-csr-csv", build_dir("rtm", "rtm_csr.csv"))
|
build("sayma_amc", "--rtm-csr-csv", build_dir("rtm_gateware", "rtm_csr.csv"))
|
||||||
else:
|
else:
|
||||||
build(args.target)
|
build(args.target)
|
||||||
|
|
||||||
|
|
|
@ -329,7 +329,7 @@ def main():
|
||||||
programmer.write_binary(*config["firmware"], firmware_fbi)
|
programmer.write_binary(*config["firmware"], firmware_fbi)
|
||||||
elif action == "load":
|
elif action == "load":
|
||||||
if args.target == "sayma":
|
if args.target == "sayma":
|
||||||
rtm_gateware_bit = artifact_path("rtm", "rtm.bit")
|
rtm_gateware_bit = artifact_path("rtm_gateware", "rtm.bit")
|
||||||
programmer.load(rtm_gateware_bit, 0)
|
programmer.load(rtm_gateware_bit, 0)
|
||||||
gateware_bit = artifact_path("gateware", "top.bit")
|
gateware_bit = artifact_path("gateware", "top.bit")
|
||||||
programmer.load(gateware_bit, 1)
|
programmer.load(gateware_bit, 1)
|
||||||
|
|
|
@ -445,7 +445,7 @@ def main():
|
||||||
"standalone/master/satellite "
|
"standalone/master/satellite "
|
||||||
"(default: %(default)s)")
|
"(default: %(default)s)")
|
||||||
parser.add_argument("--rtm-csr-csv",
|
parser.add_argument("--rtm-csr-csv",
|
||||||
default=os.path.join("artiq_sayma", "rtm", "rtm_csr.csv"),
|
default=os.path.join("artiq_sayma", "rtm_gateware", "rtm_csr.csv"),
|
||||||
help="CSV file listing remote CSRs on RTM (default: %(default)s)")
|
help="CSV file listing remote CSRs on RTM (default: %(default)s)")
|
||||||
parser.add_argument("--without-sawg",
|
parser.add_argument("--without-sawg",
|
||||||
default=False, action="store_true",
|
default=False, action="store_true",
|
||||||
|
|
|
@ -190,7 +190,7 @@ class SaymaRTM(Module):
|
||||||
def main():
|
def main():
|
||||||
parser = argparse.ArgumentParser(
|
parser = argparse.ArgumentParser(
|
||||||
description="ARTIQ device binary builder for Kasli systems")
|
description="ARTIQ device binary builder for Kasli systems")
|
||||||
parser.add_argument("--output-dir", default="artiq_sayma/rtm",
|
parser.add_argument("--output-dir", default="artiq_sayma/rtm_gateware",
|
||||||
help="output directory for generated "
|
help="output directory for generated "
|
||||||
"source files and binaries")
|
"source files and binaries")
|
||||||
parser.add_argument("--no-compile-gateware", action="store_true",
|
parser.add_argument("--no-compile-gateware", action="store_true",
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
RTM_PREFIX=$SP_DIR/artiq/binaries/sayma_rtm
|
||||||
|
|
||||||
SOC_PREFIX=$PREFIX/lib/python3.5/site-packages/artiq/binaries/sayma-standalone
|
SOC_PREFIX=$PREFIX/lib/python3.5/site-packages/artiq/binaries/sayma-standalone
|
||||||
mkdir -p $SOC_PREFIX
|
mkdir -p $SOC_PREFIX
|
||||||
|
|
||||||
$PYTHON -m artiq.gateware.targets.sayma_rtm
|
|
||||||
cp artiq_sayma/rtm_gateware/rtm.bit $SOC_PREFIX
|
|
||||||
|
|
||||||
$PYTHON -m artiq.gateware.targets.sayma_amc -V standalone \
|
$PYTHON -m artiq.gateware.targets.sayma_amc -V standalone \
|
||||||
--rtm-csr-csv artiq_sayma/rtm/sayma_rtm_csr.csv
|
--rtm-csr-csv $RTM_PREFIX/rtm_csr.csv
|
||||||
cp artiq_sayma/gateware/top.bit $SOC_PREFIX
|
cp artiq_sayma/gateware/top.bit $SOC_PREFIX
|
||||||
cp artiq_sayma/software/bootloader/bootloader.bin $SOC_PREFIX
|
cp artiq_sayma/software/bootloader/bootloader.bin $SOC_PREFIX
|
||||||
cp artiq_sayma/software/runtime/runtime.{elf,fbi} $SOC_PREFIX
|
cp artiq_sayma/software/runtime/runtime.{elf,fbi} $SOC_PREFIX
|
||||||
|
cp $RTM_PREFIX/rtm.bit $SOC_PREFIX
|
||||||
|
|
|
@ -14,10 +14,11 @@ build:
|
||||||
requirements:
|
requirements:
|
||||||
build:
|
build:
|
||||||
- artiq-dev {{ "{tag} py_{number}+git{hash}".format(tag=environ.get("GIT_DESCRIBE_TAG"), number=environ.get("GIT_DESCRIBE_NUMBER"), hash=environ.get("GIT_FULL_HASH", "")[:8]) if "GIT_DESCRIBE_TAG" in environ else "" }}
|
- artiq-dev {{ "{tag} py_{number}+git{hash}".format(tag=environ.get("GIT_DESCRIBE_TAG"), number=environ.get("GIT_DESCRIBE_NUMBER"), hash=environ.get("GIT_FULL_HASH", "")[:8]) if "GIT_DESCRIBE_TAG" in environ else "" }}
|
||||||
|
- artiq-sayma_rtm {{ "{tag} py_{number}+git{hash}".format(tag=environ.get("GIT_DESCRIBE_TAG"), number=environ.get("GIT_DESCRIBE_NUMBER"), hash=environ.get("GIT_FULL_HASH", "")[:8]) if "GIT_DESCRIBE_TAG" in environ else "" }}
|
||||||
run:
|
run:
|
||||||
- artiq {{ "{tag} py_{number}+git{hash}".format(tag=environ.get("GIT_DESCRIBE_TAG"), number=environ.get("GIT_DESCRIBE_NUMBER"), hash=environ.get("GIT_FULL_HASH", "")[:8]) if "GIT_DESCRIBE_TAG" in environ else "" }}
|
- artiq {{ "{tag} py_{number}+git{hash}".format(tag=environ.get("GIT_DESCRIBE_TAG"), number=environ.get("GIT_DESCRIBE_NUMBER"), hash=environ.get("GIT_FULL_HASH", "")[:8]) if "GIT_DESCRIBE_TAG" in environ else "" }}
|
||||||
|
|
||||||
about:
|
about:
|
||||||
home: https://m-labs.hk/artiq
|
home: https://m-labs.hk/artiq
|
||||||
license: LGPL
|
license: LGPL
|
||||||
summary: 'AMC and RTM bitstream, BIOS and runtime for stand-alone Sayma AMC'
|
summary: 'Bitstream, BIOS and runtime for stand-alone Sayma AMC'
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
SOC_PREFIX=$PREFIX/lib/python3.5/site-packages/artiq/binaries/sayma_rtm
|
||||||
|
mkdir -p $SOC_PREFIX
|
||||||
|
|
||||||
|
$PYTHON -m artiq.gateware.targets.sayma_rtm
|
||||||
|
cp artiq_sayma/rtm/rtm.bit $SOC_PREFIX
|
||||||
|
cp artiq_sayma/rtm/rtm_csr.csv $SOC_PREFIX
|
|
@ -0,0 +1,23 @@
|
||||||
|
package:
|
||||||
|
name: artiq-sayma_rtm
|
||||||
|
version: {{ environ.get("GIT_DESCRIBE_TAG", "") }}
|
||||||
|
|
||||||
|
source:
|
||||||
|
git_url: ../..
|
||||||
|
|
||||||
|
build:
|
||||||
|
noarch: python
|
||||||
|
ignore_prefix_files: True
|
||||||
|
number: {{ environ.get("GIT_DESCRIBE_NUMBER", 0) }}
|
||||||
|
string: py_{{ environ.get("GIT_DESCRIBE_NUMBER", 0) }}+git{{ environ.get("GIT_FULL_HASH", "")[:8] }}
|
||||||
|
|
||||||
|
requirements:
|
||||||
|
build:
|
||||||
|
- artiq-dev {{ "{tag} py_{number}+git{hash}".format(tag=environ.get("GIT_DESCRIBE_TAG"), number=environ.get("GIT_DESCRIBE_NUMBER"), hash=environ.get("GIT_FULL_HASH", "")[:8]) if "GIT_DESCRIBE_TAG" in environ else "" }}
|
||||||
|
run:
|
||||||
|
- artiq {{ "{tag} py_{number}+git{hash}".format(tag=environ.get("GIT_DESCRIBE_TAG"), number=environ.get("GIT_DESCRIBE_NUMBER"), hash=environ.get("GIT_FULL_HASH", "")[:8]) if "GIT_DESCRIBE_TAG" in environ else "" }}
|
||||||
|
|
||||||
|
about:
|
||||||
|
home: https://m-labs.hk/artiq
|
||||||
|
license: LGPL
|
||||||
|
summary: 'Bitstream and CSR map for Sayma RTM'
|
Loading…
Reference in New Issue