Repository navigation
Expand file tree
/
Copy pathconfig_parser.py
More file actions
executable file
·81 lines (74 loc) · 4 KB
/
Copy pathconfig_parser.py
File metadata and controls
executable file
·81 lines (74 loc) · 4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
def load_primary_config(df, config, target):
target["rank_num"][0] = int(df[config]["rank_num"])
target["rank0_density"][0] = int(df[config]["rank0_density"])
target["rank1_density"][0] = int(df[config]["rank1_density"])
target["BaseAddr0"][0] = int(df[config]["BaseAddr0"], 16)
target["BaseAddr1"][0] = int(df[config]["BaseAddr1"], 16)
target["BaseMask0"][0] = int(df[config]["BaseMask0"], 16)
target["BaseMask1"][0] = int(df[config]["BaseMask1"], 16)
target["ExtBaseAddr0"][0] = int(df[config]["ExtBaseAddr0"], 16)
target["ExtBaseAddr1"][0] = int(df[config]["ExtBaseAddr1"], 16)
target["ExtBaseMask0"][0] = int(df[config]["ExtBaseMask0"], 16)
target["ExtBaseMask1"][0] = int(df[config]["ExtBaseMask1"], 16)
target["AddrMapMode"][0] = int(df[config]["AddrMapMode"], 16)
target["IntlvBaseAddr0"][0] = int(df[config]["IntlvBaseAddr0"], 16)
target["IntlvBaseAddr1"][0] = int(df[config]["IntlvBaseAddr1"], 16)
target["IntlvBaseMask0"][0] = int(df[config]["IntlvBaseMask0"], 16)
target["IntlvBaseMask1"][0] = int(df[config]["IntlvBaseMask1"], 16)
target["TzSpare"][0] = int(df[config]["TzSpare"], 16)
_try_load(df, config, "ExtIntlvBaseAddr0", target["ExtIntlvBaseAddr0"], 0, 16)
_try_load(df, config, "ExtIntlvBaseAddr1", target["ExtIntlvBaseAddr1"], 0, 16)
_try_load(df, config, "ExtIntlvBaseMask0", target["ExtIntlvBaseMask0"], 0, 16)
_try_load(df, config, "ExtIntlvBaseMask1", target["ExtIntlvBaseMask1"], 0, 16)
def load_asym_config(df, config, target):
_try_load(df, config, "ASYM_rank_num", target["rank_num"], 1)
_try_load(df, config, "ASYM_rank0_density", target["rank0_density"], 1)
_try_load(df, config, "ASYM_rank1_density", target["rank1_density"], 1)
_try_load(df, config, "ASYM_BaseAddr0", target["BaseAddr0"], 1, 16)
_try_load(df, config, "ASYM_BaseAddr1", target["BaseAddr1"], 1, 16)
_try_load(df, config, "ASYM_BaseMask0", target["BaseMask0"], 1, 16)
_try_load(df, config, "ASYM_BaseMask1", target["BaseMask1"], 1, 16)
_try_load(df, config, "ASYM_ExtBaseAddr0", target["ExtBaseAddr0"], 1, 16)
_try_load(df, config, "ASYM_ExtBaseAddr1", target["ExtBaseAddr1"], 1, 16)
_try_load(df, config, "ASYM_ExtBaseMask0", target["ExtBaseMask0"], 1, 16)
_try_load(df, config, "ASYM_ExtBaseMask1", target["ExtBaseMask1"], 1, 16)
_try_load(df, config, "ASYM_AddrMapMode", target["AddrMapMode"], 1, 16)
_try_load(df, config, "ASYM_IntlvBaseAddr0", target["IntlvBaseAddr0"], 1, 16)
_try_load(df, config, "ASYM_IntlvBaseAddr1", target["IntlvBaseAddr1"], 1, 16)
_try_load(df, config, "ASYM_IntlvBaseMask0", target["IntlvBaseMask0"], 1, 16)
_try_load(df, config, "ASYM_IntlvBaseMask1", target["IntlvBaseMask1"], 1, 16)
_try_load(df, config, "ASYM_TzSpare", target["TzSpare"], 1, 16)
_try_load(df, config, "ASYM_ExtIntlvBaseAddr0", target["ExtIntlvBaseAddr0"], 1, 16)
_try_load(df, config, "ASYM_ExtIntlvBaseAddr1", target["ExtIntlvBaseAddr1"], 1, 16)
_try_load(df, config, "ASYM_ExtIntlvBaseMask0", target["ExtIntlvBaseMask0"], 1, 16)
_try_load(df, config, "ASYM_ExtIntlvBaseMask1", target["ExtIntlvBaseMask1"], 1, 16)
def build_register_state():
return {
"rank_num": [0, 0],
"rank0_density": [0, 0],
"rank1_density": [0, 0],
"BaseAddr0": [0, 0],
"BaseAddr1": [0, 0],
"BaseMask0": [0, 0],
"BaseMask1": [0, 0],
"ExtBaseAddr0": [0, 0],
"ExtBaseAddr1": [0, 0],
"ExtBaseMask0": [0, 0],
"ExtBaseMask1": [0, 0],
"AddrMapMode": [0, 0],
"BankAddrMode": [0, 0],
"IntlvBaseAddr0": [0, 0],
"IntlvBaseAddr1": [0, 0],
"IntlvBaseMask0": [0, 0],
"IntlvBaseMask1": [0, 0],
"TzSpare": [0, 0],
"ExtIntlvBaseAddr0": [0, 0],
"ExtIntlvBaseAddr1": [0, 0],
"ExtIntlvBaseMask0": [0, 0],
"ExtIntlvBaseMask1": [0, 0],
}
def _try_load(df, config, key, target, index, base=10):
try:
target[index] = int(df[config][key], base)
except Exception:
pass