aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/nouveau/nvkm/subdev/bios/dp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/dp.c b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/dp.c
index d89e78c4e689..972370ed36f0 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/dp.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/dp.c
@@ -207,8 +207,11 @@ nvbios_dpcfg_match(struct nvkm_bios *bios, u16 outp, u8 pc, u8 vs, u8 pe,
207 if (*ver >= 0x30) { 207 if (*ver >= 0x30) {
208 const u8 vsoff[] = { 0, 4, 7, 9 }; 208 const u8 vsoff[] = { 0, 4, 7, 9 };
209 idx = (pc * 10) + vsoff[vs] + pe; 209 idx = (pc * 10) + vsoff[vs] + pe;
210 if (*ver >= 0x40 && *hdr >= 0x12) 210 if (*ver >= 0x40 && *ver <= 0x41 && *hdr >= 0x12)
211 idx += nvbios_rd08(bios, outp + 0x11) * 40; 211 idx += nvbios_rd08(bios, outp + 0x11) * 40;
212 else
213 if (*ver >= 0x42)
214 idx += nvbios_rd08(bios, outp + 0x11) * 10;
212 } else { 215 } else {
213 while ((data = nvbios_dpcfg_entry(bios, outp, ++idx, 216 while ((data = nvbios_dpcfg_entry(bios, outp, ++idx,
214 ver, hdr, cnt, len))) { 217 ver, hdr, cnt, len))) {