linux/drivers/gpu/drm/radeon
Dave Airlie 5359533801 drm/radeon: fix problem with changing active VRAM size. (v2)
So we used to use lpfn directly to restrict VRAM when we couldn't
access the unmappable area, however this was removed in
93225b0d7b as it also restricted
the gtt placements. However it was only later noticed that this
broke on some hw.

This removes the active_vram_size, and just explicitly sets it
when it changes, TTM/drm_mm will always use the real_vram_size,
and the active vram size will change the TTM size used for lpfn
setting.

We should re-work the fpfn/lpfn to per-placement at some point
I suspect, but that is too late for this kernel.

Hopefully this addresses:
https://bugs.freedesktop.org/show_bug.cgi?id=35254

v2: fix reported useful VRAM size to userspace to be correct.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-03-14 12:51:04 +10:00
..
reg_srcs drm/radeon/kms: check AA resolve registers on r300 2011-02-14 10:12:14 +10:00
.gitignore
Kconfig
Makefile drm/radeon/kms: add ucode loader for NI 2011-01-07 14:11:40 +10:00
ObjectID.h drm/radeon/kms: upstream ObjectID.h updates 2010-11-23 09:23:14 +10:00
atom-bits.h
atom-names.h
atom-types.h
atom.c Merge remote branch 'intel/drm-intel-next' of /ssd/git/drm-next into drm-core-next 2010-12-22 09:48:54 +10:00
atom.h
atombios.h Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-01-13 10:05:56 -08:00
atombios_crtc.c drm/radeon/kms: add missing frac fb div flag for dce4+ 2011-02-17 13:55:47 +10:00
atombios_dp.c radeon/kms: fix dp displayport mode validation 2011-01-27 13:52:05 +10:00
avivod.h
evergreen.c drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
evergreen_blit_kms.c drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
evergreen_blit_shaders.c drm/radeon/kms: evergreen/ni big endian fixes (v2) 2011-02-14 10:10:09 +10:00
evergreen_blit_shaders.h drm/radeon/kms: add drm blit support for evergreen 2010-10-06 11:46:30 +10:00
evergreen_cs.c
evergreen_reg.h drm/radeon/kms: add pageflip ioctl support (v3) 2010-11-22 11:51:08 +10:00
evergreend.h drm/radeon/kms: evergreen/ni big endian fixes (v2) 2011-02-14 10:10:09 +10:00
mkregtable.c radeon mkregtable: Add missing fclose() calls 2011-02-14 09:22:54 +10:00
ni.c drm/radeon/kms: add ucode loader for NI 2011-01-07 14:11:40 +10:00
ni_reg.h drm/radeon/kms: add ni_reg.h 2011-01-07 14:11:38 +10:00
nid.h drm/radeon/kms: add ucode loader for NI 2011-01-07 14:11:40 +10:00
r100.c drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
r100_track.h drm/radeon/kms: check AA resolve registers on r300 2011-02-14 10:12:14 +10:00
r100d.h drm/radeon: Definition of R_0003C2_GENMO_WT seems wrong 2010-12-21 12:55:33 +10:00
r200.c drm/radeon/kms: optimize CS state checking for r100->r500 2011-02-14 09:23:27 +10:00
r300.c drm/radeon/kms: do not reject X16 and Y16X16 floating-point formats on r300 2011-02-17 13:55:30 +10:00
r300_cmdbuf.c
r300_reg.h drm/radeon/kms: check AA resolve registers on r300 2011-02-14 10:12:14 +10:00
r300d.h drm/radeon/kms: manage r300 CMASK RAM access and allow CMASK clear 2011-01-06 13:00:45 +10:00
r420.c drm/radeon/kms: clean up some magic numbers 2011-01-27 13:53:30 +10:00
r420d.h
r500_reg.h drm/radeon/kms: add pageflip ioctl support (v3) 2010-11-22 11:51:08 +10:00
r520.c drm/radeon/kms: clean up some magic numbers 2011-01-27 13:53:30 +10:00
r520d.h
r600.c drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
r600_audio.c
r600_blit.c drm/radeon: 6xx/7xx non-kms endian fixes 2011-02-14 09:23:35 +10:00
r600_blit_kms.c drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
r600_blit_shaders.c drm/radeon/kms: 6xx/7xx big endian fixes 2011-02-14 09:23:38 +10:00
r600_blit_shaders.h drm/radeon: add some missing copyright headers 2010-09-13 20:26:04 +10:00
r600_cp.c drm/radeon: 6xx/7xx non-kms endian fixes 2011-02-14 09:23:35 +10:00
r600_cs.c drm/radeon/kms: improve 6xx/7xx CS error output 2011-02-14 10:13:01 +10:00
r600_hdmi.c
r600_reg.h drm/radeon/kms: fix r6xx+ scanout on BE systems 2011-01-27 13:54:13 +10:00
r600d.h drm/radeon/kms: 6xx/7xx big endian fixes 2011-02-14 09:23:38 +10:00
radeon.h drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
radeon_acpi.c drm/radeon: tone down overchatty acpi debug messages. 2010-08-04 11:16:56 +10:00
radeon_agp.c drm/radeon/kms: fix agp mode setup on cards that use pcie bridges 2010-08-20 08:48:55 +10:00
radeon_asic.c drm/radeon: add pageflip hooks for fusion 2011-03-11 15:01:15 +10:00
radeon_asic.h drm/radeon/kms: add updated ib_execute function for evergreen 2011-02-04 09:40:51 +10:00
radeon_atombios.c drm/radeon/kms: atombios big endian fixes 2011-02-14 09:23:36 +10:00
radeon_atpx_handler.c
radeon_benchmark.c drm/radeon/kms: fix alignment when allocating buffers 2010-11-18 14:56:53 +10:00
radeon_bios.c drm/radeon/kms: add disabled vbios accessor for NI asics 2011-01-07 14:11:30 +10:00
radeon_clocks.c drm/radeon/kms: remove useless clock code 2010-09-02 11:28:52 +10:00
radeon_combios.c drm/radeon/kms: add connector table for mac g5 9600 2011-02-14 09:22:55 +10:00
radeon_connectors.c drm/radeon/kms: disable underscan by default 2011-01-10 12:39:24 +10:00
radeon_cp.c
radeon_cs.c drm/radeon: Use the ttm execbuf utilities 2010-11-22 13:25:23 +10:00
radeon_cursor.c Merge branch 'drm-fixes' of /home/airlied/kernel/linux-2.6 into drm-core-next 2010-10-19 09:48:34 +10:00
radeon_device.c drm/radeon: fix race between GPU reset and TTM delayed delete thread. 2011-02-14 10:10:24 +10:00
radeon_display.c Revert "drm/radeon/kms: switch back to min->max pll post divider iteration" 2011-02-23 10:07:24 +10:00
radeon_drv.c drm/radeon/kms: add new radeon_info ioctl query for clock crystal freq 2011-01-25 08:41:04 +10:00
radeon_drv.h drm/radeon: 6xx/7xx non-kms endian fixes 2011-02-14 09:23:35 +10:00
radeon_encoders.c drm/radeon/kms: atombios big endian fixes 2011-02-14 09:23:36 +10:00
radeon_family.h drm/radeon/kms: add NI chip families 2011-01-07 14:11:18 +10:00
radeon_fb.c drm/radeon/kms: align height of fb allocation. 2011-02-23 10:08:17 +10:00
radeon_fence.c drm/radeon: add initial tracepoint support. 2010-12-16 14:37:47 +10:00
radeon_gart.c drm/radeon/kms: fix alignment when allocating buffers 2010-11-18 14:56:53 +10:00
radeon_gem.c drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
radeon_i2c.c drm/radeon/kms: i2c s/sprintf/snprintf/g for safety 2010-11-19 09:27:48 +10:00
radeon_ioc32.c
radeon_irq.c drm: radeon: fix error value sign 2010-11-18 14:55:46 +10:00
radeon_irq_kms.c drm/radeon/kms: Initialize pageflip spinlocks. 2011-01-24 11:01:26 +10:00
radeon_kms.c drm/radeon/kms: release CMASK access in preclose_kms 2011-01-28 10:59:12 +10:00
radeon_legacy_crtc.c drm/radeon: fix page flipping hangs on r300/r400 2011-03-13 10:03:34 +10:00
radeon_legacy_encoders.c drm/radeon/kms/atom: cleanup and unify DVO handling 2010-11-18 14:56:31 +10:00
radeon_legacy_tv.c
radeon_mem.c
radeon_mode.h drm/radeon/kms: add connector table for mac g5 9600 2011-02-14 09:22:55 +10:00
radeon_object.c Merge remote branch 'airlied/drm-core-next' into drm-intel-next 2010-12-16 21:02:15 +00:00
radeon_object.h drm/radeon: Use the ttm execbuf utilities 2010-11-22 13:25:23 +10:00
radeon_pm.c drm/radeon/kms: dynamically allocate power state space 2011-02-04 09:46:35 +10:00
radeon_reg.h drm/radeon/kms: clean up some magic numbers 2011-01-27 13:53:30 +10:00
radeon_ring.c drm/radeon/kms: fix alignment when allocating buffers 2010-11-18 14:56:53 +10:00
radeon_state.c drm: block userspace under allocating buffer and having drivers overwrite it (v2) 2010-08-17 14:52:25 +10:00
radeon_test.c drm/radeon/kms: fix alignment when allocating buffers 2010-11-18 14:56:53 +10:00
radeon_trace.h drm/radeon: add initial tracepoint support. 2010-12-16 14:37:47 +10:00
radeon_trace_points.c drm/radeon: add initial tracepoint support. 2010-12-16 14:37:47 +10:00
radeon_ttm.c drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
rs100d.h
rs400.c drm/radeon/kms: clean up some magic numbers 2011-01-27 13:53:30 +10:00
rs400d.h
rs600.c drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
rs600d.h
rs690.c drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
rs690d.h
rv200d.h
rv250d.h
rv350d.h
rv515.c drm/radeon/kms: clean up some magic numbers 2011-01-27 13:53:30 +10:00
rv515d.h
rv770.c drm/radeon: fix problem with changing active VRAM size. (v2) 2011-03-14 12:51:04 +10:00
rv770d.h drm/radeon/kms: 6xx/7xx big endian fixes 2011-02-14 09:23:38 +10:00