Commit Graph

2710 Commits

Author SHA1 Message Date
Carl Worth 54fa27fcd9 NEWS: Add notes for the 2.8.99.901 snapshot 2009-09-09 09:27:01 -07:00
Chris Wilson 1a77ca74bc i915: Restore nearest sampling
My recent commit [94fc93] to use the pixel centre for sampling with the i830
broke the i915. This restores the previous sampling coordinates for the
i915 whilst preserving the correct coordinates for i830.

Fixes: gnome characters disappear
       http://bugs.freedesktop.org/show_bug.cgi?id=23803

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2009-09-09 12:40:15 +01:00
Zhenyu Wang ce10b5b6fc Add B43 chipset support
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
2009-09-08 00:56:34 +08:00
Chris Wilson 94fc93d4e2 i830/i915: Set the sample position to the pixel center.
And in particular we apply the nearest sample bias separately for
src/mask.

Fixes cairo/test:
	device-offset-scale
	finer-grained-fallbacks
	mask-transformed-{similar,image}
	meta-surface-pattern
	pixman-rotate
	surface-pattern-big-scale-down
	text-transform

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2009-09-05 11:06:44 +01:00
Chris Wilson ced0cc8bb2 i830: Update comments
i830_composite() is no longer shared with i915 but
i830_emit_composite_primitive() is.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2009-09-05 11:06:44 +01:00
Chris Wilson 8863706e25 i830: Trim composite setup
Remove a couple of redundant NOOPs from the setup and correct the required
space checking for atomic batch operation.
2009-09-05 11:06:11 +01:00
Chris Wilson a9b12111f9 i830: remove padding NOOPs from composite
Bumps aa10text up from 249k to 260k!

These NOOPs have existed uncommented since
04d1584737.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2009-09-05 01:58:03 +01:00
Chris Wilson 9c1bf6d01c i830: do not use stale mask transform
Not only were incorrectly falling back if we had non-affine
transformations, but we made the decision based on a stale transformation
matrix.

Related bug 22877:
   batch_start_atomic horribly breaks performance after a while
   https://bugs.freedesktop.org/show_bug.cgi?id=22877

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Tested-by: Maximilian Grothusmann <maxi@own-hero.net>
2009-09-05 01:34:59 +01:00
Matthias Hopf e903b3ebad Don't set backlight level if going on->on.
Otherwise changed backlight will be reset upon DPMS switch off, because first
this function is called with DPMSModeOn.
2009-09-03 16:34:08 +02:00
Matthias Hopf 91f26937c1 Use "Backlight" as backlight brightness property.
BACKLIGHT is now deprecated, though still usable.
2009-09-03 16:14:56 +02:00
Matthias Hopf dbc8944ee9 Add get_property support.
So far only BACKLIGHT is changed.
2009-09-03 16:14:56 +02:00
Matthias Hopf c18fc7955d Don't ignore backlight level change to the same level.
If set externally to a different level, this would result in a no-op.
OTOH if the display is switched off (DPMS) you do not want the change to take
place immediately, but rather to be saved and set later when the display is
active again.
2009-09-03 16:14:56 +02:00
Zhenyu Wang fe7693c94a Make DGA optional
As DGA is optional in xserver, we should check this too instead
of always trying to init DGA.

Found when update xserver to 6fffcd5825454a7fe58ffbcfb219f007cf38e731,
but not update xf86dgaproto, which caused X fails to start.

Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
2009-09-02 07:14:57 -07:00
Carl Worth 5812531e08 debug: i830_valid_command: Return invalid for subopcodes with no name
Previously the code would always return the count, before ever looking
into the _3d_cmds table to see if there was actually a valid command.

Thanks to Alan Coopersmith who reported that the code was confusing
parfait:

https://bugs.freedesktop.org/show_bug.cgi?id=21666
2009-08-31 09:30:40 -07:00
Zou Nan hai 7c48c21b22 set correct value for indirect access check bound 2009-08-27 09:47:12 +08:00
Keith Packard 6361c3b9af Fix SHM functions to work with server after 1.6.0
Signed-off-by: Keith Packard <keithp@keithp.com>
2009-08-25 19:33:25 -07:00
Keith Packard 2786a66719 KMS: allocate one bo per crtc for cursor
The KMS API doesn't provide for sharing a single bo for multiple
cursor images, so allocate one bo for each crtc to hold the cursor
image. KMS also only supports ARGB cursors, so don't bother to
allocate buffers for two color cursors.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-08-25 18:37:45 -07:00
Keith Packard e51126c571 Add cursor registers to debug dump output.
Signed-off-by: Keith Packard <keithp@keithp.com>
2009-08-25 18:37:45 -07:00
Keith Packard 5fa8d04d9c Reload cursors as needed when setting new modes.
Cursor images may need rotation, or positions updated when new modes
are set. The server provides a convenience function,
xf86_reload_cursors for precisely this purpose. Just call it after the
new mode is set.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-08-25 18:37:44 -07:00
Jesse Barnes 1fc3f467ab Add KMS only build flag
Rather than refactoring all our init code only to have it go away when
we remove UMS, this patch adds a build time flag to allow the driver to
assume KMS support.

With this flag active, the driver will not request that I/O or MEM be
enabled at probe time, which can allow the server (if other drivers also
cooperate) to run as a non-root user.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2009-08-25 09:48:10 -07:00
Wu Fengguang 5dccd1be3a Add HDMI audio registers
Dump some of the audio registers at server startup time.

(II) intel(0):           AUD_CONFIG: 0x00000004
(II) intel(0):     AUD_HDMIW_STATUS: 0x00000000
(II) intel(0):       AUD_CONV_CHCNT: 0x00000000
(II) intel(0):        VIDEO_DIP_CTL: 0x20000600
(II) intel(0):        AUD_PINW_CNTR: 0x00000040
(II) intel(0):          AUD_CNTL_ST: 0x00002000
(II) intel(0):          AUD_PIN_CAP: 0x00000094
(II) intel(0):         AUD_PINW_CAP: 0x004073bd
(II) intel(0):   AUD_PINW_UNSOLRESP: 0x80000008
(II) intel(0):     AUD_OUT_DIG_CNVT: 0x00000001
(II) intel(0):        AUD_OUT_CWCAP: 0x00006211
(II) intel(0):          AUD_GRP_CAP: 0x00000004

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
2009-08-21 15:10:46 +08:00
Wu Fengguang 38e97d2366 Add intel_audio reg dumping program
It can dump HDMI audio registers for G45.

Signed-off-by: "Wang, Zhenyu Z" <zhenyu.z.wang@intel.com>
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
2009-08-21 13:23:40 +08:00
Kristian Høgsberg 6955fc7a74 kms: Don't use fb offset when using shadow buffer 2009-08-20 17:15:13 -04:00
Eric Anholt 465a4ab416 Align the height of untiled pixmaps to 2 lines as well.
The 965 docs note, and it's probably the case on 915 as well, that the
2x2 subspans are read as a unit, even if the bottom row isn't used.  If
the address in that bottom row extended beyond the end of the GTT, a
fault could occur.

Thanks to Chris Wilson for pointing out the problem.
2009-08-18 18:00:46 -07:00
Jesse Barnes a3962e6f74 Print block length of backlight table
For debugging VBIOS dumps
2009-08-18 10:57:18 -07:00
Jesse Barnes 320f216699 Dump LVDS backlight info from bios_reader
Add LVDS backlight and power VBT structures and dump from the BIOS reader.
2009-08-18 10:57:18 -07:00
Matthias Hopf a509165304 Add BACKLIGHT property support in KMS case. 2009-08-18 13:55:46 +02:00
Zhenyu Wang 376397c21e Fix VGA plane disabling
Only apply on G4X with SR01 bit5 workaround for VGA plane disable, and
restore behavior back for other chips to make sure other modes got disabled
too.

For bug #17235, #19715, #21064, #23178

Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
2009-08-18 10:01:12 +08:00
Matthias Hopf 926c7e7d30 Add HP Mini 5101 to quirks list. 2009-08-13 15:48:21 +02:00
Adam Jackson 7138201977 Fix the chip names printed in the log to be less obnoxious.
Names taken from pci.ids.  Pineview appears to be a platform not a GMCH,
so use the G/GM convention to distinguish.
2009-08-11 14:50:03 -04:00
Eric Anholt e8f0763d40 Fix math in the tiling alignment fix. 2009-08-07 18:24:44 -07:00
Eric Anholt 222b52ef16 Align tiled pixmap height so we don't address beyond the end of our buffers. 2009-08-07 18:20:24 -07:00
Zhenyu Wang 62494407e5 Fix typo in bios_reader for invalid pointer cast
Fixed locally for af45482a52, but pushed
wrong commit.
2009-08-06 13:52:54 +08:00
Eric Anholt 79b6851148 Fix sampler indexes on i965 planar video.
We only set up one sampler, because all of our sampling is the same.  By
using a non-zero index for the other two samplers, we'd dereference (likely)
zeroed data, resulting in using NEAREST filtering.  This was a regression in
40671132cb which incidentally switched from
having 6 samplers to 1.

Bug #22895, #19856
2009-08-05 15:07:14 -07:00
Zou Nan hai f4e4c1a854 It seems that indirect data upper bound check in STATE_BASE_ADDRESS
is not acting like what bspec told on 965gm.
  G45+ follow bspec, but we have to set it to a large value for 965gm.
2009-08-05 15:00:37 +08:00
Zhao Yakui af45482a52 Calculate the DVO relative offset in LVDS data entry to get the DVO timing
Now the DVO timing in LVDS data entry is obtained by using the
following step:
    a. get the entry size for every LVDS panel data
    b. Get the LVDS fp entry for the preferred panel type
    c. get the DVO timing by using entry->dvo_timing

    In our driver the entry->dvo_timing is related with the size of
lvds_fp_timing. For example: the size is 46.

    But it seems that the size of lvds_fp_timing varies on the differnt
platform. In such case we will get the incorrect DVO timing because of
the incorrect DVO offset in LVDS panel data entry.

Calculate the DVO timing offset in LVDS data entry to get the DVO timing
    a. get the DVO timing offset in the LVDS fp data entry by using the
pointer definition in LVDS data ptr
    b. get the LVDS data entry
    c. get the DVO timing by adding the DVO timing offset to data entry

https://bugs.freedesktop.org/show_bug.cgi?id=22787

Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
2009-08-04 11:32:26 +08:00
Dave Airlie 50e2a6734d intel: drop RES_SHARED_VGA not needed anymore 2009-07-28 18:26:25 +10:00
Dave Airlie f3387310f3 xserver: fix up for stable build
reported by Arkadiusz Miskiewicz <arekm@maven.pl>
2009-07-28 18:27:10 +10:00
Dave Airlie 9bc0096f9d intel: since driver depends on newer server don't need to wrap this
drop resource/RAC interactions
2009-07-28 13:55:39 +10:00
Dave Airlie 9a3b568d62 intel: update for resources/RAC API removal 2009-07-28 13:42:07 +10:00
Krzysztof Halasa 3418c6c16b h/v bias in 3DSTATE_DEST_BUFFER_VARIABLES is 4-bits wide
Fixes bug #22370
2009-07-28 10:47:44 +08:00
Dave Airlie 3784457384 intel: remove unneeded includes
none of these need the resource includes
2009-07-28 10:10:13 +10:00
Keith Packard 8084f76d86 Allow DRM mode setting to include transformations
This removes the explicit transform disabling code in drm_set_mode_major.
Without a fixed X server, transforms will still be broken, but even a fixed
X server can't work around this driver bug.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-07-26 13:17:13 -07:00
Xiang, Haihao 9a45ace207 XvMC: enable XvMC/XvMC-VLD on IGDNG 2009-07-24 10:48:00 +08:00
Xiang, Haihao 043b4a866a add compiled shader programs for XvMC/XvMC-VLD on IGDNG 2009-07-24 10:47:39 +08:00
Xiang, Haihao 7684adaa37 Check the version of intel-gen4asm tool in configure.ac 2009-07-24 10:47:28 +08:00
Xiang, Haihao 7dc95b4f1d XvMC: pin XvMC buffers under KMS.
Under KMS, the buffer allocated by i830_allocate_memory
isn't pinned anymore. However currently 915 XvMC needs
static offsets.

Fixes bug #22872
2009-07-24 10:39:05 +08:00
Eric Anholt 12c5aeca7a 8xx render: Add limited support for a8 dests.
This improves aa10text performance from 74k to 569k on my 855 laptop.
This also causes my 865 to hang on aa10text like it does on rgb10text,
thanks to actually hitting render accel.
2009-07-22 09:58:17 -07:00
Eric Anholt 6b7728491c Only align DRI2 tiled pixmaps to the DRI2 tiled pixmap alignment requirement.
This should save significant amounts of memory for glyph and other small
pixmap storage.

Bug #21387
2009-07-22 09:16:00 -07:00
Eric Anholt 22f7cbc32b uxa: Tell the driver when we're just going to immediately map the pixmap.
This lets the driver allocate a nice idle buffer object instead of a
busy one, reducing runtime of firefox-20090601 on my G45 from 50.7 (+/- .41%)
to 48.4 (+/- 1.1%).
2009-07-22 09:16:00 -07:00