Skip to content

Commit 3bc3b01

Browse files
committed
tools/pmgr_adt2dt.py: Add multidie support
Signed-off-by: Hector Martin <[email protected]>
1 parent 41aac76 commit 3bc3b01

1 file changed

Lines changed: 16 additions & 3 deletions

File tree

proxyclient/tools/pmgr_adt2dt.py

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
from m1n1 import adt
1010

1111
parser = argparse.ArgumentParser(description='Convert ADT PMGR nodes to Device Tree format')
12+
parser.add_argument("-m", "--multidie", action="store_true")
1213
parser.add_argument('input', type=pathlib.Path)
1314
args = parser.parse_args()
1415

@@ -22,6 +23,18 @@
2223
blocks = {}
2324
maxaddr = {}
2425

26+
def die_node(s):
27+
if args.multidie:
28+
return f"DIE_NODE({s})"
29+
else:
30+
return s
31+
32+
def die_label(s):
33+
if args.multidie:
34+
return f"DIE_LABEL({s})"
35+
else:
36+
return s
37+
2538
for i, dev in enumerate(pmgr.devices):
2639
if dev.flags.no_ps:
2740
continue
@@ -61,17 +74,17 @@
6174
assert base <= addr <= (base + size)
6275

6376
print()
64-
print(f"\tps_{dev.name.lower()}: power-controller@{offset:x} {{")
77+
print(f"\t{die_node('ps_' + dev.name.lower())}: power-controller@{offset:x} {{")
6578
print(f"\t\tcompatible = {ps_compatible};")
6679
print(f"\t\treg = <{offset:#x} 4>;")
6780
print( "\t\t#power-domain-cells = <0>;")
6881
print( "\t\t#reset-cells = <0>;")
69-
print(f'\t\tlabel = "{dev.name.lower()}";')
82+
print(f'\t\tlabel = {die_label(dev.name.lower())};')
7083
if dev.flags.critical:
7184
print("\t\tapple,always-on;")
7285

7386
if any(dev.parents):
74-
domains = [f"<&ps_{dev_by_id[idx].name.lower()}>" for idx in dev.parents if idx]
87+
domains = [f"<&{die_node('ps_'+dev_by_id[idx].name.lower())}>" for idx in dev.parents if idx]
7588
print(f"\t\tpower-domains = {', '.join(domains)};")
7689

7790
print( "\t};")

0 commit comments

Comments
 (0)