summaryrefslogtreecommitdiff
path: root/src/i830_driver.c
AgeCommit message (Collapse)Author
2007-03-09Merge remote branch 'origin/master' into i830-pageflipMichel Dänzer
2007-03-09Merge remote branch 'origin/master' into i830-pageflipMichel Dänzer
Conflicts: src/i830_dri.c
2007-03-07Bug #10157: Fix cursor corruption on server regen.Eric Anholt
2007-03-06Remove usage of 'shadow' module. Use xf86CrtcScreenInit.Keith Packard
With the new mode setting code, rotation is handled outside of the driver, so the old usage of the 'shadow' module is no longer needed. Code to initialize the crtc structures has been moved out of the driver and into the modes code.
2007-03-06Bug #9898: Fix a crash with NoAccel set.Eric Anholt
2007-03-06Remove leftover code that was disabling tiling after we set it up.Eric Anholt
2007-03-06Continue to allocate the legacy texture pool by default.Eric Anholt
This is a partial revert of 7358642e64ab6d13bc1dc1a44703ee66d715ff61 If we don't allocate it now, when the DRM version is too low there won't be any memory allocated and DRI will fail. Instead, waste the memory in the i915tex case for now, and leave fixing it right (check DRM version up front and decide which memory manager to set up) to later.
2007-03-06Fix reduced DRI memory manager size.Michel Dänzer
pI830->mmSize is in kB.
2007-03-06Merge remote branch 'origin/master' into i830-pageflipMichel Dänzer
Conflicts: src/i830_display.c src/i830_driver.c
2007-03-05Move EnterVT mode setting code to xf86SetDesiredModes.Keith Packard
Make the application of crtc desiredModes generic code instead of per-driver by creating xf86SetDesiredModes from the code that was in EnterVT and calling it. Also, move the frame buffer clear until just before mode setting to make sure things are mapped correctly.
2007-03-05Merge remote branch 'origin/master' into i830-pageflipMichel Dänzer
Conflicts: src/i830.h src/i830_dri.c src/i830_dri.h src/i830_driver.c src/i830_memory.c src/i830_xaa.c
2007-03-05Fix DRM memory manager initialization.Michel Dänzer
It takes the offset and size in pages, not bytes.
2007-03-05Fix handling of new vs. old texture pools.Michel Dänzer
Only one of them can be active.
2007-03-05Be more verbose when page flipping can't be enabled for various reasons.Michel Dänzer
2007-03-04Merge branch 'modesetting'Eric Anholt
Conflicts: configure.ac src/i830_driver.c src/i830_modes.c src/i830_video.c
2007-03-03Merge branch 'modesetting-origin' into modesettingKeith Packard
2007-03-03Update for Aaron's xserver changes.Keith Packard
Add xf86CrtcConfigFuncs to xf86CrtcConfigInit Add canGrow option to xf86InitialConfiguration
2007-02-28Update vblank pipe setup when setting a mode.Michel Dänzer
2007-02-26Consolidate shared structure allocation to the start of ScreenInit.Eric Anholt
Previously, the structures would get allocated unnecessarily once, and wouldn't get reallocated in time at server regen.
2007-02-26Fix XV issues on 965 after the allocation reworkEric Anholt
2007-02-26Move the initial EnterVT to after we've set up acceleration.Eric Anholt
This fixes a crash with initial rotation and EXA due to EXA not being initialized in time for the shadow pixmap setup.
2007-02-26Fix some texture memory allocation issues.Eric Anholt
2007-02-23Improve logging of memory allocation passes, and clean the code up a bit.Eric Anholt
2007-02-23Move memory allocation to ScreenInit rather than PreInit.Eric Anholt
This lets us do memory allocation just once rather than having several passes (as long as things succeed), avoids trouble with zaphod mode, and will let us do better automatic sizing of allocations soon.
2007-02-23Rework the video memory allocation.Eric Anholt
The previous allocator worked in multiple passes, with (at least) one of setting up allocations, another to attempt to adjust those for tiling, and then a pass to set up the offsets and fix them in memory. The new allocator is simpler, allocating memory immediately if possible, setting up tiling up front, and choosing offsets immediately. AGP memory is only allocated to back actual memory used, saving some memory that would have been allocated for padding previous. It will also allow dynamic freeing and reallocation of memory, which will be useful for framebuffer resizing.
2007-02-22Disable unused functions after configuring the remaining resources.Keith Packard
This eliminates an unsightly flash of the hardware cursor during X server startup.
2007-02-20Add support for triple buffering using a third static buffer.Michel Dänzer
Need to bump the DRI DDX version minor for the added SAREA fields.
2007-02-16Change rotation pixmap creation API to permit start-time rotation.Keith Packard
Start time rotation requires that the pixmap be created after the server has initialized the screens. Delay the pixmap creation until the first block handler invocation.
2007-02-14Create driver-independent DGA hooks, remove i830 DGA code.Keith Packard
As RandR needs to poke at DGA code, and we want the RandR code to be driver-independent, it seemed easier to just make the DGA code driver-independent as well.
2007-02-14WIP DGA generic support.root
2007-02-14Revive i830 page flipping support.Michel Dänzer
Use the damage layer directly instead of via shadowfb.
2007-02-13Attempt to detect panel fixed mode from EDID or current programmed mode.Eric Anholt
These two sources are placed in higher priority to the BIOS data when available, since the BIOS data has proven unreliable. The BIOS data is still read, and warnings printed if it doesn't match what we probe. The BIOS data remains useful for the situation where we want to turn on LVDS but there is no EDID available and no current mode programmed (i.e. booting with VGA or TV connected).
2007-02-01Improve register debugging output.Eric Anholt
This includes not reporting some fields on hardware where those bits are reserved, correcting one of the hardware error bit numbers, and reducing the severity of the debugging output warnings.
2007-02-01Remove some more dead options.Eric Anholt
2007-01-31Remove custom accelerated rotation code now that it's all done through Render.Eric Anholt
2007-01-29Merge branch 'modesetting-rotation' into modesettingKeith Packard
This adds reasonably driver-independent rotation support to the common layer. The piece required in the driver is to allocate and redirect the crtc to a shadow frame buffer. The driver uses Render to perform the actual rotation operation (which leaves us free to do fun projective transforms at some point in the future :-).
2007-01-29Remove dead code to undo the damage of xf86SetModeCrtc() blank limiting.Eric Anholt
2007-01-25Make rotated shadow buffer allocation dynamic.Eric Anholt
For EXA, this requires version 2.1 of EXA to do rotation, as the VT switching issues were too complicated otherwise.
2007-01-22Replace the custom SaveScreen function with a generic function calling DPMS.Eric Anholt
With this, additional power saving occurs with the core screensaver, for example by turning off LVDS backlight.
2007-01-18Allocate separate cursor memory per CRTC and rotate cursors appropriately.Eric Anholt
Also, add bind/unbind of the shadow rotate buffers, which was missed in a previous commit.
2007-01-16Merge branch 'modesetting' into modesetting-rotationKeith Packard
Conflicts: src/i830_driver.c src/i830_randr.c Just a few sync changes.
2007-01-16Interim work on rotation support with new xf86 code.Keith Packard
Yes, there are lots of bits tied together here, and we should split this patch apart. Move I830 mode setting to xf86 mode setting. Make mode setting function also set the base address. This should fix problems where the base gets set incorrectly at times. Add driver-independent rotation support, requires driver-specific hooks for shadow pixmap allocation, otherwise it uses Render for painting.
2007-01-15patch to control mergedfb options, bug #9664Emilio Scalise
2007-01-15Convert I830PipeSetMode to xf86CrtcSetMode. Add rotation structures.Keith Packard
Makes the mode setting logic device independent. Magic rename hooks allow multiple drivers to provide the generic code without name conflicts. Rotation code requires special pixmap creation hook, and uses Render to perform the actual rotation.
2007-01-11Correct x/y/pitch limitations in several cases, and detail them in i830_exa.c.Eric Anholt
This reduces max framebuffer width and increases max framebuffer height on 965, reduces max X/Y on pre-965 EXA (could have caused mis-rendering), and increases max X/Y on 965 EXA (would have prevented acceleration).
2007-01-10Formalize sync interfaceWang Zhenyu
We should just call i830MarkSync/i830WaitSync in places we need, which care for both XAA and EXA.
2007-01-09Fix bug #8536, i915 BIOS fails when restarting Xserver.Alan Hourihane
2007-01-06Numerous symbol scope issues.Keith Packard
I830EntityIndex is shared between 810 and newer driver. Move most EXA rendering state into I830 structure. Declare shared variables in shared header files rather than .c.
2007-01-06[PATCH] Add rotation support for 965.Wang Zhenyu
2007-01-06[PATCH] Replace broken PCI resource size detection with pciGetBaseSize() call.Eric Anholt
Signed-off-by: Keith Packard <keithp@neko.keithp.com>