Commit Graph

2385 Commits

Author SHA1 Message Date
Kristian Høgsberg 095a001f75 Use drmSetMaster() and drmDropMaster() in enter/leave VT
This allows multiple X server to use DRI and makes it possible to run
multiple X servers under KMS.  This requires a 2.6.29 kernel to work.
On older kernels it will just log a warning and DRI will fail to
initialize for the second X server.
2009-03-04 17:10:28 -05:00
Zhenyu Wang 14bb61e0c2 SDVO: only check digital monitor when EDID exists 2009-03-03 14:17:50 +08:00
Zhenyu Wang 42e34e90e2 TV: add property control for TV attributes
This is based on Jesse's origin patch for bug #12763.
But export integer range to user instead of hardware float
point format, and fix different real format on 965G and 945G
for contrast and saturation.
2009-03-03 22:55:35 +08:00
Zhenyu Wang aa9da5e393 TV: add option to set TV connector type
This can let user override non-stable driver TV load detect,
and set connector type manually, e.g for s-video to component
converter, this patch seems must needed to use HD modes.
2009-03-03 20:43:39 +08:00
Zhenyu Wang ab1ef05cc0 TV: update output and crtc modes when TV format change (try 3)
This is to fix bug #16566, change TV format will cause BadMatch
error when crtc config apply. Everytime when we change TV format,
we may generate a new list of modelines as TV clock changed. After
randr get info request, new modelines will be probed and randr output's
modes will be renewed too. But crtc's mode failed to be updated,
as it never can find a matching mode now within new modes list.
So get info will return an invalid crtc's mode, later set crtc
config will pass that info, and xserver catches a bad match.

This patch trys to refresh output modes and setup crtc's mode
with new modelines in TV format change. So get info would be
sure to turn valid crtc mode that reference in current new modelines.
2009-03-03 20:43:39 +08:00
Zhenyu Wang a67a911a93 TV: sort input mode lines 2009-03-03 20:43:39 +08:00
Adam Jackson bd360e7517 KMS: Wire up output DPMS. 2009-03-02 10:34:41 -05:00
Zhenyu Wang 2d0aa55360 Skip LVDS config parsing on pre-9xx chips.
855GM laptops seems pretty broken when parsing this block.
2009-03-02 15:26:44 +08:00
Zhenyu Wang 55359ef9ab Update driver feature block definition for missed fields 2009-03-02 15:20:27 +08:00
Eric Anholt 38a7683561 warnings cleanup 2009-02-28 00:51:14 -08:00
Eric Anholt 5bfd73cd31 Only allocate pixmaps aligned for tiling when requested by DRI2 GetBuffers.
This saves massive quantities of memory on pre-965 since the DRI2 tiling
enable caused the minimum size of any pixmap to be 1MB.
2009-02-27 19:09:49 -08:00
Shaohua Li f53bdad141 Intel video driver patch
This is the intel video driver patch for a new chip, which is G33-like
and has some clocking setting related register changes. This patch adds
the pci id and DPLx/FPx register changes.

The gtt tool should just work to me, as the chip hasn't any changes
against G33 on this side.

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
2009-02-26 14:47:04 -08:00
Eric Anholt 22dc9a5580 Fix UXA for server 1.4. 2009-02-26 14:20:42 -08:00
Eric Anholt cb1f7ec087 uxa: Fix composite fallback debug printing of main memory versus bo info.
It was just printing whether it was a pixmap (it is), instead of whether the
pixmap was offscreen.
2009-02-26 14:20:42 -08:00
Eric Anholt 635eaa511f Regard the screen pixmap as suitable for acceleration.
With UXA on the fake bufmgr, the screen pixmap doesn't have a BO and so
no acceleration was occurring.
2009-02-26 14:20:42 -08:00
Eric Anholt 70e0261208 Disable fb resizing for DRI1-only server so that DRI1 can initialize. 2009-02-26 14:20:42 -08:00
Eric Anholt d7aa330db3 Fix up i915 composite and common solid/copy code to use check_aperture.
This could fix complaints about binding BOs and resulting failure to render.
2009-02-26 14:20:42 -08:00
Xiang, Haihao a625a07022 XvMC: fix broken xvmc on 965 2009-02-25 16:48:22 +08:00
Zhenyu Wang f6d8ae69b0 Use LVDS config in Driver feature BDB for integrated LVDS check
The LVDS config bits in VBT driver feature block is used by vendor
to identify the board implement of integrated LVDS/eDP or SDVO LVDS.
And video bios uses these bits for LVDS enabling or not. So check
these bits for integrated LVDS might eliminate more quirks.
2009-02-25 09:57:00 +08:00
Zhenyu Wang 8718551f14 Update LVDS config bits definition in driver feature block
ALL_LVDS is actually not defined before and include GM45.
Embedded DP bit will be used for newer chips.
2009-02-25 09:54:03 +08:00
Eric Anholt 9d8e5c21a1 Fix distcheck from drmmode_display.h deletion. 2009-02-24 14:07:08 -08:00
Eric Anholt f4e2f522a5 Don't do AdjustFrame in KMS mode.
This was hit by xv86vm's SwitchMode path, and for that the CRTC offsets
get set at mode setting time anyway.
2009-02-24 14:07:08 -08:00
Kristian Høgsberg 170f00e161 Remove a handful of unused variable warnings. 2009-02-24 14:13:04 -05:00
Kristian Høgsberg a6b31f38eb Update kms to work with drmModeModeInfo API update. 2009-02-24 14:13:01 -05:00
Adam Jackson 13ee9402e9 Limit CRT DAC speed better.
Verified against the public docs for i8xx parts, although not 9xx yet.
2009-02-24 11:59:57 -05:00
Keith Packard 668b2352a4 Revert "Limit CRT DAC speed better."
This reverts commit 8fd0e46571.

This doesn't even build. Please try again.
2009-02-23 13:31:51 -08:00
Adam Jackson 8fd0e46571 Limit CRT DAC speed better.
Verified against the public docs for i8xx parts, although not 9xx yet.
2009-02-23 15:46:25 -05:00
Kristian Høgsberg 73bc7f1139 KMS: Fix bug that prevented EDID data from getting propagated. 2009-02-23 15:16:51 -05:00
Kristian Høgsberg ef95276055 Use stat() and the dev_t to find the drm device filename.
Simpler and more robust.  Works when we haven't set the device PCI ID,
ie when not going through the legacy DRI module.
2009-02-23 15:14:56 -05:00
Helge Bahmann 81c652e9a6 Move disable_render_standby to EnterVT instead of startup.
Otherwise, with a pre-2.6.28 older kernel the disable would be lost at
resume time and cause hangs.

Bug #20214
2009-02-21 10:10:57 -08:00
Eric Anholt 0621ba12a3 uxa: Ask for BOs ready for rendering for pixmaps.
The assumption is that we're almost always accelerating our drawing to
new pixmaps (fill, copy, etc.).
2009-02-21 10:03:22 -08:00
Kristian Høgsberg 5018d0f16c KMS: Hook up rotated shadow buffers. 2009-02-20 15:34:29 -05:00
Kristian Høgsberg beca598bc2 Access the Xv buffer through the GTT for the non-KMS case. 2009-02-20 11:25:22 -05:00
Kristian Høgsberg e97e257170 Fix i915 textured video to work with the i830_memory -> bo change.
Forgot to update i915_video.c in 872aadc710.
2009-02-20 11:25:22 -05:00
Kristian Høgsberg 96da26b681 Dont allocate overlay registers in KMS mode. 2009-02-20 11:25:16 -05:00
Kristian Høgsberg 872aadc710 Make Xv used a buffer object instead of i830_memory.
We still pin the buffer object in case of overlay, but for textured video
we're now no longer using i830_memory for Xv anymore.
2009-02-18 17:26:06 -05:00
Zhenyu Wang 527e8177cd bios_reader: parse driver feature BDB 2009-02-18 11:28:01 +08:00
Zhenyu Wang 62ca1c4798 Fix SDVO mulitiplier setting for 945G
Wrong SDVO multiplier setup has been slipped
in SDVO TV patch. Thanks Michael Fu to point this out!
2009-02-18 10:49:00 +08:00
Kristian Høgsberg 723b606509 KMS: Hook up crtc::gamma_set. 2009-02-17 13:48:04 -05:00
Zhenyu Wang 506bbb8341 Safely init SDVO found variable
Found by Michael Fu for my last SDVO detect fix.
2009-02-16 14:09:49 +08:00
Zhenyu Wang 9d464bd5b0 Fix SDVO/HDMI detect
SDVOC detect bit is only valid for HDMIC.
And for SDVO devices, SDVOB detect bit should be used
to probe all possible SDVO outputs.
2009-02-13 11:15:48 +08:00
Zhenyu Wang 48445d2e93 SDVO: remove ForceSDVODetect option
Which is just a hack to hide our SDVO detect drawback,
we will have SDVO/HDMI detect fix later.
2009-02-13 11:11:18 +08:00
Zhenyu Wang ddedf19f88 SDVO: Switch control bus only before DDC access
Instead of set control bus switch before every i2c start,
just set once before doing DDC. This should eliminate some
encoders returning error during that.
2009-02-13 10:09:42 +08:00
Zhenyu Wang f1ca56e17d SDVO: Fix TV support
As SDVO TV uses SDVO_TVClkIn from SDVO encoder for clock reference,
it needs to generate proper PLL for current input clock. This uses
fixed PLL table from vbios for this. And possible sdvo mulitiplier
has to be setup correctly. This makes TV output stable on my 945GCLF2
board with NTSC-M format.
2009-02-13 10:02:02 +08:00
Zhenyu Wang acde0ef683 SDVO: fix CREATE_PREFERRED_INPUT_TIMING command 2009-02-13 09:53:57 +08:00
Zhenyu Wang 824b2f0c55 SDVO: fix usage for SET_TV_FORMAT and GET_SDTV_RESOLUTION_SUPPORT command
They both needs parameters.
2009-02-13 09:50:45 +08:00
Zhenyu Wang 62c0c2f554 SDVO: fix error in modeline and DTD convert 2009-02-13 09:48:34 +08:00
Zhenyu Wang 37c67088a8 SDVO: check EDID info for DVI-I
For SDVO DVI-I, check EDID info for digital output,
otherwise mark it to be disconnected as analog output
is driven by VGA then.
2009-02-13 09:21:45 +08:00
Zhenyu Wang 38079bc0f1 SDVO: Fix for HDMI encode and audio setup (try 5)
SDVO HDMI encode and audio is not setup in detect,
which fails in hotplug case for HDMI audio. Fix to
check current encode type and set flag for HDMI audio
enabling.

Check and set HDMI encode state in get_modes.
2009-02-13 09:21:45 +08:00
Eric Anholt 3012d85cc5 uxa: Fix breakage from UXA_FALLBACK conversion from "do {} while (0)" construct.
Thanks to keithp for post-commit review.
2009-02-10 18:47:28 -08:00