mirror of
https://github.com/retroSoC/retroSoC.git
synced 2026-11-04 22:32:36 +00:00
- Updated to include support for the ICS55 PDK, allowing for conditional source inputs and configuration checks. - Added new test cases for the ICS55 platform, including PLL backend and GPIO readback functionality. - Modified existing tests to accommodate changes in configuration and source input handling. - Introduced new parameters in the testbench for better configurability. - Ensured compatibility checks for the IHP130 and ICS55 PDKs in the feasibility script. - Enhanced the publication tests to validate hardware changes more robustly.
40 lines
1.3 KiB
Python
40 lines
1.3 KiB
Python
#!/usr/bin/env python3
|
|
"""Prepare only the locked inputs used by the Tiny MCU."""
|
|
|
|
from __future__ import annotations
|
|
|
|
import argparse
|
|
import subprocess
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
ROOT = Path(__file__).resolve().parents[1]
|
|
sys.path.insert(0, str(ROOT))
|
|
from scripts.dependency_lock import source # noqa: E402
|
|
from scripts.setup_helpers import ensure_git_repo # noqa: E402
|
|
|
|
TINY_SOURCES = (
|
|
"hazard3", "cluster_common", "cluster_archinfo", "cluster_pwm",
|
|
"cluster_rtc", "cluster_wdg", "pdk_ihp130",
|
|
)
|
|
|
|
|
|
def main() -> int:
|
|
parser = argparse.ArgumentParser(description=__doc__)
|
|
parser.add_argument("--update", action="store_true")
|
|
parser.add_argument("--pdk", choices=("IHP130", "ICS55"), default="ICS55")
|
|
args = parser.parse_args()
|
|
for name in (name for name in TINY_SOURCES if not name.startswith("pdk_")):
|
|
dependency = source(name)
|
|
ensure_git_repo(
|
|
dependency["url"], ROOT / dependency["destination"], dependency["revision"],
|
|
recursive=dependency.get("recursive", False), update=args.update,
|
|
)
|
|
subprocess.run([sys.executable, str(ROOT / "physical/pdk/setup.py"), "--pdk", args.pdk,
|
|
*(["--update"] if args.update else [])], check=True)
|
|
return 0
|
|
|
|
|
|
if __name__ == "__main__":
|
|
raise SystemExit(main())
|