Maarten Maathuis [Sun, 3 Feb 2008 11:03:43 +0000 (12:03 +0100)]
Fix undefined symbol.
Maarten Maathuis [Sat, 2 Feb 2008 19:34:57 +0000 (20:34 +0100)]
Remove a few leftovers to actually make the last commits work.
Maarten Maathuis [Sat, 2 Feb 2008 18:53:32 +0000 (19:53 +0100)]
Kill NVShowHideCursor and use a wrapper.
Maarten Maathuis [Sat, 2 Feb 2008 18:26:13 +0000 (19:26 +0100)]
Remove nvRead/WriteVGA in favor of nvRead/WriteCurVGA wrappers.
Maarten Maathuis [Sat, 2 Feb 2008 18:17:32 +0000 (19:17 +0100)]
Kill NVLockUnlock and make it redirect to NVLockUnlockHead.
Maarten Maathuis [Sat, 2 Feb 2008 14:12:00 +0000 (15:12 +0100)]
More wrapper death.
Maarten Maathuis [Sat, 2 Feb 2008 14:06:02 +0000 (15:06 +0100)]
Let some wrappers die.
Maarten Maathuis [Sat, 2 Feb 2008 11:47:32 +0000 (12:47 +0100)]
Undo last commit and move it to drm.
Maarten Maathuis [Sat, 2 Feb 2008 11:28:44 +0000 (12:28 +0100)]
NV40: Fix longstanding issue with nouveau crashing after using blob.
- Took me a while to track down, but for me this is definately it.
- In my case i got the X cross and then it would freeze and i would get a fifo dump.
- Don't be shy, let me know if this works for you too.
Stephane Marchesin [Sat, 2 Feb 2008 03:04:58 +0000 (04:04 +0100)]
Don't allocate the whole AGP gart as a scratch buffer, since we still need to allocate the fifo afterwards.
Maarten Maathuis [Fri, 1 Feb 2008 22:34:32 +0000 (23:34 +0100)]
Don't use functions that are not supposed to be used in randr12 mode.
- Also add NVLockUnlockHead() and NVSetOwner() functions.
Maarten Maathuis [Fri, 1 Feb 2008 21:41:09 +0000 (22:41 +0100)]
Remove usage of "illegal" wrappers in code that also used for randr12 mode.
- I've got something prettier in mind to clean this up, which will likely follow.
Maarten Maathuis [Fri, 1 Feb 2008 18:14:38 +0000 (19:14 +0100)]
randr12: Remove a hack, confirmed on 7600GS that it is unneeded.
- This was one of the cards that did need it in the past.
Maarten Maathuis [Fri, 1 Feb 2008 13:47:32 +0000 (14:47 +0100)]
randr12: Some minor fixes.
Arthur Huillet [Fri, 1 Feb 2008 09:04:32 +0000 (10:04 +0100)]
NV10 EXA: limit regcomb state re-emission, fix logic for A8 + A8 yielding a 3% perf improvement :p
Maarten Maathuis [Wed, 30 Jan 2008 21:57:09 +0000 (22:57 +0100)]
(hopefully) Fix build on powerpc.
Arthur Huillet [Wed, 30 Jan 2008 17:37:39 +0000 (18:37 +0100)]
Xv: NV30 overlay can not scale down by more than 0.5x
Stuart Bennett [Wed, 30 Jan 2008 17:43:16 +0000 (17:43 +0000)]
Fail gracefully for too-big resolutions / colour depths
Maarten Maathuis [Wed, 30 Jan 2008 17:50:37 +0000 (18:50 +0100)]
randr12: Misc change.
Maarten Maathuis [Wed, 30 Jan 2008 17:35:18 +0000 (18:35 +0100)]
Check if the framebuffer can fit into the offscreen memory.
Arthur Huillet [Wed, 30 Jan 2008 17:24:44 +0000 (18:24 +0100)]
Xv: NV04 overlay can not scale down at all, as confirmed by DirectFB
Stuart Bennett [Wed, 30 Jan 2008 14:44:14 +0000 (14:44 +0000)]
PBUS define additions
Stuart Bennett [Wed, 30 Jan 2008 14:35:25 +0000 (14:35 +0000)]
PCRTC define additions
Stuart Bennett [Wed, 30 Jan 2008 15:03:06 +0000 (15:03 +0000)]
Missed these in the ->absolute conversion
Arthur Huillet [Tue, 29 Jan 2008 17:46:16 +0000 (18:46 +0100)]
Xv: detection of composite for the overlay
Stuart Bennett [Wed, 30 Jan 2008 01:31:43 +0000 (01:31 +0000)]
Make bios port io use PVIO as appropriate, and have harsh validity checks
Stuart Bennett [Wed, 30 Jan 2008 00:36:59 +0000 (00:36 +0000)]
Make PLL setting quieter
Stuart Bennett [Tue, 29 Jan 2008 23:10:27 +0000 (23:10 +0000)]
Move some regs from nv_bios.c to nvreg.h
And use more symbolic names in nv_bios
Stuart Bennett [Tue, 29 Jan 2008 22:41:40 +0000 (22:41 +0000)]
Tighten bios reg checks a little
Stuart Bennett [Wed, 30 Jan 2008 00:30:46 +0000 (00:30 +0000)]
randr12: make nv4x plls less special
Stuart Bennett [Tue, 29 Jan 2008 22:33:34 +0000 (22:33 +0000)]
Don't attempt to parse BIT D and L tables on non-mobile cards
Stuart Bennett [Tue, 29 Jan 2008 18:57:28 +0000 (18:57 +0000)]
Add some mobile pci-ids, and reorder numerically
Maarten Maathuis [Tue, 29 Jan 2008 18:04:25 +0000 (19:04 +0100)]
randr12: Remove excessive writing of VTOwner.
Stuart Bennett [Tue, 29 Jan 2008 17:30:32 +0000 (17:30 +0000)]
Make sure nv04 has some defaults (as the bios parsing is non-existant)
Stuart Bennett [Sun, 27 Jan 2008 22:11:31 +0000 (22:11 +0000)]
Use absolute regs in the DDX
Due to having to make a few defines for regs that were hardcoded, there could
be breakage (nv04 overlay, this means you)
Hopefully not.
Stuart Bennett [Tue, 29 Jan 2008 14:14:26 +0000 (14:14 +0000)]
Reorganise pll limit retrieval
Maarten Maathuis [Tue, 29 Jan 2008 09:53:14 +0000 (10:53 +0100)]
NV30EXA: Always init texture origin, please report if your viewport setup needs to be different.
Maarten Maathuis [Mon, 28 Jan 2008 19:55:47 +0000 (20:55 +0100)]
Forgot to be paranoid.
Maarten Maathuis [Mon, 28 Jan 2008 19:51:20 +0000 (20:51 +0100)]
Small improvement to nouveau_dma_wait, at least makes it show up in profiling in a clear way.
- This may also slightly reduce the cost of a very short wait, but not by much.
Stuart Bennett [Sat, 26 Jan 2008 20:22:08 +0000 (20:22 +0000)]
randr12: 2nd attempt on nv11 console restore
Stuart Bennett [Sat, 26 Jan 2008 18:09:10 +0000 (18:09 +0000)]
Use NV_{WR,RD}08 to avoid double logging io
And one less bios FIXME
Stuart Bennett [Mon, 21 Jan 2008 23:54:51 +0000 (23:54 +0000)]
randr12: remove unused PLL code
Stuart Bennett [Fri, 25 Jan 2008 16:05:59 +0000 (16:05 +0000)]
randr12: attempt to fix brokenness of head setting / getting on nv11
Stuart Bennett [Sat, 26 Jan 2008 14:20:01 +0000 (14:20 +0000)]
randr12: don't do load detection on nv11
Stuart Bennett [Sat, 26 Jan 2008 01:46:59 +0000 (01:46 +0000)]
Assume 18 bit laptop panels by default, add a message that may trigger on 24 bit panels
Revert "Invert 18/24 bit interface flag, so that the default value (0) does not imply dithering"
This reverts commit
5b9dc7ad6eb2f16c4ca8824c2a19c85bbe1f126b.
Stuart Bennett [Sat, 26 Jan 2008 01:36:41 +0000 (01:36 +0000)]
Detect mobile BMP biosen
I'd really love to know how where this info is in BIT
Maarten Maathuis [Fri, 25 Jan 2008 22:31:58 +0000 (23:31 +0100)]
NV30EXA: Fix viewport setup + switch to triangle based composite.
Stuart Bennett [Fri, 25 Jan 2008 01:18:50 +0000 (01:18 +0000)]
randr12: fix / annotate a couple of ddc thinkos
catch a longstanding source of error too
Stuart Bennett [Fri, 25 Jan 2008 00:33:07 +0000 (00:33 +0000)]
Implement opcodes 0x66, 0x67, and 0x68
Courtesy jwstolk's trace
Names taken from nv11 biosmod scps
Maarten Maathuis [Thu, 24 Jan 2008 23:10:08 +0000 (00:10 +0100)]
randr12: Rework native modes for TMDS.
- Choose a preferred ddc mode when available, otherwise the one with the highest refresh.
- Fall back on cvt modes, only when needed.
Stuart Bennett [Wed, 23 Jan 2008 23:02:46 +0000 (23:02 +0000)]
oops
Stephane Marchesin [Wed, 23 Jan 2008 22:40:51 +0000 (23:40 +0100)]
Use proper version.
Stuart Bennett [Wed, 23 Jan 2008 01:13:58 +0000 (01:13 +0000)]
Fix C51 refclk
Stuart Bennett [Wed, 23 Jan 2008 20:59:50 +0000 (20:59 +0000)]
randr12: calculate (and set, for nv40) sel_clk before calculating plls
Maarten Maathuis [Wed, 23 Jan 2008 18:43:42 +0000 (19:43 +0100)]
Fix big bug in commit "Mostly log message changes".
- Please don't hide such important changes in a commit like that ;-)
Stuart Bennett [Wed, 23 Jan 2008 16:37:31 +0000 (16:37 +0000)]
Redo sel_clk setting and update its documentation
My apologies if this breaks stuff.
Stuart Bennett [Wed, 23 Jan 2008 02:09:56 +0000 (02:09 +0000)]
Fail on LVDS DCB entry parsing issues
Stuart Bennett [Wed, 23 Jan 2008 00:09:11 +0000 (00:09 +0000)]
Mostly log message changes
Ben Skeggs [Wed, 23 Jan 2008 12:45:37 +0000 (23:45 +1100)]
not an appropriate place for this type of thing..
Maarten Maathuis [Wed, 23 Jan 2008 10:42:55 +0000 (11:42 +0100)]
randr12: Increase cvt mode to 72 Hz.
- I've had occasions were i did slightly notice something at 60 Hz, and no problems at a higher setting.
- I must admit i was a little bit tired at the time, but i figure it won't hurt (much).
Maarten Maathuis [Wed, 23 Jan 2008 10:20:47 +0000 (11:20 +0100)]
NV40EXA: Use the same approach as the texture adapter for rendering.
- Verified to work for abitrary rotation.
- This should eliminate diagional tearing altogether.
Maarten Maathuis [Wed, 23 Jan 2008 09:28:25 +0000 (10:28 +0100)]
NV40TEX: Switch to a big triangle and clip it to a quad.
- On some systems (NV43, NV46 are known) an artifact shows when 2 triangles are combines and the size is larger than roughly 512x512.
- The trick is draw a single triangle and use scissors to turn it into a quad.
- Someone once asked me if i ever made drawings, well i did in this case and i've included it for future reference.
Stuart Bennett [Tue, 22 Jan 2008 18:33:42 +0000 (18:33 +0000)]
Fix LVDS with DCB 2.0
Also use the X_ERROR facility for errors, not ErrorF
Maarten Maathuis [Tue, 22 Jan 2008 18:00:49 +0000 (19:00 +0100)]
Xv: Remove illegal usage of private exa symbols.
Maarten Maathuis [Tue, 22 Jan 2008 14:53:38 +0000 (15:53 +0100)]
NV40TEX: Use width, not (x2, y2).
Arthur Huillet [Tue, 22 Jan 2008 10:42:19 +0000 (11:42 +0100)]
Xv: NV12 overlay copy - removed wrong byteswapping on PPC, reported by moondrake
Stuart Bennett [Mon, 21 Jan 2008 23:44:47 +0000 (23:44 +0000)]
randr12: some tidyup
Stuart Bennett [Mon, 21 Jan 2008 22:35:58 +0000 (22:35 +0000)]
randr12: more beautiful dithering
Stephane Marchesin [Mon, 21 Jan 2008 21:19:24 +0000 (22:19 +0100)]
oops :)
Stephane Marchesin [Mon, 21 Jan 2008 20:43:11 +0000 (21:43 +0100)]
Quickly hacked support for NV6x.
Stuart Bennett [Mon, 21 Jan 2008 20:16:56 +0000 (20:16 +0000)]
randr12: fix dual head restore
Stuart Bennett [Mon, 21 Jan 2008 18:51:52 +0000 (18:51 +0000)]
randr12: save and restore palette
Stuart Bennett [Mon, 21 Jan 2008 15:03:59 +0000 (15:03 +0000)]
Make LVDS bios script logs easier to understand
and fix a backwards comparison
Stuart Bennett [Mon, 21 Jan 2008 14:14:07 +0000 (14:14 +0000)]
randr12: avoid SIGFPE
Stuart Bennett [Mon, 21 Jan 2008 14:09:46 +0000 (14:09 +0000)]
debug_modes breaks build on old xservers
Stuart Bennett [Mon, 21 Jan 2008 14:06:42 +0000 (14:06 +0000)]
randr12: use correct clock for LVDS modesetting part 2
Stuart Bennett [Mon, 21 Jan 2008 13:46:15 +0000 (13:46 +0000)]
randr12: use correct clock for LVDS modesetting
Stuart Bennett [Mon, 21 Jan 2008 12:27:36 +0000 (12:27 +0000)]
Don't log strange characters
Stuart Bennett [Sun, 20 Jan 2008 21:53:30 +0000 (21:53 +0000)]
Use more imaginative log levels than X_INFO
Stuart Bennett [Sun, 20 Jan 2008 20:17:28 +0000 (20:17 +0000)]
Use stdbool.h types in nv_bios.c
It makes vim highlighting work better and reduces shift key wear.
Coincidentally it's what the drm uses too.
bool, true and false are defined in IEEE 1003.1 (2003) and POSIX since C99
(as is stdint.h, which we use already)
root [Sun, 20 Jan 2008 18:38:11 +0000 (18:38 +0000)]
randr12: fix early cards
Maarten Maathuis [Sun, 20 Jan 2008 18:06:49 +0000 (19:06 +0100)]
NV40TEX: Don't sync when compositing, will have bad sideeffects if the compositing manager tries it too.
Maarten Maathuis [Sun, 20 Jan 2008 16:28:13 +0000 (17:28 +0100)]
Some misc cleanup.
Maarten Maathuis [Sun, 20 Jan 2008 16:11:27 +0000 (17:11 +0100)]
randr12: Fix a major screwup i made during a cleanup.
Maarten Maathuis [Sun, 20 Jan 2008 16:00:58 +0000 (17:00 +0100)]
NV40TEX: Implement sync to vblank.
- I don't know why this didn't work the first time i tried, maybe i missed it due to another bug (that also caused tearing).
- This should also work reasonably well for composited situations, but ofcource we can't guarantee that.
Stuart Bennett [Sun, 20 Jan 2008 14:47:52 +0000 (14:47 +0000)]
randr12: init some more Xv state
Stuart Bennett [Sat, 19 Jan 2008 14:02:43 +0000 (14:02 +0000)]
minor debug correction
Stuart Bennett [Sun, 20 Jan 2008 01:56:00 +0000 (01:56 +0000)]
INIT_8E opcode
again, from pq's trace
Stuart Bennett [Sat, 19 Jan 2008 01:37:34 +0000 (01:37 +0000)]
INIT_IO opcode
Based on pq's g8x trace
Maarten Maathuis [Sat, 19 Jan 2008 18:24:04 +0000 (19:24 +0100)]
randr12: hide cursor before locking + misc cleanup.
Maarten Maathuis [Sat, 19 Jan 2008 15:39:26 +0000 (16:39 +0100)]
randr12: Remove unneeded vgahw stuff.
Maarten Maathuis [Sat, 19 Jan 2008 15:29:57 +0000 (16:29 +0100)]
randr12: Move away from some of the nv_hw wrappers.
Maarten Maathuis [Sat, 19 Jan 2008 14:59:48 +0000 (15:59 +0100)]
randr12: Remove usage of nvRead/WriteVGA0/1.
Maarten Maathuis [Sat, 19 Jan 2008 10:28:41 +0000 (11:28 +0100)]
randr12: Some cleanup.
- framebuffer consoles can use most of the normal stuff, so change it back.
- some cursor deobfuscation
Stuart Bennett [Fri, 18 Jan 2008 20:49:58 +0000 (20:49 +0000)]
More detailed modesetting debug (both randr12 and oldstyle)
Stuart Bennett [Fri, 18 Jan 2008 18:10:40 +0000 (18:10 +0000)]
Remove no longer needed panel quirk
Stuart Bennett [Fri, 18 Jan 2008 17:02:32 +0000 (17:02 +0000)]
Use bios PLL functions on nv4x
And a minor completeness correction
Maarten Maathuis [Fri, 18 Jan 2008 22:45:51 +0000 (23:45 +0100)]
randr12: Refine CR4B, anyone know what this does?
- There is more to this register.
Stuart Bennett [Fri, 18 Jan 2008 16:50:50 +0000 (16:50 +0000)]
Rerefactor getting pll limits for nv4x
Stuart Bennett [Fri, 18 Jan 2008 14:24:48 +0000 (14:24 +0000)]
Use pll limits infrastructure on single stage plls
And add default PLL limits on old cards