Files
retroSoC/tests/test_tech_cell_config.py
T
maksyuki 7a604ec86b feat: refactor NMI interface and remove unused variables
- Removed CORE and IP variables from common.tcl and synth.tcl scripts.
- Updated yosys.mk to exclude CORE and IP from environment variables.
- Modified bus_fault_tb to enhance NMI interface with management and user NMI signals.
- Added user access denial handling in bus_fault_tb.
- Updated pll_ctrl_tb and sysctrl_fault_tb to reflect changes in NMI interface.
- Adjusted test_gpio_user_mux.py to remove IP_MDD definition.
- Enhanced memory map tests to include user extensions and ensure proper generation.
- Updated test_script_tools.py to reflect changes in core management and user extensions.
- Refined topology tests to ensure user APB target is always added.
- Adjusted tech cell configuration tests to use simplified profile paths.
- Improved user extensions tests for scalar bindings and slot validation.
2026-07-26 09:03:33 +08:00

32 lines
736 B
Python

from __future__ import annotations
import subprocess
from pathlib import Path
import pytest
ROOT = Path(__file__).resolve().parents[1]
@pytest.mark.parametrize(
("profile", "pdk"),
(
("configs/ci/gf180.mk", "GF180"),
("configs/ci/sky130.mk", "SKY130"),
),
)
def test_unqualified_pll_profiles_are_rejected(profile: str, pdk: str) -> None:
result = subprocess.run(
("make", f"CONFIG={profile}", "HAVE_PLL=YES", "config"),
cwd=ROOT,
check=False,
capture_output=True,
text=True,
)
assert result.returncode != 0
assert f"HAVE_PLL=YES requires a qualified crystal pad and is unsupported for PDK={pdk}" in (
result.stdout + result.stderr
)