Commit dae20439 authored by Ben Skeggs's avatar Ben Skeggs

drm/nouveau/bios: add support for dcb 4.1

Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent c9083577
...@@ -42,7 +42,7 @@ dcb_table(struct nouveau_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) ...@@ -42,7 +42,7 @@ dcb_table(struct nouveau_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len)
*ver = nv_ro08(bios, dcb); *ver = nv_ro08(bios, dcb);
if (*ver >= 0x41) { if (*ver >= 0x42) {
nv_warn(bios, "DCB version 0x%02x unknown\n", *ver); nv_warn(bios, "DCB version 0x%02x unknown\n", *ver);
return 0x0000; return 0x0000;
} else } else
...@@ -157,18 +157,21 @@ dcb_outp_parse(struct nouveau_bios *bios, u8 idx, u8 *ver, u8 *len, ...@@ -157,18 +157,21 @@ dcb_outp_parse(struct nouveau_bios *bios, u8 idx, u8 *ver, u8 *len,
break; break;
} }
switch (conf & 0x0f000000) { outp->dpconf.link_nr = (conf & 0x0f000000) >> 24;
case 0x0f000000: if (*ver < 0x41) {
switch (outp->dpconf.link_nr) {
case 0x0f:
outp->dpconf.link_nr = 4; outp->dpconf.link_nr = 4;
break; break;
case 0x03000000: case 0x03:
outp->dpconf.link_nr = 2; outp->dpconf.link_nr = 2;
break; break;
case 0x01000000: case 0x01:
default: default:
outp->dpconf.link_nr = 1; outp->dpconf.link_nr = 1;
break; break;
} }
}
/* fall-through... */ /* fall-through... */
case DCB_OUTPUT_TMDS: case DCB_OUTPUT_TMDS:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment