Merge tag 'drm-misc-next-2017-03-06' of git://anongit.freedesktop.org/git/drm-misc into drm-next
First slice of drm-misc-next for 4.12:
Core/subsystem-wide:
- link status core patch from Manasi, for signalling link train fail
to userspace. I also had the i915 patch in here, but that had a
small buglet in our CI, so reverted.
- more debugfs_remove removal from Noralf, almost there now (Noralf
said he'll try to follow up with the stragglers).
- drm todo moved into kerneldoc, for better visibility (see
Documentation/gpu/todo.rst), lots of starter tasks in there.
- devm_ of helpers + use it in sti (from Ben Gaignard, acked by Rob
Herring)
- extended framebuffer fbdev support (for fbdev flipping), and vblank
wait ioctl fbdev support (Maxime Ripard)
- misc small things all over, as usual
- add vblank callbacks to drm_crtc_funcs, plus make lots of good use
of this to simplify drivers (Shawn Guo)
- new atomic iterator macros to unconfuse old vs. new state
Small drivers:
- vc4 improvements from Eric
- vc4 kerneldocs (Eric)!
- tons of improvements for dw-mipi-dsi in rockchip from John Keeping
and Chris Zhong.
- MAINTAINERS entries for drivers managed in drm-misc. It's not yet
official, still an experiment, but definitely not complete fail and
better to avoid confusion. We kinda screwed that up with drm-misc a
bit when we started committers last year.
- qxl atomic conversion (Gabriel Krisman)
- bunch of virtual driver polish (qxl, virgl, ...)
- misc tiny patches all over
This is the first time we've done the same merge-window blackout for
drm-misc as we've done for drm-intel for ages, hence why we have a
_lot_ of stuff queued already. But it's still only half of drm-intel
(room to grow!), and the drivers in drm-misc experiment seems to work
at least insofar as that you also get lots of driver updates here
alredy.
* tag 'drm-misc-next-2017-03-06' of git://anongit.freedesktop.org/git/drm-misc: (141 commits)
drm/vc4: Fix OOPSes from trying to cache a partially constructed BO.
drm/vc4: Fulfill user BO creation requests from the kernel BO cache.
Revert "drm/i915: Implement Link Rate fallback on Link training failure"
drm/fb-helper: implement ioctl FBIO_WAITFORVSYNC
drm: Update drm_fbdev_cma_init documentation
drm/rockchip/dsi: add dw-mipi power domain support
drm/rockchip/dsi: fix insufficient bandwidth of some panel
dt-bindings: add power domain node for dw-mipi-rockchip
drm/rockchip/dsi: remove mode_valid function
drm/rockchip/dsi: dw-mipi: correct the coding style
drm/rockchip/dsi: dw-mipi: support RK3399 mipi dsi
dt-bindings: add rk3399 support for dw-mipi-rockchip
drm/rockchip: dw-mipi-dsi: add reset control
drm/rockchip: dw-mipi-dsi: support non-burst modes
drm/rockchip: dw-mipi-dsi: defer probe if panel is not loaded
drm/rockchip: vop: test for P{H,V}SYNC
drm/rockchip: dw-mipi-dsi: use positive check for N{H, V}SYNC
drm/rockchip: dw-mipi-dsi: use specific poll helper
drm/rockchip: dw-mipi-dsi: improve PLL configuration
drm/rockchip: dw-mipi-dsi: properly configure PHY timing
...
This commit is contained in:
@@ -0,0 +1,92 @@
|
||||
///
|
||||
/// Use drm_*_get() and drm_*_put() helpers instead of drm_*_reference() and
|
||||
/// drm_*_unreference() helpers.
|
||||
///
|
||||
// Confidence: High
|
||||
// Copyright: (C) 2017 NVIDIA Corporation
|
||||
// Options: --no-includes --include-headers
|
||||
//
|
||||
|
||||
virtual patch
|
||||
virtual report
|
||||
|
||||
@depends on patch@
|
||||
expression object;
|
||||
@@
|
||||
|
||||
(
|
||||
- drm_mode_object_reference(object)
|
||||
+ drm_mode_object_get(object)
|
||||
|
|
||||
- drm_mode_object_unreference(object)
|
||||
+ drm_mode_object_put(object)
|
||||
|
|
||||
- drm_connector_reference(object)
|
||||
+ drm_connector_get(object)
|
||||
|
|
||||
- drm_connector_unreference(object)
|
||||
+ drm_connector_put(object)
|
||||
|
|
||||
- drm_framebuffer_reference(object)
|
||||
+ drm_framebuffer_get(object)
|
||||
|
|
||||
- drm_framebuffer_unreference(object)
|
||||
+ drm_framebuffer_put(object)
|
||||
|
|
||||
- drm_gem_object_reference(object)
|
||||
+ drm_gem_object_get(object)
|
||||
|
|
||||
- drm_gem_object_unreference(object)
|
||||
+ drm_gem_object_put(object)
|
||||
|
|
||||
- __drm_gem_object_unreference(object)
|
||||
+ __drm_gem_object_put(object)
|
||||
|
|
||||
- drm_gem_object_unreference_unlocked(object)
|
||||
+ drm_gem_object_put_unlocked(object)
|
||||
|
|
||||
- drm_property_reference_blob(object)
|
||||
+ drm_property_blob_get(object)
|
||||
|
|
||||
- drm_property_unreference_blob(object)
|
||||
+ drm_property_blob_put(object)
|
||||
)
|
||||
|
||||
@r depends on report@
|
||||
expression object;
|
||||
position p;
|
||||
@@
|
||||
|
||||
(
|
||||
drm_mode_object_unreference@p(object)
|
||||
|
|
||||
drm_mode_object_reference@p(object)
|
||||
|
|
||||
drm_connector_unreference@p(object)
|
||||
|
|
||||
drm_connector_reference@p(object)
|
||||
|
|
||||
drm_framebuffer_unreference@p(object)
|
||||
|
|
||||
drm_framebuffer_reference@p(object)
|
||||
|
|
||||
drm_gem_object_unreference@p(object)
|
||||
|
|
||||
drm_gem_object_reference@p(object)
|
||||
|
|
||||
__drm_gem_object_unreference(object)
|
||||
|
|
||||
drm_gem_object_unreference_unlocked(object)
|
||||
|
|
||||
drm_property_unreference_blob@p(object)
|
||||
|
|
||||
drm_property_reference_blob@p(object)
|
||||
)
|
||||
|
||||
@script:python depends on report@
|
||||
object << r.object;
|
||||
p << r.p;
|
||||
@@
|
||||
|
||||
msg="WARNING: use get/put helpers to reference and dereference %s" % (object)
|
||||
coccilib.report.print_report(p[0], msg)
|
||||
Reference in New Issue
Block a user