forked from Minki/linux
drm/nv50: DCB table quirks for another busted XFX board
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
ad830d23d3
commit
e540afc325
@ -6377,6 +6377,37 @@ apply_dcb_encoder_quirks(struct drm_device *dev, int idx, u32 *conn, u32 *conf)
|
||||
}
|
||||
}
|
||||
|
||||
/* Some other twisted XFX board (rhbz#694914)
|
||||
*
|
||||
* The DVI/VGA encoder combo that's supposed to represent the
|
||||
* DVI-I connector actually point at two different ones, and
|
||||
* the HDMI connector ends up paired with the VGA instead.
|
||||
*
|
||||
* Connector table is missing anything for VGA at all, pointing it
|
||||
* an invalid conntab entry 2 so we figure it out ourself.
|
||||
*/
|
||||
if (nv_match_device(dev, 0x0615, 0x1682, 0x2605)) {
|
||||
if (idx == 0) {
|
||||
*conn = 0x02002300; /* VGA, connector 2 */
|
||||
*conf = 0x00000028;
|
||||
} else
|
||||
if (idx == 1) {
|
||||
*conn = 0x01010312; /* DVI, connector 0 */
|
||||
*conf = 0x00020030;
|
||||
} else
|
||||
if (idx == 2) {
|
||||
*conn = 0x04020310; /* VGA, connector 0 */
|
||||
*conf = 0x00000028;
|
||||
} else
|
||||
if (idx == 3) {
|
||||
*conn = 0x02021322; /* HDMI, connector 1 */
|
||||
*conf = 0x00020010;
|
||||
} else {
|
||||
*conn = 0x0000000e; /* EOL */
|
||||
*conf = 0x00000000;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user