linux/drivers/gpu/drm/radeon
Linus Torvalds 033d9959ed Merge branch 'for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq
Pull workqueue changes from Tejun Heo:
 "This is workqueue updates for v3.7-rc1.  A lot of activities this
  round including considerable API and behavior cleanups.

   * delayed_work combines a timer and a work item.  The handling of the
     timer part has always been a bit clunky leading to confusing
     cancelation API with weird corner-case behaviors.  delayed_work is
     updated to use new IRQ safe timer and cancelation now works as
     expected.

   * Another deficiency of delayed_work was lack of the counterpart of
     mod_timer() which led to cancel+queue combinations or open-coded
     timer+work usages.  mod_delayed_work[_on]() are added.

     These two delayed_work changes make delayed_work provide interface
     and behave like timer which is executed with process context.

   * A work item could be executed concurrently on multiple CPUs, which
     is rather unintuitive and made flush_work() behavior confusing and
     half-broken under certain circumstances.  This problem doesn't
     exist for non-reentrant workqueues.  While non-reentrancy check
     isn't free, the overhead is incurred only when a work item bounces
     across different CPUs and even in simulated pathological scenario
     the overhead isn't too high.

     All workqueues are made non-reentrant.  This removes the
     distinction between flush_[delayed_]work() and
     flush_[delayed_]_work_sync().  The former is now as strong as the
     latter and the specified work item is guaranteed to have finished
     execution of any previous queueing on return.

   * In addition to the various bug fixes, Lai redid and simplified CPU
     hotplug handling significantly.

   * Joonsoo introduced system_highpri_wq and used it during CPU
     hotplug.

  There are two merge commits - one to pull in IRQ safe timer from
  tip/timers/core and the other to pull in CPU hotplug fixes from
  wq/for-3.6-fixes as Lai's hotplug restructuring depended on them."

Fixed a number of trivial conflicts, but the more interesting conflicts
were silent ones where the deprecated interfaces had been used by new
code in the merge window, and thus didn't cause any real data conflicts.

Tejun pointed out a few of them, I fixed a couple more.

* 'for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (46 commits)
  workqueue: remove spurious WARN_ON_ONCE(in_irq()) from try_to_grab_pending()
  workqueue: use cwq_set_max_active() helper for workqueue_set_max_active()
  workqueue: introduce cwq_set_max_active() helper for thaw_workqueues()
  workqueue: remove @delayed from cwq_dec_nr_in_flight()
  workqueue: fix possible stall on try_to_grab_pending() of a delayed work item
  workqueue: use hotcpu_notifier() for workqueue_cpu_down_callback()
  workqueue: use __cpuinit instead of __devinit for cpu callbacks
  workqueue: rename manager_mutex to assoc_mutex
  workqueue: WORKER_REBIND is no longer necessary for idle rebinding
  workqueue: WORKER_REBIND is no longer necessary for busy rebinding
  workqueue: reimplement idle worker rebinding
  workqueue: deprecate __cancel_delayed_work()
  workqueue: reimplement cancel_delayed_work() using try_to_grab_pending()
  workqueue: use mod_delayed_work() instead of __cancel + queue
  workqueue: use irqsafe timer for delayed_work
  workqueue: clean up delayed_work initializers and add missing one
  workqueue: make deferrable delayed_work initializer names consistent
  workqueue: cosmetic whitespace updates for macro definitions
  workqueue: deprecate system_nrt[_freezable]_wq
  workqueue: deprecate flush[_delayed]_work_sync()
  ...
2012-10-02 09:54:49 -07:00
..
reg_srcs drm/radeon: add proper checking of RESOLVE_BOX command for r600-r700 2012-08-29 12:11:00 -04:00
.gitignore
atom-bits.h
atom-names.h
atom-types.h
atom.c drm/radeon/kms: fix fans after resume 2012-04-02 11:07:42 +01:00
atom.h drm/radeon/kms: fix fans after resume 2012-04-02 11:07:42 +01:00
atombios_crtc.c Revert "drm/radeon: rework pll selection (v3)" 2012-09-17 17:26:24 -04:00
atombios_dp.c drm/radeon: rework panel mode setup 2012-08-29 12:11:01 -04:00
atombios_encoders.c drm/radeon: fix dig encoder selection on DCE61 2012-08-29 19:57:34 -04:00
atombios_i2c.c drm/radeon/kms/dce3+: add support for hw i2c using atom 2012-02-03 09:38:05 +00:00
atombios.h drm/radeon/kms: upstream power table updates 2012-03-21 06:55:50 +00:00
avivod.h
cayman_blit_shaders.c bug.h: add include of it to various implicit C users 2012-02-29 17:15:08 -05:00
cayman_blit_shaders.h drm/radeon/kms: add blit support for cayman (v2) 2011-05-26 09:19:31 +10:00
evergreen_blit_kms.c drm/radeon: remove r600_blit_suspend 2012-07-17 10:32:48 +02:00
evergreen_blit_shaders.c bug.h: add include of it to various implicit C users 2012-02-29 17:15:08 -05: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 drm/radeon/kms: add MSAA texture support for r600-evergreen 2012-08-13 10:50:56 -04:00
evergreen_hdmi.c drm/radeon: enable HDMI on DCE5 (AKA NI excluding Aruba) 2012-06-16 11:21:19 +01:00
evergreen_reg.h drm/radeon/kms: get rid of hdmi_config_offset 2012-05-01 10:57:52 +01:00
evergreen.c Merge commit 'v3.6-rc5' into next 2012-09-13 08:41:01 -06:00
evergreend.h drm/radeon/kms: allow "invalid" DB formats as a means to disable DB 2012-08-09 09:53:13 +10:00
Kconfig drm/radeon/kms: clean up the radeon kms Kconfig 2011-05-26 09:22:05 +10:00
Makefile drm/radeon: add PRIME support (v2) 2012-05-23 10:47:11 +01:00
mkregtable.c radeon mkregtable: Add missing fclose() calls 2011-02-14 09:22:54 +10:00
ni_reg.h drm/radeon/kms: add ni_reg.h 2011-01-07 14:11:38 +10:00
ni.c drm/radeon: fix bank tiling parameters on cayman 2012-08-13 10:50:52 -04:00
nid.h drm/radeon: improve GPU lockup debugging info on r6xx/r7xx/r8xx/r9xx 2012-07-19 22:28:07 -04:00
ObjectID.h drm/radeon/kms: Upstream ObjectID.h updates 2012-03-21 06:55:49 +00:00
r100_track.h drm/radeon: Remove more bogus inlines in the radeon driver. 2011-10-18 09:44:52 +01:00
r100.c drm/radeon: Prevent leak of scratch register on resume from suspend 2012-09-20 12:59:16 -04: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: remove radeon_fence_create 2012-06-21 09:38:35 +02:00
r300_cmdbuf.c drm/radeon: Move more code out of line 2011-10-18 09:53:05 +01:00
r300_reg.h Fix common misspellings 2011-03-31 11:26:23 -03:00
r300.c drm/radeon: move radeon_ib_ring_tests out of chipset code 2012-07-17 10:33:01 +02: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: move radeon_ib_ring_tests out of chipset code 2012-07-17 10:33:01 +02:00
r420d.h
r500_reg.h drm/radeon/kms: add wait_for_vblank asic callback 2012-02-27 14:46:13 +00:00
r520.c drm/radeon: move radeon_ib_ring_tests out of chipset code 2012-07-17 10:33:01 +02:00
r520d.h
r600_audio.c drm/radeon: enable HDMI on DCE5 (AKA NI excluding Aruba) 2012-06-16 11:21:19 +01:00
r600_blit_kms.c drm/radeon: remove r600_blit_suspend 2012-07-17 10:32:48 +02:00
r600_blit_shaders.c The following text was taken from the original review request: 2012-03-24 10:08:39 -07:00
r600_blit_shaders.h drm/radeon: add some missing copyright headers 2010-09-13 20:26:04 +10:00
r600_blit.c drm/radeon: drop inlines in r600_blit.c 2011-10-18 09:44:38 +01:00
r600_cp.c drm/radeon: replace udelay with mdelay for long timeouts 2012-04-10 10:21:00 +01:00
r600_cs.c drm/radeon: add proper checking of RESOLVE_BOX command for r600-r700 2012-08-29 12:11:00 -04:00
r600_hdmi.c drm/radeon: apply Murphy's law to the kms irq code v3 2012-06-21 09:38:50 +02:00
r600_reg.h drm/radeon/hdmi: store info about all AFMT blocks 2012-05-17 12:15:40 +01:00
r600.c drm/radeon/kms: implement timestamp userspace query (v2) 2012-08-13 10:50:56 -04:00
r600d.h drm/radeon: add proper checking of RESOLVE_BOX command for r600-r700 2012-08-29 12:11:00 -04:00
radeon_acpi.c drm/radeon/kms: Skip ACPI call to ATIF when possible 2011-12-01 09:57:34 +00: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: document radeon_asic.c 2012-07-18 13:53:36 +02:00
radeon_asic.h drm/radeon/kms: implement timestamp userspace query (v2) 2012-08-13 10:50:56 -04:00
radeon_atombios.c drm/radeon/kms: extend the Fujitsu D3003-S2 board connector quirk to cover later silicon stepping 2012-08-20 11:09:50 -04:00
radeon_atpx_handler.c drm/radeon: split ATRM support out from the ATPX handler (v3) 2012-08-20 11:13:05 -04:00
radeon_benchmark.c drm/radeon: remove radeon_fence_create 2012-06-21 09:38:35 +02:00
radeon_bios.c drm/radeon: split ATRM support out from the ATPX handler (v3) 2012-08-20 11:13:05 -04:00
radeon_blit_common.h drm/radeon/kms: common definitions for blit copy code 2012-02-03 09:31:14 +00:00
radeon_clocks.c drm/radeon: replace udelay with mdelay for long timeouts 2012-04-10 10:21:00 +01:00
radeon_combios.c drm/radeon: fix handling for ddc type 5 on combios 2012-08-13 10:50:48 -04:00
radeon_connectors.c drm/radeon: on hotplug force link training to happen (v2) 2012-07-25 14:14:12 +10:00
radeon_cp.c radeon_cp: Remove unneeded tests for NULL before calling release_firmware() 2012-04-30 13:15:31 +02:00
radeon_cs.c drm/radeon: fence virtual address and free it once idle v4 2012-08-13 10:50:55 -04:00
radeon_cursor.c drm/radeon/dce4+: set a more reasonable cursor watermark 2012-08-13 10:50:49 -04:00
radeon_device.c drm/radeon: fix double free in radeon_gpu_reset 2012-08-29 12:11:01 -04:00
radeon_display.c drm: Make the .mode_fixup() operations mode argument a const pointer 2012-07-19 21:52:38 -04:00
radeon_drv.c drm/radeon: add proper checking of RESOLVE_BOX command for r600-r700 2012-08-29 12:11:00 -04:00
radeon_drv.h Fix common misspellings 2011-03-31 11:26:23 -03:00
radeon_encoders.c drm/radeon/kms: update duallink checks for DCE6 2012-03-21 06:55:58 +00:00
radeon_family.h drm/radeon/kms: add trinity (TN) chip family 2012-03-21 06:55:55 +00:00
radeon_fb.c drm/radeon: Restrict offset for legacy display engine. 2012-03-20 08:47:46 +00:00
radeon_fence.c drm/radeon: make 64bit fences more robust v3 2012-09-13 16:17:49 -04:00
radeon_gart.c drm/radeon: fix typo in function header comment 2012-08-13 10:53:29 -04:00
radeon_gem.c drm/radeon: fence virtual address and free it once idle v4 2012-08-13 10:50:55 -04:00
radeon_i2c.c drm/radeon: only add the mm i2c bus if the hw_i2c module param is set 2012-04-11 09:36:53 +01:00
radeon_ioc32.c
radeon_irq_kms.c workqueue: deprecate flush[_delayed]_work_sync() 2012-08-20 14:51:24 -07:00
radeon_irq.c drm/radeon: Move more code out of line 2011-10-18 09:53:05 +01:00
radeon_kms.c drm/radeon/kms: implement timestamp userspace query (v2) 2012-08-13 10:50:56 -04:00
radeon_legacy_crtc.c drm/radeon: properly handle crtc powergating 2012-08-13 10:50:50 -04:00
radeon_legacy_encoders.c drm: Make the .mode_fixup() operations mode argument a const pointer 2012-07-19 21:52:38 -04:00
radeon_legacy_tv.c drm/radeon: Move more code out of line 2011-10-18 09:53:05 +01:00
radeon_mem.c drivers: use kzalloc/kcalloc instead of 'kmalloc+memset', where possible 2011-07-25 20:57:13 -07:00
radeon_mode.h drm/radeon: properly handle crtc powergating 2012-08-13 10:50:50 -04:00
radeon_object.c Revert "drm/radeon: fix bo creation retry path" 2012-08-21 09:55:01 -04:00
radeon_object.h drm/radeon: add PRIME support (v2) 2012-05-23 10:47:11 +01:00
radeon_pm.c drm/radeon: apply Murphy's law to the kms irq code v3 2012-06-21 09:38:50 +02:00
radeon_prime.c drm/radeon/prime: reserve/unreserve around pin 2012-06-16 11:14:05 +01:00
radeon_reg.h drm/radeon/kms: fix up atom HPD gpio parsing for DCE6 2012-03-21 06:55:50 +00:00
radeon_ring.c drm/radeon: init lockup timeout on ring init 2012-08-20 11:09:48 -04:00
radeon_sa.c drm/radeon: let sa manager block for fences to wait for v2 2012-07-18 13:17:44 +02:00
radeon_semaphore.c drm/radeon: rework ring syncing code 2012-06-21 09:38:40 +02:00
radeon_state.c drm/radeon: Move more code out of line 2011-10-18 09:53:05 +01:00
radeon_test.c drm/radeon: remove radeon_ring_index() 2012-07-18 13:33:54 +02:00
radeon_trace_points.c drm/radeon: add initial tracepoint support. 2010-12-16 14:37:47 +10:00
radeon_trace.h drm/radeon: add initial tracepoint support. 2010-12-16 14:37:47 +10:00
radeon_ttm.c drm: track dev_mapping in more robust and flexible way 2012-07-25 14:09:30 +10:00
radeon.h drm/radeon: split ATRM support out from the ATPX handler (v3) 2012-08-20 11:13:05 -04:00
rs100d.h
rs400.c drm/radeon: move radeon_ib_ring_tests out of chipset code 2012-07-17 10:33:01 +02:00
rs400d.h
rs600.c drm/radeon: move radeon_ib_ring_tests out of chipset code 2012-07-17 10:33:01 +02:00
rs600d.h drm/radeon/kms: add register definitions for audio 2012-04-24 09:50:13 +01:00
rs690.c drm/radeon: move radeon_ib_ring_tests out of chipset code 2012-07-17 10:33:01 +02:00
rs690d.h
rv200d.h
rv250d.h
rv350d.h
rv515.c drm/radeon: do not reenable crtc after moving vram start address 2012-08-13 10:50:52 -04:00
rv515d.h
rv770.c drm/radeon/kms: auto detect pcie link speed from root port 2012-07-19 22:30:32 -04:00
rv770d.h drm/radeon: add some additional 6xx/7xx/EG register init 2012-06-16 14:30:47 +01:00
si_blit_shaders.c The following text was taken from the original review request: 2012-03-24 10:08:39 -07:00
si_blit_shaders.h drm/radeon/kms: add support for CP setup on SI 2012-03-21 06:55:54 +00:00
si_reg.h drm/radeon: SI tiling fixes for display 2012-06-20 19:55:56 +01:00
si.c drm/radeon/kms: implement timestamp userspace query (v2) 2012-08-13 10:50:56 -04:00
sid.h drm/radeon/kms: implement timestamp userspace query (v2) 2012-08-13 10:50:56 -04:00