Skip to content

Commit 49cdf7f

Browse files
ArcaneNibblemarcan
authored andcommitted
jpeg: probe registers more thoroughly
Signed-off-by: R <[email protected]>
1 parent c6169c1 commit 49cdf7f

1 file changed

Lines changed: 58 additions & 28 deletions

File tree

proxyclient/m1n1/hw/jpeg.py

Lines changed: 58 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ class E_CODEC(IntEnum):
2222

2323

2424
class R_CODEC(Register32):
25-
CODEC = 31, 0, E_CODEC # FIXME actual width
25+
CODEC = 2, 0, E_CODEC
2626

2727

2828
class E_ENCODE_PIXEL_FORMAT(IntEnum):
@@ -35,7 +35,7 @@ class E_ENCODE_PIXEL_FORMAT(IntEnum):
3535

3636

3737
class R_ENCODE_PIXEL_FORMAT(Register32):
38-
FORMAT = 31, 0, E_ENCODE_PIXEL_FORMAT # FIXME actual width
38+
FORMAT = 4, 0, E_ENCODE_PIXEL_FORMAT
3939

4040

4141
class E_SCALE(IntEnum):
@@ -46,7 +46,7 @@ class E_SCALE(IntEnum):
4646

4747

4848
class R_SCALE_FACTOR(Register32):
49-
SCALE = 31, 0, E_SCALE # FIXME actual width
49+
SCALE = 1, 0, E_SCALE
5050

5151

5252
class E_DECODE_PIXEL_FORMAT(IntEnum):
@@ -61,7 +61,7 @@ class E_DECODE_PIXEL_FORMAT(IntEnum):
6161

6262

6363
class R_DECODE_PIXEL_FORMAT(Register32):
64-
FORMAT = 31, 0, E_DECODE_PIXEL_FORMAT # FIXME actual width
64+
FORMAT = 3, 0, E_DECODE_PIXEL_FORMAT
6565

6666

6767
class E_JPEG_IO_FLAGS_SUBSAMPLING(IntEnum):
@@ -102,6 +102,11 @@ class JPEGRegs(RegMap):
102102
MODE = 0x8, Register32
103103
REG_0xc = 0xc, Register32
104104

105+
REG_0x10 = 0x10, Register32
106+
REG_0x14 = 0x14, Register32
107+
REG_0x18 = 0x18, Register32
108+
# REG_0x1c = 0x1c, Register32
109+
105110
REG_0x20 = 0x20, Register32
106111
STATUS = 0x24, R_STATUS
107112

@@ -204,77 +209,87 @@ class JPEGRegs(RegMap):
204209
# REG_0x180 = 0x180, Register32
205210
TIMEOUT = 0x184, Register32
206211
HWREV = 0x188, Register32
207-
# REG_0x18c = 0x18c, Register32
208212

209-
# REG_0x190 = 0x190, Register32
210-
# REG_0x194 = 0x194, Register32
211-
# REG_0x198 = 0x198, Register32
213+
REG_0x18c = 0x18c, Register32
214+
REG_0x190 = 0x190, Register32
215+
REG_0x194 = 0x194, Register32
216+
REG_0x198 = 0x198, Register32
212217
REG_0x19c = 0x19c, Register32
213218

214219
ENABLE_RST_LOGGING = 0x1a0, Register32
215220
RST_LOG_ENTRIES = 0x1a4, Register32
216221

217222
REG_0x1a8 = 0x1a8, Register32
218223
REG_0x1ac = 0x1ac, Register32
219-
220224
REG_0x1b0 = 0x1b0, Register32
225+
221226
REG_0x1b4 = 0x1b4, Register32
222-
# REG_0x1b8 = 0x1b8, Register32
227+
REG_0x1b8 = 0x1b8, Register32
223228
REG_0x1bc = 0x1bc, Register32
224229

225230
REG_0x1c0 = 0x1c0, Register32
226231
REG_0x1c4 = 0x1c4, Register32
232+
227233
REG_0x1c8 = 0x1c8, Register32
228-
REG_0x1cc = 0x1cc, Register32
229234

235+
REG_0x1cc = 0x1cc, Register32
230236
REG_0x1d0 = 0x1d0, Register32
231237
REG_0x1d4 = 0x1d4, Register32
232-
# REG_0x1d8 = 0x1d8, Register32
233-
# REG_0x1dc = 0x1dc, Register32
238+
REG_0x1d8 = 0x1d8, Register32
234239

235-
# REG_0x1e0 = 0x1e0, Register32
236-
# REG_0x1e4 = 0x1e4, Register32
237-
# REG_0x1e8 = 0x1e8, Register32
238-
# REG_0x1ec = 0x1ec, Register32
240+
REG_0x1dc = 0x1dc, Register32
241+
REG_0x1e0 = 0x1e0, Register32
242+
REG_0x1e4 = 0x1e4, Register32
243+
REG_0x1e8 = 0x1e8, Register32
239244

240-
# REG_0x1f0 = 0x1f0, Register32
241-
# REG_0x1f4 = 0x1f4, Register32
242-
# REG_0x1f8 = 0x1f8, Register32
243-
REG_0x1fc = 0x1fc, Register32
245+
REG_0x1ec = 0x1ec, Register32
246+
REG_0x1f0 = 0x1f0, Register32
247+
REG_0x1f4 = 0x1f4, Register32
248+
REG_0x1f8 = 0x1f8, Register32
244249

250+
REG_0x1fc = 0x1fc, Register32
245251
REG_0x200 = 0x200, Register32
252+
246253
REG_0x204 = 0x204, Register32
247254
REG_0x208 = 0x208, Register32
248-
REG_0x20c = 0x20c, Register32
249255

256+
REG_0x20c = 0x20c, Register32
250257
REG_0x210 = 0x210, Register32
251258
REG_0x214 = 0x214, Register32
252259
REG_0x218 = 0x218, Register32
253-
REG_0x21c = 0x21c, Register32
254260

261+
REG_0x21c = 0x21c, Register32
255262
REG_0x220 = 0x220, Register32
263+
256264
REG_0x224 = 0x224, Register32
257265
REG_0x228 = 0x228, Register32
258-
REG_0x22c = 0x22c, Register32
259266

267+
REG_0x22c = 0x22c, Register32
260268
REG_0x230 = 0x230, Register32
261269
REG_0x234 = 0x234, Register32
262-
# REG_0x238 = 0x238, Register32
263-
REG_0x23c = 0x23c, Register32
264270

271+
REG_0x238 = 0x238, Register32
272+
REG_0x23c = 0x23c, Register32
265273
REG_0x240 = 0x240, Register32
266274
REG_0x244 = 0x244, Register32
267275
REG_0x248 = 0x248, Register32
268-
REG_0x24c = 0x24c, Register32
269276

277+
REG_0x24c = 0x24c, Register32
270278
REG_0x250 = 0x250, Register32
271279
REG_0x254 = 0x254, Register32
272280
REG_0x258 = 0x258, Register32
273281
REG_0x25c = 0x25c, Register32
274282

283+
REG_0x260 = 0x260, Register32
284+
REG_0x264 = 0x264, Register32
285+
REG_0x268 = 0x268, Register32
286+
REG_0x26c = 0x26c, Register32
287+
288+
REG_0x280 = 0x280, Register32
289+
275290
JPEG_IO_FLAGS = 0x1000, R_JPEG_IO_FLAGS
276291
REG_0x1004 = 0x1004, Register32
277-
# REG_0x1008 = 0x1008, Register32
292+
REG_0x1008 = 0x1008, Register32
278293
QTBL_SEL = 0x100c, R_QTBL_SEL
279294

280295
# fixme what _exactly_ does this control
@@ -293,6 +308,21 @@ class JPEGRegs(RegMap):
293308
# REG_0x1038 = 0x1038, Register32
294309
# REG_0x103c = 0x103c, Register32
295310

311+
REG_0x1080 = 0x1080, Register32
312+
REG_0x1084 = 0x1084, Register32
313+
# REG_0x1088 = 0x1088, Register32
314+
REG_0x108c = 0x108c, Register32
315+
REG_0x1090 = 0x1090, Register32
316+
317+
SHIKINO_VERSION_MAGIC0 = 0x10e0, Register32
318+
SHIKINO_VERSION_MAGIC1 = 0x10e4, Register32
319+
SHIKINO_VERSION_MAGIC2 = 0x10e8, Register32
320+
SHIKINO_VERSION_MAGIC3 = 0x10ec, Register32
321+
SHIKINO_VERSION_MAGIC4 = 0x10f0, Register32
322+
# REG_0x10f4 = 0x10f4, Register32
323+
# REG_0x10f8 = 0x10f8, Register32
324+
# REG_0x10fc = 0x10fc, Register32
325+
296326
QTBL = irange(0x1100, 64, 4), Register32
297327

298328
# todo what's the format?

0 commit comments

Comments
 (0)