|
@@ -101,8 +101,8 @@ dcb_gpio_parse(struct nouveau_bios *bios, int idx, u8 func, u8 line,
|
|
|
}
|
|
|
|
|
|
/* DCB 2.2, fixed TVDAC GPIO data */
|
|
|
- if ((entry = dcb_table(bios, &ver, &hdr, &cnt, &len)) && ver >= 0x22) {
|
|
|
- if (func == DCB_GPIO_TVDAC0) {
|
|
|
+ if ((entry = dcb_table(bios, &ver, &hdr, &cnt, &len))) {
|
|
|
+ if (ver >= 0x22 && ver < 0x30 && func == DCB_GPIO_TVDAC0) {
|
|
|
u8 conf = nv_ro08(bios, entry - 5);
|
|
|
u8 addr = nv_ro08(bios, entry - 4);
|
|
|
if (conf & 0x01) {
|