Skip to content

Commit 18535a2

Browse files
ArcaneNibblemarcan
authored andcommitted
dart-t8110: uncomment helper functions
Signed-off-by: R <[email protected]>
1 parent 25ebf8a commit 18535a2

1 file changed

Lines changed: 36 additions & 36 deletions

File tree

proxyclient/m1n1/hw/dart8110.py

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -133,42 +133,42 @@ def from_adt(cls, u, path):
133133
dart = cls(u.iface, regs, u)
134134
return dart
135135

136-
# def ioread(self, stream, base, size):
137-
# if size == 0:
138-
# return b""
139-
140-
# ranges = self.iotranslate(stream, base, size)
141-
142-
# iova = base
143-
# data = []
144-
# for addr, size in ranges:
145-
# if addr is None:
146-
# raise Exception(f"Unmapped page at iova {iova:#x}")
147-
# data.append(self.iface.readmem(addr, size))
148-
# iova += size
149-
150-
# return b"".join(data)
151-
152-
# def iowrite(self, stream, base, data):
153-
# if len(data) == 0:
154-
# return
155-
156-
# ranges = self.iotranslate(stream, base, len(data))
157-
158-
# iova = base
159-
# p = 0
160-
# for addr, size in ranges:
161-
# if addr is None:
162-
# raise Exception(f"Unmapped page at iova {iova:#x}")
163-
# self.iface.writemem(addr, data[p:p + size])
164-
# p += size
165-
# iova += size
166-
167-
# def iomap(self, stream, addr, size):
168-
# iova = self.iova_allocator[stream].malloc(size)
169-
170-
# self.iomap_at(stream, iova, addr, size)
171-
# return iova
136+
def ioread(self, stream, base, size):
137+
if size == 0:
138+
return b""
139+
140+
ranges = self.iotranslate(stream, base, size)
141+
142+
iova = base
143+
data = []
144+
for addr, size in ranges:
145+
if addr is None:
146+
raise Exception(f"Unmapped page at iova {iova:#x}")
147+
data.append(self.iface.readmem(addr, size))
148+
iova += size
149+
150+
return b"".join(data)
151+
152+
def iowrite(self, stream, base, data):
153+
if len(data) == 0:
154+
return
155+
156+
ranges = self.iotranslate(stream, base, len(data))
157+
158+
iova = base
159+
p = 0
160+
for addr, size in ranges:
161+
if addr is None:
162+
raise Exception(f"Unmapped page at iova {iova:#x}")
163+
self.iface.writemem(addr, data[p:p + size])
164+
p += size
165+
iova += size
166+
167+
def iomap(self, stream, addr, size):
168+
iova = self.iova_allocator[stream].malloc(size)
169+
170+
self.iomap_at(stream, iova, addr, size)
171+
return iova
172172

173173
def iomap_at(self, stream, iova, addr, size):
174174
if size == 0:

0 commit comments

Comments
 (0)