nouveau
16 years agonv40 video texture: first pass at bicubic video.
Stephane Marchesin [Tue, 29 Jan 2008 20:24:39 +0000 (21:24 +0100)] 
nv40 video texture: first pass at bicubic video.

16 years agoUpdate to newer nouveau_class.h
Stephane Marchesin [Mon, 28 Jan 2008 03:52:01 +0000 (04:52 +0100)] 
Update to newer nouveau_class.h

16 years agoUpdate to latest nouveau_class.h
Stephane Marchesin [Sat, 26 Jan 2008 18:02:50 +0000 (19:02 +0100)] 
Update to latest nouveau_class.h

16 years agoDon't FIRE_RING() when in NoAccel mode.
Jaime Velasco Juan [Sun, 3 Feb 2008 14:45:32 +0000 (15:45 +0100)] 
Don't FIRE_RING() when in NoAccel mode.

16 years agoSome minor reindenting.
Maarten Maathuis [Sun, 3 Feb 2008 14:43:35 +0000 (15:43 +0100)] 
Some minor reindenting.

16 years agoexa: those limits were a bit conservative on some hw.
Ben Skeggs [Sun, 3 Feb 2008 14:19:23 +0000 (01:19 +1100)] 
exa: those limits were a bit conservative on some hw.

AFAIK nv2x up should be able to handle 4096x4096 textures and
render targets.

16 years agoexa: more accurate coordinate limits
Ben Skeggs [Sun, 3 Feb 2008 14:07:07 +0000 (01:07 +1100)] 
exa: more accurate coordinate limits

16 years agoFix NVExaPixmapMap() for NOUVEAU_EXA_PIXMAPS case.
Maarten Maathuis [Sun, 3 Feb 2008 13:54:41 +0000 (14:54 +0100)] 
Fix NVExaPixmapMap() for NOUVEAU_EXA_PIXMAPS case.

16 years agoFix undefined symbol.
Maarten Maathuis [Sun, 3 Feb 2008 11:03:43 +0000 (12:03 +0100)] 
Fix undefined symbol.

16 years agoRemove a few leftovers to actually make the last commits work.
Maarten Maathuis [Sat, 2 Feb 2008 19:34:57 +0000 (20:34 +0100)] 
Remove a few leftovers to actually make the last commits work.

16 years agoKill NVShowHideCursor and use a wrapper.
Maarten Maathuis [Sat, 2 Feb 2008 18:53:32 +0000 (19:53 +0100)] 
Kill NVShowHideCursor and use a wrapper.

16 years agoRemove nvRead/WriteVGA in favor of nvRead/WriteCurVGA wrappers.
Maarten Maathuis [Sat, 2 Feb 2008 18:26:13 +0000 (19:26 +0100)] 
Remove nvRead/WriteVGA in favor of nvRead/WriteCurVGA wrappers.

16 years agoKill NVLockUnlock and make it redirect to NVLockUnlockHead.
Maarten Maathuis [Sat, 2 Feb 2008 18:17:32 +0000 (19:17 +0100)] 
Kill NVLockUnlock and make it redirect to NVLockUnlockHead.

16 years agoMore wrapper death.
Maarten Maathuis [Sat, 2 Feb 2008 14:12:00 +0000 (15:12 +0100)] 
More wrapper death.

16 years agoLet some wrappers die.
Maarten Maathuis [Sat, 2 Feb 2008 14:06:02 +0000 (15:06 +0100)] 
Let some wrappers die.

16 years agoUndo last commit and move it to drm.
Maarten Maathuis [Sat, 2 Feb 2008 11:47:32 +0000 (12:47 +0100)] 
Undo last commit and move it to drm.

16 years agoNV40: Fix longstanding issue with nouveau crashing after using blob.
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.

16 years agoDon't allocate the whole AGP gart as a scratch buffer, since we still need to allocat...
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.

16 years agoDon't use functions that are not supposed to be used in randr12 mode.
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.

16 years agoRemove usage of "illegal" wrappers in code that also used for randr12 mode.
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.

16 years agorandr12: Remove a hack, confirmed on 7600GS that it is unneeded.
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.

16 years agorandr12: Some minor fixes.
Maarten Maathuis [Fri, 1 Feb 2008 13:47:32 +0000 (14:47 +0100)] 
randr12: Some minor fixes.

16 years agoNV10 EXA: limit regcomb state re-emission, fix logic for A8 + A8 yielding a 3% perf...
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

16 years ago(hopefully) Fix build on powerpc.
Maarten Maathuis [Wed, 30 Jan 2008 21:57:09 +0000 (22:57 +0100)] 
(hopefully) Fix build on powerpc.

16 years agoXv: NV30 overlay can not scale down by more than 0.5x
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

16 years agoFail gracefully for too-big resolutions / colour depths
Stuart Bennett [Wed, 30 Jan 2008 17:43:16 +0000 (17:43 +0000)] 
Fail gracefully for too-big resolutions / colour depths

16 years agorandr12: Misc change.
Maarten Maathuis [Wed, 30 Jan 2008 17:50:37 +0000 (18:50 +0100)] 
randr12: Misc change.

16 years agoCheck if the framebuffer can fit into the offscreen memory.
Maarten Maathuis [Wed, 30 Jan 2008 17:35:18 +0000 (18:35 +0100)] 
Check if the framebuffer can fit into the offscreen memory.

16 years agoXv: NV04 overlay can not scale down at all, as confirmed by DirectFB
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

16 years agoPBUS define additions
Stuart Bennett [Wed, 30 Jan 2008 14:44:14 +0000 (14:44 +0000)] 
PBUS define additions

16 years agoPCRTC define additions
Stuart Bennett [Wed, 30 Jan 2008 14:35:25 +0000 (14:35 +0000)] 
PCRTC define additions

16 years agoMissed these in the ->absolute conversion
Stuart Bennett [Wed, 30 Jan 2008 15:03:06 +0000 (15:03 +0000)] 
Missed these in the ->absolute conversion

16 years agoXv: detection of composite for the overlay
Arthur Huillet [Tue, 29 Jan 2008 17:46:16 +0000 (18:46 +0100)] 
Xv: detection of composite for the overlay

16 years agoMake bios port io use PVIO as appropriate, and have harsh validity checks
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

16 years agoMake PLL setting quieter
Stuart Bennett [Wed, 30 Jan 2008 00:36:59 +0000 (00:36 +0000)] 
Make PLL setting quieter

16 years agoMove some regs from nv_bios.c to nvreg.h
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

16 years agoTighten bios reg checks a little
Stuart Bennett [Tue, 29 Jan 2008 22:41:40 +0000 (22:41 +0000)] 
Tighten bios reg checks a little

16 years agorandr12: make nv4x plls less special
Stuart Bennett [Wed, 30 Jan 2008 00:30:46 +0000 (00:30 +0000)] 
randr12: make nv4x plls less special

16 years agoDon't attempt to parse BIT D and L tables on non-mobile cards
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

16 years agoAdd some mobile pci-ids, and reorder numerically
Stuart Bennett [Tue, 29 Jan 2008 18:57:28 +0000 (18:57 +0000)] 
Add some mobile pci-ids, and reorder numerically

16 years agorandr12: Remove excessive writing of VTOwner.
Maarten Maathuis [Tue, 29 Jan 2008 18:04:25 +0000 (19:04 +0100)] 
randr12: Remove excessive writing of VTOwner.

16 years agoMake sure nv04 has some defaults (as the bios parsing is non-existant)
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)

16 years agoUse absolute regs in the DDX
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.

16 years agoReorganise pll limit retrieval
Stuart Bennett [Tue, 29 Jan 2008 14:14:26 +0000 (14:14 +0000)] 
Reorganise pll limit retrieval

16 years agoNV30EXA: Always init texture origin, please report if your viewport setup needs to...
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.

16 years agoForgot to be paranoid.
Maarten Maathuis [Mon, 28 Jan 2008 19:55:47 +0000 (20:55 +0100)] 
Forgot to be paranoid.

16 years agoSmall improvement to nouveau_dma_wait, at least makes it show up in profiling in...
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.

16 years agorandr12: 2nd attempt on nv11 console restore
Stuart Bennett [Sat, 26 Jan 2008 20:22:08 +0000 (20:22 +0000)] 
randr12: 2nd attempt on nv11 console restore

16 years agoUse NV_{WR,RD}08 to avoid double logging io
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

16 years agorandr12: remove unused PLL code
Stuart Bennett [Mon, 21 Jan 2008 23:54:51 +0000 (23:54 +0000)] 
randr12: remove unused PLL code

16 years agorandr12: attempt to fix brokenness of head setting / getting on nv11
Stuart Bennett [Fri, 25 Jan 2008 16:05:59 +0000 (16:05 +0000)] 
randr12: attempt to fix brokenness of head setting / getting on nv11

16 years agorandr12: don't do load detection on nv11
Stuart Bennett [Sat, 26 Jan 2008 14:20:01 +0000 (14:20 +0000)] 
randr12: don't do load detection on nv11

16 years agoAssume 18 bit laptop panels by default, add a message that may trigger on 24 bit...
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.

16 years agoDetect mobile BMP biosen
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

16 years agoNV30EXA: Fix viewport setup + switch to triangle based composite.
Maarten Maathuis [Fri, 25 Jan 2008 22:31:58 +0000 (23:31 +0100)] 
NV30EXA: Fix viewport setup + switch to triangle based composite.

16 years agorandr12: fix / annotate a couple of ddc thinkos
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

16 years agoImplement opcodes 0x66, 0x67, and 0x68
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

16 years agorandr12: Rework native modes for TMDS.
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.

16 years agooops
Stuart Bennett [Wed, 23 Jan 2008 23:02:46 +0000 (23:02 +0000)] 
oops

16 years agoUse proper version.
Stephane Marchesin [Wed, 23 Jan 2008 22:40:51 +0000 (23:40 +0100)] 
Use proper version.

16 years agoFix C51 refclk
Stuart Bennett [Wed, 23 Jan 2008 01:13:58 +0000 (01:13 +0000)] 
Fix C51 refclk

16 years agorandr12: calculate (and set, for nv40) sel_clk before calculating plls
Stuart Bennett [Wed, 23 Jan 2008 20:59:50 +0000 (20:59 +0000)] 
randr12: calculate (and set, for nv40) sel_clk before calculating plls

16 years agoFix big bug in commit "Mostly log message changes".
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 ;-)

16 years agoRedo sel_clk setting and update its documentation
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.

16 years agoFail on LVDS DCB entry parsing issues
Stuart Bennett [Wed, 23 Jan 2008 02:09:56 +0000 (02:09 +0000)] 
Fail on LVDS DCB entry parsing issues

16 years agoMostly log message changes
Stuart Bennett [Wed, 23 Jan 2008 00:09:11 +0000 (00:09 +0000)] 
Mostly log message changes

16 years agonot an appropriate place for this type of thing..
Ben Skeggs [Wed, 23 Jan 2008 12:45:37 +0000 (23:45 +1100)] 
not an appropriate place for this type of thing..

16 years agorandr12: Increase cvt mode to 72 Hz.
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).

16 years agoNV40EXA: Use the same approach as the texture adapter for rendering.
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.

16 years agoNV40TEX: Switch to a big triangle and clip it to a quad.
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.

16 years agoFix LVDS with DCB 2.0
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

16 years agoXv: Remove illegal usage of private exa symbols.
Maarten Maathuis [Tue, 22 Jan 2008 18:00:49 +0000 (19:00 +0100)] 
Xv: Remove illegal usage of private exa symbols.

16 years agoNV40TEX: Use width, not (x2, y2).
Maarten Maathuis [Tue, 22 Jan 2008 14:53:38 +0000 (15:53 +0100)] 
NV40TEX: Use width, not (x2, y2).

16 years agoXv: NV12 overlay copy - removed wrong byteswapping on PPC, reported by moondrake
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

16 years agorandr12: some tidyup
Stuart Bennett [Mon, 21 Jan 2008 23:44:47 +0000 (23:44 +0000)] 
randr12: some tidyup

16 years agorandr12: more beautiful dithering
Stuart Bennett [Mon, 21 Jan 2008 22:35:58 +0000 (22:35 +0000)] 
randr12: more beautiful dithering

16 years agooops :)
Stephane Marchesin [Mon, 21 Jan 2008 21:19:24 +0000 (22:19 +0100)] 
oops :)

16 years agoQuickly hacked support for NV6x.
Stephane Marchesin [Mon, 21 Jan 2008 20:43:11 +0000 (21:43 +0100)] 
Quickly hacked support for NV6x.

16 years agorandr12: fix dual head restore
Stuart Bennett [Mon, 21 Jan 2008 20:16:56 +0000 (20:16 +0000)] 
randr12: fix dual head restore

16 years agorandr12: save and restore palette
Stuart Bennett [Mon, 21 Jan 2008 18:51:52 +0000 (18:51 +0000)] 
randr12: save and restore palette

16 years agoMake LVDS bios script logs easier to understand
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

16 years agorandr12: avoid SIGFPE
Stuart Bennett [Mon, 21 Jan 2008 14:14:07 +0000 (14:14 +0000)] 
randr12: avoid SIGFPE

16 years agodebug_modes breaks build on old xservers
Stuart Bennett [Mon, 21 Jan 2008 14:09:46 +0000 (14:09 +0000)] 
debug_modes breaks build on old xservers

16 years agorandr12: use correct clock for LVDS modesetting part 2
Stuart Bennett [Mon, 21 Jan 2008 14:06:42 +0000 (14:06 +0000)] 
randr12: use correct clock for LVDS modesetting part 2

16 years agorandr12: use correct clock for LVDS modesetting
Stuart Bennett [Mon, 21 Jan 2008 13:46:15 +0000 (13:46 +0000)] 
randr12: use correct clock for LVDS modesetting

16 years agoDon't log strange characters
Stuart Bennett [Mon, 21 Jan 2008 12:27:36 +0000 (12:27 +0000)] 
Don't log strange characters

16 years agoUse more imaginative log levels than X_INFO
Stuart Bennett [Sun, 20 Jan 2008 21:53:30 +0000 (21:53 +0000)] 
Use more imaginative log levels than X_INFO

16 years agoUse stdbool.h types in nv_bios.c
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)

16 years agorandr12: fix early cards
root [Sun, 20 Jan 2008 18:38:11 +0000 (18:38 +0000)] 
randr12: fix early cards

16 years agoNV40TEX: Don't sync when compositing, will have bad sideeffects if the compositing...
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.

16 years agoSome misc cleanup.
Maarten Maathuis [Sun, 20 Jan 2008 16:28:13 +0000 (17:28 +0100)] 
Some misc cleanup.

16 years agorandr12: Fix a major screwup i made during a cleanup.
Maarten Maathuis [Sun, 20 Jan 2008 16:11:27 +0000 (17:11 +0100)] 
randr12: Fix a major screwup i made during a cleanup.

16 years agoNV40TEX: Implement sync to vblank.
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.

16 years agorandr12: init some more Xv state
Stuart Bennett [Sun, 20 Jan 2008 14:47:52 +0000 (14:47 +0000)] 
randr12: init some more Xv state

16 years agominor debug correction
Stuart Bennett [Sat, 19 Jan 2008 14:02:43 +0000 (14:02 +0000)] 
minor debug correction

16 years agoINIT_8E opcode
Stuart Bennett [Sun, 20 Jan 2008 01:56:00 +0000 (01:56 +0000)] 
INIT_8E opcode

again, from pq's trace

16 years agoINIT_IO opcode
Stuart Bennett [Sat, 19 Jan 2008 01:37:34 +0000 (01:37 +0000)] 
INIT_IO opcode

Based on pq's g8x trace

16 years agorandr12: hide cursor before locking + misc cleanup.
Maarten Maathuis [Sat, 19 Jan 2008 18:24:04 +0000 (19:24 +0100)] 
randr12: hide cursor before locking + misc cleanup.

16 years agorandr12: Remove unneeded vgahw stuff.
Maarten Maathuis [Sat, 19 Jan 2008 15:39:26 +0000 (16:39 +0100)] 
randr12: Remove unneeded vgahw stuff.

16 years agorandr12: Move away from some of the nv_hw wrappers.
Maarten Maathuis [Sat, 19 Jan 2008 15:29:57 +0000 (16:29 +0100)] 
randr12: Move away from some of the nv_hw wrappers.