OpenCloudOS-Kernel/drivers/gpu/drm/nouveau
Jerome Glisse dc97b3409a drm/ttm: callback move_notify any time bo placement change v4
Previously we were calling back move_notify in error path when the
bo is returned to it's original position or when destroy the bo.
When destroying the bo set the new mem placement as NULL when calling
back in the driver.

Updating nouveau to deal with NULL placement properly.

v2: reserve the object before calling move_notify in bo destroy path
    at that point ttm should be the only piece of code interacting
    with the object so atomic_set is safe here.
v3: callback move notify only once the bo is in its new position
    call move notify want swaping out the buffer
v4:- don't call move_notify when swapin out bo, assume driver should
     do what is appropriate in swap notify
   - move move_notify call back to ttm_bo_cleanup_memtype_use for
     destroy path

Reviewed-by: Jerome Glisse <jglisse@redhat.com>
Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
2011-12-06 10:40:23 +00:00
..
Kconfig drm: fix nouveau_acpi build 2011-05-16 11:57:20 +10:00
Makefile drm/nv40/pm: write nv40-specific reclocking routines 2011-09-20 16:10:45 +10:00
nouveau_acpi.c drm/nouveau: drop leftover debugging 2011-06-20 15:27:18 +10:00
nouveau_backlight.c drm/nva3/backlight: add suppport for newer style backlight regs 2011-09-20 16:10:06 +10:00
nouveau_bios.c drm/nv40/pm: execute memory reset script from vbios 2011-09-20 16:11:51 +10:00
nouveau_bios.h drm/nouveau/dp: return master dp table pointer too when looking up encoder 2011-09-20 16:11:18 +10:00
nouveau_bo.c drm/ttm: callback move_notify any time bo placement change v4 2011-12-06 10:40:23 +00:00
nouveau_calc.c drm/nouveau: make the behaviour of get_pll_limits() consistent 2010-09-24 16:26:49 +10:00
nouveau_channel.c drm/nouveau: if requested, try harder at disabling sysmem pushbufs 2011-09-20 16:11:41 +10:00
nouveau_connector.c drm/nouveau/dp: store unencoded link_bw everywhere 2011-09-20 16:10:24 +10:00
nouveau_connector.h drm/nouveau: Use "force" to decide if analog load detection is ok or not. 2010-11-18 14:38:41 +10:00
nouveau_crtc.h drm/nouveau: make general drm modesetting init common 2011-09-20 16:05:04 +10:00
nouveau_debugfs.c drm/nouveau: enable the ttm dma pool when swiotlb is active V3 2011-12-06 10:39:51 +00:00
nouveau_display.c drm: add an fb creation ioctl that takes a pixel format v5 2011-11-15 19:53:23 +00:00
nouveau_dma.c drm/nv50-nvc0: lookup pushbuf virtual address on dma_push 2011-06-23 16:00:22 +10:00
nouveau_dma.h drm/nouveau: remove no_vm/mappable flags from nouveau_bo 2011-02-25 06:45:34 +10:00
nouveau_dp.c drm/nouveau/dp: add support for displayport table 0x30 2011-09-20 16:11:21 +10:00
nouveau_drv.c drm: Make the per-driver file_operations struct const 2011-11-11 11:14:47 +00:00
nouveau_drv.h drm/ttm: merge ttm_backend and ttm_tt V5 2011-12-06 10:39:17 +00:00
nouveau_encoder.h drm/nouveau/dp: enable down-spread if vbios and sink support it 2011-09-20 16:10:35 +10:00
nouveau_fb.h drm: add an fb creation ioctl that takes a pixel format v5 2011-11-15 19:53:23 +00:00
nouveau_fbcon.c drm: add an fb creation ioctl that takes a pixel format v5 2011-11-15 19:53:23 +00:00
nouveau_fbcon.h drm/nvc0: implement fbcon acceleration 2010-12-21 17:18:39 +10:00
nouveau_fence.c drm/nouveau: workaround semaphore hw bug causing unnecessary interrupts 2011-09-20 16:08:59 +10:00
nouveau_gem.c Revert "drm/ttm: add a way to bo_wait for either the last read or last write" 2011-10-27 18:28:37 +02:00
nouveau_grctx.h drm/nouveau: Fix missing whitespace checkpatch.pl errors. 2011-05-16 10:47:25 +10:00
nouveau_hw.c drm/nv17-nv40: Fix modesetting failure when pitch == 4096px (fdo bug 35901). 2011-06-07 09:22:29 +10:00
nouveau_hw.h drm/nv04: Fix scanout over the 16MB mark. 2010-11-18 14:38:38 +10:00
nouveau_i2c.c gpu: add module.h to drivers/gpu files as required. 2011-10-31 19:32:03 -04:00
nouveau_i2c.h Merge branch 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 2010-10-26 18:57:59 -07:00
nouveau_ioc32.c drm: convert drm_ioctl to unlocked_ioctl 2009-12-18 11:22:31 +10:00
nouveau_irq.c drm/nouveau: detect disabled device in irq handler and return IRQ_NONE 2011-07-25 09:42:09 +10:00
nouveau_mem.c drm/nouveau: enable the ttm dma pool when swiotlb is active V3 2011-12-06 10:39:51 +00:00
nouveau_mm.c drm/nouveau: allow a nouveau_mm to be created with holes 2011-09-20 16:04:00 +10:00
nouveau_mm.h drm/nouveau: allow a nouveau_mm to be created with holes 2011-09-20 16:04:00 +10:00
nouveau_notifier.c drm/nv50-nvc0: explicitly map notifier bo into channel vm 2011-06-23 16:00:04 +10:00
nouveau_object.c drm/nvd0: lets not attempt to dereference a nv50_display pointer 2011-09-20 16:08:02 +10:00
nouveau_perf.c drm/nv40/pm: parse geometric delta clock from vbios 2011-09-20 16:10:40 +10:00
nouveau_pm.c drm/nouveau: enable hwmon support when both nouveau/hwmon are built as modules. 2011-09-20 16:07:59 +10:00
nouveau_pm.h drm/nv40/pm: write nv40-specific reclocking routines 2011-09-20 16:10:45 +10:00
nouveau_ramht.c drm/nv50-nvc0: fix ramht entries for multiple evo channels 2011-02-25 06:44:48 +10:00
nouveau_ramht.h drm/nouveau: return error from nouveau_ramht_remove() if not found 2010-12-03 15:05:27 +10:00
nouveau_reg.h drm/nva3/backlight: add suppport for newer style backlight regs 2011-09-20 16:10:06 +10:00
nouveau_sgdma.c drm/ttm: isolate dma data from ttm_tt V4 2011-12-06 10:40:02 +00:00
nouveau_state.c drm/nouveau: fix printk typo in ioremap failure path 2011-09-20 16:12:05 +10:00
nouveau_temp.c gpu: add module.h to drivers/gpu files as required. 2011-10-31 19:32:03 -04:00
nouveau_ttm.c drm: move ttm global code to core drm 2010-08-04 09:46:06 +10:00
nouveau_util.c drm/nouveau: add nouveau_enum_find() util function 2011-03-14 16:31:50 +10:00
nouveau_util.h drm/nouveau: add nouveau_enum_find() util function 2011-03-14 16:31:50 +10:00
nouveau_vm.c drm/nvd0: add a card_type for 0xdX chipsets 2011-09-20 16:04:45 +10:00
nouveau_vm.h drm/nouveau: embed nouveau_mm 2011-09-20 16:03:56 +10:00
nouveau_volt.c drm/nouveau/pm: some fermi chipsets still use volt 0x30 2011-09-20 16:01:37 +10:00
nv04_crtc.c drm/nv04/crtc: Bail out if FB is not bound to crtc 2011-09-09 17:24:21 +10:00
nv04_cursor.c drm/nouveau: allow cursor image and position to survive suspend 2010-05-28 16:06:17 +10:00
nv04_dac.c drm/nouveau: introduce a util function to wait on reg != val 2010-12-08 03:00:36 +01:00
nv04_dfp.c drm/nouveau: fix oops on unload with disabled LVDS panel 2011-04-05 11:07:05 +10:00
nv04_display.c drm/nouveau: make general drm modesetting init common 2011-09-20 16:05:04 +10:00
nv04_fb.c
nv04_fbcon.c drm/nouveau: implicitly insert non-DMA objects into RAMHT 2010-12-08 03:00:35 +01:00
nv04_fifo.c drm/nv50: check for vm traps on every gr irq 2011-03-14 16:32:30 +10:00
nv04_graph.c drm/nouveau/gr: disable fifo access and idle before suspend ctx unload 2011-07-25 09:43:38 +10:00
nv04_instmem.c DRM: remove drm_pci_device_is_pcie 2011-07-13 08:14:52 +01:00
nv04_mc.c drm/nouveau: Disable PROM access on init. 2010-07-13 10:13:58 +10:00
nv04_pm.c drm/nv04/pm: recalibrate timer on nvclk changes 2011-09-20 16:04:42 +10:00
nv04_timer.c drm/nouveau/tmr: fix miscalculation of ratio on pre-nv4x chipsets 2011-09-20 16:08:54 +10:00
nv04_tv.c drm/nv0x-nv4x: Leave the 0x40 bit untouched when changing CRE_LCD. 2010-10-05 09:58:43 +10:00
nv10_fb.c drm/nv20: Add Z compression support. 2010-12-03 15:11:21 +10:00
nv10_fifo.c drm/nouveau: make fifo.create_context() responsible for mapping control regs 2010-12-08 03:00:34 +01:00
nv10_gpio.c drm/nouveau: introduce gpio engine 2010-07-26 11:43:57 +10:00
nv10_graph.c drm/nouveau/gr: disable fifo access and idle before suspend ctx unload 2011-07-25 09:43:38 +10:00
nv17_tv.c drm: Mark constant arrays of drm_display_mode const 2011-02-23 11:13:11 +10:00
nv17_tv.h drm: Mark constant arrays of drm_display_mode const 2011-02-23 11:13:11 +10:00
nv17_tv_modes.c drm: Mark constant arrays of drm_display_mode const 2011-02-23 11:13:11 +10:00
nv20_graph.c drm/nouveau/gr: disable fifo access and idle before suspend ctx unload 2011-07-25 09:43:38 +10:00
nv30_fb.c drm/nouveau: Rework tile region handling. 2010-12-03 15:11:20 +10:00
nv31_mpeg.c drm/nv31/mpeg: support for a single class3174 user 2011-09-20 16:03:44 +10:00
nv40_fb.c drm/nv40: implement support for on-chip PCIEGART 2011-02-25 06:44:04 +10:00
nv40_fifo.c drm/nv40/vpe: add support for PMPEG 2011-05-16 10:48:56 +10:00
nv40_graph.c drm/nouveau: pass flag to engine fini() method on suspend 2011-07-25 09:43:22 +10:00
nv40_grctx.c drm/nv40: make detection of 0x4097-ful chipsets available everywhere 2011-01-17 11:28:31 +10:00
nv40_mc.c drm/nv40: initialise 0x17xx on all chipsets that have it 2011-01-17 11:28:43 +10:00
nv40_pm.c drm/nv40/pm: execute memory reset script from vbios 2011-09-20 16:11:51 +10:00
nv50_calc.c drm/nva3/clk: better pll calculation when no fractional fb div available 2011-05-16 10:50:59 +10:00
nv50_crtc.c drm/nouveau: make general drm modesetting init common 2011-09-20 16:05:04 +10:00
nv50_cursor.c drm/nouveau: make general drm modesetting init common 2011-09-20 16:05:04 +10:00
nv50_dac.c drm/nv50-nvc0: rename disp->evo to disp->master 2011-02-25 06:44:42 +10:00
nv50_display.c drm/nouveau/dp: remove reliance on vbios for native displayport 2011-09-20 16:09:42 +10:00
nv50_display.h drm/nv50-nvc0: initialise display sync channels 2011-02-25 06:45:11 +10:00
nv50_evo.c drm/nouveau: remove 'chan' argument from nouveau_bo_new 2011-06-23 16:00:37 +10:00
nv50_evo.h drm/nv50-nvc0: initialise display sync channels 2011-02-25 06:45:11 +10:00
nv50_fb.c drm/nv50: check for vm traps on every gr irq 2011-03-14 16:32:30 +10:00
nv50_fbcon.c drm/nv50-nvc0: explicitly map fbcon fb into channel vm 2011-06-23 15:59:59 +10:00
nv50_fifo.c drm/nv50: drop explicit yields in favour of smaller PFIFO timeslice 2011-02-25 06:44:30 +10:00
nv50_gpio.c drm/nvd0/gpio: initial implementation 2011-09-20 16:05:36 +10:00
nv50_graph.c drm/nv50/gr: refactor initialisation 2011-09-20 16:11:45 +10:00
nv50_grctx.c drm/nv50/gr: enable ctxprog xfer only when we need it to save power 2011-09-20 16:11:28 +10:00
nv50_instmem.c drm/nouveau: will need to specify channel for vm-ful gpuobj allocations 2011-06-23 15:59:18 +10:00
nv50_mc.c drm/nouveau: introduce gpio engine 2010-07-26 11:43:57 +10:00
nv50_mpeg.c drm/nouveau: pass flag to engine fini() method on suspend 2011-07-25 09:43:22 +10:00
nv50_pm.c drm/nouveau/bios: allow passing in crtc to the init table parser 2011-09-20 16:05:48 +10:00
nv50_sor.c drm/nouveau/dp: pass in required datarate to link training 2011-09-20 16:10:19 +10:00
nv50_vm.c drm/nv50-nvc0/vm: don't touch chan_vm 2011-06-23 15:58:40 +10:00
nv50_vram.c drm/nouveau: embed nouveau_mm 2011-09-20 16:03:56 +10:00
nv84_crypt.c drm/nouveau: pass flag to engine fini() method on suspend 2011-07-25 09:43:22 +10:00
nva3_copy.c drm/nouveau: pass flag to engine fini() method on suspend 2011-07-25 09:43:22 +10:00
nva3_copy.fuc drm/nva3: implement support for copy engine 2011-05-16 10:48:48 +10:00
nva3_copy.fuc.h drm/nva3: implement support for copy engine 2011-05-16 10:48:48 +10:00
nva3_pm.c drm/nva3/pm: fixup for NVAF special 2011-09-20 16:08:50 +10:00
nvc0_copy.c drm/nouveau: pass flag to engine fini() method on suspend 2011-07-25 09:43:22 +10:00
nvc0_copy.fuc.h drm/nvc0: implement support for copy engines 2011-05-16 10:48:53 +10:00
nvc0_fb.c drm/nvc0/fb: slightly improve PMFB intr handling, move out of nvc0_graph.c 2011-09-20 16:12:21 +10:00
nvc0_fbcon.c drm/nv50-nvc0: explicitly map notifier bo into channel vm 2011-06-23 16:00:04 +10:00
nvc0_fifo.c drm/nvc0/fifo: avoid touching missing subfifos 2011-09-20 16:12:18 +10:00
nvc0_graph.c gpu: add module.h to drivers/gpu files as required. 2011-10-31 19:32:03 -04:00
nvc0_graph.fuc drm/nvc0/gr: import and use our own fuc by default 2011-06-23 15:57:38 +10:00
nvc0_graph.h drm/nvc0/gr: add support for nvcf chipset 2011-09-20 16:04:06 +10:00
nvc0_grctx.c drm/nvc0/gr: remove max tpc count info 2011-09-20 16:08:08 +10:00
nvc0_grgpc.fuc drm/nvc0/gr: add support for nvcf chipset 2011-09-20 16:04:06 +10:00
nvc0_grgpc.fuc.h drm/nvc0/gr: add support for nvcf chipset 2011-09-20 16:04:06 +10:00
nvc0_grhub.fuc drm/nvc0/gr: add support for nvcf chipset 2011-09-20 16:04:06 +10:00
nvc0_grhub.fuc.h drm/nvc0/gr: add support for nvcf chipset 2011-09-20 16:04:06 +10:00
nvc0_instmem.c drm/nvc0: enable per-client address spaces 2011-06-23 16:01:41 +10:00
nvc0_pm.c drm/nvc0/pm: minor clock readback fixes 2011-09-20 16:11:55 +10:00
nvc0_vm.c drm/nv50-nvc0/vm: don't touch chan_vm 2011-06-23 15:58:40 +10:00
nvc0_vram.c drm/nvc0/vram: support non-uniform memory size per controller 2011-09-20 16:04:11 +10:00
nvd0_display.c drm/nvd9/disp: bail out of mode_set_base if no fb bound to crtc 2011-09-20 16:12:11 +10:00
nvreg.h drm/nv17-nv40: Fix modesetting failure when pitch == 4096px (fdo bug 35901). 2011-06-07 09:22:29 +10:00