Skip to content

Commit c6a92d4

Browse files
wkkunakgugala
authored andcommitted
peakrdl_cocotb: Collect reset-value and access permissions for reg_map
Signed-off-by: Wiktoria Kuna <[email protected]>
1 parent a4d62f6 commit c6a92d4

File tree

2 files changed

+2256
-383
lines changed

2 files changed

+2256
-383
lines changed

tools/peakrdl_cocotb/src/peakrdl_cocotb/cocotb_scanner.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,3 +94,29 @@ def enter_Field(self, node):
9494

9595
field.update({"low": node.low})
9696
field.update({"mask": field_mask})
97+
98+
# Collect on-reset value if specified
99+
on_reset = node.get_property("reset")
100+
if on_reset is not None:
101+
field.update({"reset": on_reset})
102+
103+
# Collect access permissions
104+
sw = ""
105+
if node.is_sw_readable:
106+
sw += "r"
107+
if node.is_sw_writable:
108+
sw += "w"
109+
field.update({"sw": sw if sw != "" else "na"})
110+
111+
hw = ""
112+
if node.is_hw_readable:
113+
hw += "r"
114+
if node.is_hw_writable:
115+
hw += "w"
116+
field.update({"hw": hw if hw != "" else "na"})
117+
118+
woclr = node.get_property("woclr") or node.get_property("onwrite") == "woclr"
119+
field.update({"woclr": int(woclr)})
120+
121+
rclr = node.get_property("rclr") or node.get_property("onread") == "rclr"
122+
field.update({"rclr": int(rclr)})

0 commit comments

Comments
 (0)