| Summary: | LDST PortInterface is not using MSR.DR for virtual mode | ||
|---|---|---|---|
| Product: | Libre-SOC's second ASIC | Reporter: | Luke Kenneth Casson Leighton <lkcl> |
| Component: | source code | Assignee: | Luke Kenneth Casson Leighton <lkcl> |
| Status: | RESOLVED FIXED | ||
| Severity: | enhancement | CC: | libre-soc-bugs, libre-soc |
| Priority: | --- | ||
| Version: | unspecified | ||
| Hardware: | Other | ||
| OS: | Linux | ||
| See Also: |
https://bugs.libre-soc.org/show_bug.cgi?id=465 https://bugs.libre-soc.org/show_bug.cgi?id=470 |
||
| NLnet milestone: | --- | total budget (EUR) for completion of task and all subtasks: | 0 |
| budget (EUR) for this task, excluding subtasks' budget: | 0 | parent task for budget allocation: | |
| child tasks for budget allocation: | The table of payments (in EUR) for this task; TOML format: | ||
| Bug Depends on: | |||
| Bug Blocks: | 491 | ||
https://libre-soc.org/irclog/%23libre-soc.2021-12-13.log.html#t2021-12-13T09:56:59 plan: add MSRSpec namedtuple in consts.py then compldst_multi.py uses it <lkcl> ./experiment/compldst_multi.py: comb += pi.msr_pr.eq(oper_r.msr[MSR.PR]) <lkcl> msr_spec = MSRSpec(dr=oper_r.msr[MSR.DR], pr=oper_r.msr[MSR.PR], ....) and all places where msr_pr are passed, are replaced with msr_spec (or, shorter: just msr) i believe this one is completed now. |
lv.virt_mode := ctrl.msr(MSR_DR); lv.priv_mode := not ctrl.msr(MSR_PR); lv.mode_32bit := not ctrl.msr(MSR_SF);