diff options
author | Jesse Barnes <jbarnes@hobbes.virtuousgeek.org> | 2008-02-22 11:41:25 -0800 |
---|---|---|
committer | Jesse Barnes <jbarnes@hobbes.virtuousgeek.org> | 2008-02-22 11:41:25 -0800 |
commit | 975d7833bc844485c7043538336bddcba7f7f90e (patch) | |
tree | 952706a2f0f6da5741f11c1c2f8091de5d9c58d5 /src/i830_dvo.c | |
parent | 33802b6ee3c298bae4d2b6f464ee5cc730a58506 (diff) |
Add quirk for DVO channel selection
Some machines want DVOA, some DVOB. We can use this quirk to differentiate
them until we come up with a better solution. Patch from Hong Liu.
Fixes #13722.
Diffstat (limited to 'src/i830_dvo.c')
-rw-r--r-- | src/i830_dvo.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/i830_dvo.c b/src/i830_dvo.c index e7342b08..81d56012 100644 --- a/src/i830_dvo.c +++ b/src/i830_dvo.c @@ -83,7 +83,7 @@ struct _I830DVODriver i830_dvo_drivers[] = .type = I830_OUTPUT_DVO_LVDS, .modulename = "ivch", .fntablename = "ivch_methods", - .dvo_reg = DVOB, + .dvo_reg = DVOA, .address = 0x04, /* Might also be 0x44, 0x84, 0xc4 */ .symbols = ivch_symbols }, @@ -398,6 +398,7 @@ i830_dvo_get_current_mode (xf86OutputPtr output) void i830_dvo_init(ScrnInfoPtr pScrn) { + I830Ptr pI830 = I830PTR(pScrn); I830OutputPrivatePtr intel_output; int ret; int i; @@ -431,6 +432,11 @@ i830_dvo_init(ScrnInfoPtr pScrn) ret_ptr = NULL; drv->vid_rec = LoaderSymbol(drv->fntablename); + if (!strcmp(drv->modulename, "ivch") && + pI830->quirk_flag & QUIRK_IVCH_NEED_DVOB) { + drv->dvo_reg = DVOB; + } + /* Allow the I2C driver info to specify the GPIO to be used in * special cases, but otherwise default to what's defined in the spec. */ |