m1n1.fw.dcp.iboot: Identify colorspace values

Signed-off-by: Hector Martin <marcan@marcan.st>
This commit is contained in:
Hector Martin 2023-01-01 18:40:42 +09:00
parent 951afdd033
commit 46f2811351
2 changed files with 10 additions and 4 deletions

View file

@ -10,7 +10,7 @@ from m1n1.setup import *
from m1n1.shell import run_shell
from m1n1 import asm
from m1n1.hw.dart import DART, DARTRegs
from m1n1.fw.dcp.iboot import DCPIBootClient, SurfaceFormat, EOTF, Transform, AddrFormat
from m1n1.fw.dcp.iboot import DCPIBootClient, SurfaceFormat, EOTF, Transform, AddrFormat, Colorspace
from m1n1.proxyutils import RegMonitor
print(f"Framebuffer at {u.ba.video.base:#x}")
@ -87,7 +87,7 @@ layer = Container(
width = u.ba.video.width,
height = u.ba.video.height,
surface_fmt = SurfaceFormat.w30r,
colorspace = 2,
colorspace = Colorspace.SCRGBFixed,
eotf = EOTF.GAMMA_SDR,
transform = Transform.NONE,
)

View file

@ -24,6 +24,12 @@ Colorimetry = "Colorimetry" / Enum(Int32ul,
DCIP3 = 3,
)
Colorspace = "Colorspace" / Enum(Int32ul,
SRGB = 1,
Native = 2,
BT2020 = 3,
)
SurfaceFormat = "SurfaceFormat" / Enum(Int32ul,
BGRA = 1,
BGRA2 = 2,
@ -72,7 +78,7 @@ ColorMode = Struct(
"eotf" / EOTF,
"encoding" / Encoding,
"bpp" / Int32ul,
Padding(4),
"unk" / Int32ul,
)
ColorModeList = Struct(
@ -108,7 +114,7 @@ IBootLayerInfo = Struct(
"width" / Int32ul,
"height" / Int32ul,
"surface_fmt" / SurfaceFormat,
"colorspace" / Int32ul,
"colorspace" / Colorspace,
"eotf" / EOTF,
"transform" / Transform,
Padding(3)