Skip to content

Commit 4d68806

Browse files
committed
experiments/mtp.py: New experiment
Signed-off-by: Hector Martin <[email protected]>
1 parent 1526560 commit 4d68806

1 file changed

Lines changed: 47 additions & 0 deletions

File tree

proxyclient/experiments/mtp.py

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
#!/usr/bin/env python3
2+
# SPDX-License-Identifier: MIT
3+
import sys, pathlib, fnmatch
4+
import time
5+
sys.path.append(str(pathlib.Path(__file__).resolve().parents[1]))
6+
7+
import struct
8+
from m1n1.setup import *
9+
from m1n1.fw.asc import StandardASC
10+
from m1n1.hw.dart8110 import DART8110
11+
from m1n1.hw.dockchannel import DockChannel
12+
from m1n1.fw.smc import SMCClient, SMCError
13+
from m1n1.shell import run_shell
14+
15+
from construct import *
16+
17+
p.dapf_init_all()
18+
19+
dart = DART8110.from_adt(u, "/arm-io/dart-mtp", iova_range=(0x8000, 0x100000))
20+
21+
dart.regs.TCR[1].set(BYPASS_DAPF=0, BYPASS_DART=0, TRANSLATE_ENABLE=1)
22+
23+
mtp_addr = u.adt["/arm-io/mtp"].get_reg(0)[0]
24+
mtp = StandardASC(u, mtp_addr, dart, stream=1)
25+
mtp.verbose = 3
26+
mtp.allow_phys = True
27+
mtp.start()
28+
29+
irq_base = u.adt["/arm-io/dockchannel-mtp"].get_reg(1)[0]
30+
fifo_base = u.adt["/arm-io/dockchannel-mtp"].get_reg(2)[0]
31+
dc = DockChannel(u, irq_base, fifo_base, 1)
32+
33+
for i in range(128):
34+
mtp.work()
35+
36+
dc.write(bytes.fromhex("08110c00010000008000020000000000b4010000c2ecf1ff"))
37+
dc.write(bytes.fromhex("08110c00020000008000020000000000b4020000c1ebf1ff"))
38+
39+
def poll():
40+
v = dc.read_all()
41+
if v:
42+
chexdump(v)
43+
mtp.work()
44+
45+
mtp.stop()
46+
47+
#run_shell(locals(), poll_func=poll)

0 commit comments

Comments
 (0)