summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-02-17drm/nouveau: fix suspend/resume on GPUs that don't have PM supportBen Skeggs1-1/+1
This has been broken since 2.6.37, and fixes resume on a couple of fermi boards I have access to. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-02-17drm/nouveau: flips/flipd need to always set 'evict' for move_accel_cleanup()Ben Skeggs1-3/+3
We free the temporary binding before leaving this function, so we also have to wait for the move to actually complete. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-02-17drm/nv40: fix tiling-related setup for a number of chipsetsBen Skeggs1-19/+27
Due to the default case handling the older chipsets, a bunch of the newer ones ended up having the wrong tiling regs used. This commit switches the default case to handle the newest chipsets. This also makes nv4e touch the "extra" tiling regs. "nv" doesn't touch them for C51 but traces of the NVIDIA binary driver show it being done there. I couldn't find NV41/NV45 traces to confirm the behaviour there, but an educated guess was taken at each of them. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-02-17drm/nouveau: fix non-EDIDful native mode selectionBen Skeggs1-0/+1
The DRM core fills this value, but at too late a stage for this to work, possibly resulting in an undesirable mode being selected. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-02-17drm/nouveau: Fix detection of DDC-based LVDS on DCB15 boards.Francisco Jerez1-1/+1
Signed-off-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-02-17drm/nv04-nv40: Fix NULL dereference when we fail to find an LVDS native mode.Francisco Jerez1-9/+3
Reported-by: Alex Buell <alex.buell@munted.org.uk> Signed-off-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-02-17drm/nv10: Fix crash when allocating a BO larger than half the available VRAM.Francisco Jerez1-3/+4
Reported-by: Alex Buell <alex.buell@munted.org.uk> Signed-off-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-02-02drm/nv50: fix display on 0x50Ben Skeggs1-2/+1
Accidently busted a while back. We'll be creating objects that aren't necessary here, but, they're never used so no harm.. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-02-02drm/nouveau: correctly pair hwmon_init and hwmon_finiLucas Stach1-1/+1
I broke this with my commit 07cfe0e7a820ecad078c04e9c2a102521709145d This fixes fdo #33434 Signed-off-by: Lucas Stach <dev@lynxeye.de> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-28drm/nv50: fix regression on IGPsBen Skeggs1-5/+0
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-25drm/nvc0/grctx: correct an off-by-oneBen Skeggs1-1/+1
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-25drm/nv50: Fix race with PFIFO during PGRAPH context destruction.Francisco Jerez1-0/+3
Reported-by: Xavier Chantry <chantry.xavier@gmail.com> Signed-off-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-25drm/nouveau: Workaround incorrect DCB entry on a GeForce3 Ti 200.Francisco Jerez1-0/+15
Fixes the DVI-D output on that board (fdo bug 32645). Reported-by: Bryan Quigley <BryanQuigley@Ubuntu.com> Signed-off-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-25drm/nvc0: implement irq handler for whatever's at 0x14xxxxBen Skeggs1-0/+19
This is just barely enough to stop a never-ending IRQ storm that can be triggered by our 3D driver. We have no idea what this engine is.. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-25drm/nvc0: fix incorrect TPC register setupBen Skeggs1-2/+2
Was hitting TPC+1's regs by accident, oops. Reported-by: Christoph Bumiller <e0425955@student.tuwien.ac.at> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-25drm/nouveau: probe for adt7473 before f75375Ben Skeggs1-1/+1
There's a reported case where probing for f75375 causes the system to hang completely, in this case there's an adt7473 at the same i2c address. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-25drm/nouveau: remove dead function definitionBen Skeggs1-3/+0
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-17drm/nouveau: fix gpu page faults triggered by plymouthdBen Skeggs1-2/+2
The switch to separate BAR and channel address spaces made the fbcon memory address calculation incorrect on NV50+ boards, this commit fixes that. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-17drm/nouveau: greatly simplify mm, killing some bugs in the processBen Skeggs3-160/+52
Reviewed-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-17drm/nvc0: enable protection of system-use-only structures in vmBen Skeggs4-5/+10
Somehow missed this in the original merge of the nvc0 code. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-17drm/nv40: initialise 0x17xx on all chipsets that have itBen Skeggs1-12/+2
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-17drm/nv40: make detection of 0x4097-ful chipsets available everywhereBen Skeggs3-18/+20
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-07drm/nouveau: fix hwmon device bindingLucas Stach1-2/+1
Bind the hwmon structs to nouveau device kobj. This makes sure the hwmon files are created in the device subdir in line with all other hwmon drivers. Signed-off-by: Lucas Stach <dev@lynxeye.de> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-07drm/nouveau: create grctx on the fly on all chipsetsBen Skeggs4-12/+14
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-06drm/nvc0: fix init without firmware presentBen Skeggs1-5/+3
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-01-01drm/nvc0/pgraph: fix 0x406028/0x405870 initBen Skeggs1-3/+7
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-31drm/nvc0/pgraph: more unit namesBen Skeggs1-6/+6
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-31drm/nvc0/pfifo: support for chipsets with only one PSUBFIFO (0xc1)Ben Skeggs1-6/+12
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-30drm/nvc0: reserve only subc 0 for kernel useBen Skeggs2-9/+15
Current 3D driver expects this behaviour. While this could be changed, there's no compelling reason to reserve more than one subchannel for the DRM. If we ever need to use an object other then M2MF, we can just re-bind subchannel 0 as required. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-30drm/nv50: sync up gr data error names with rnn, use for nvc0 alsoBen Skeggs3-13/+44
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-30drm/nvc0: parse a couple more PGRAPH_INTRBen Skeggs1-0/+16
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-29drm/nvc0: nuke left-over debug messagesBen Skeggs2-3/+0
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-29drm/nvc0: kill off a couple more magicsBen Skeggs3-19/+21
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-27drm/nouveau: Validate channel indices passed from userspace.Michel Hermier1-0/+3
When hacking the libdrm for improvements, I triggered a kernel crash related to the fact that the NOUVEAU_NOTIFIEROBJ_ALLOC ioctl calls nouveau_channel_get with an unchecked channel index. The patch ensures that the channel index is an unsigned and validates its value in nouveau_channel_get. Signed-off-by: Michel Hermier <hermier@frugalware.org> Signed-off-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-27drm/nouveau: Only select ACPI_VIDEO if its dependencies are metBen Hutchings1-1/+1
CONFIG_ACPI_VIDEO depends on more than just CONFIG_ACPI, so add those dependencies to the Kconfig select condition. The case where some dependencies fail to be satisfied should be handled correctly, because in that case the ACPI_VIDEO symbols we use are converted into static-inline stubs. Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: accelerate ttm buffer movesBen Skeggs1-1/+56
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: initial support for tiled buffer objectsBen Skeggs5-25/+62
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: implement fbcon accelerationBen Skeggs4-6/+300
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: implement pgraph engine hooksBen Skeggs6-3/+3631
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: implement pfifo engine hooksBen Skeggs2-0/+361
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: implement fencingBen Skeggs1-8/+20
Just simple REF_CNT fencing for the moment. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: fix channel dma init pathsBen Skeggs3-10/+38
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: skip dma object creation for drm channelBen Skeggs1-0/+5
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: implement channel structure initialisationBen Skeggs1-4/+20
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: gpuobj_new need only check validity and init the relevant engineBen Skeggs1-4/+11
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: reject the notifier_alloc ioctlBen Skeggs1-0/+5
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: create shared channel vmBen Skeggs1-0/+16
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: initial vm implementation, use for bar1/bar3 managementBen Skeggs8-204/+266
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nvc0: import initial vm backendBen Skeggs7-7/+169
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-21drm/nouveau: modify vm to accomodate dual page tables for nvc0Ben Skeggs4-75/+65
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>