linux/drivers/gpu/drm
Thierry Reding eb47fe8033 drm: Do not set connector->encoder in drivers
An encoder is associated with a connector by the DRM core as a result of
setting up a configuration. Drivers using the atomic or legacy helpers
should never set up this link, even if it is a static one.

While at it, try to catch this kind of error in the future by adding a
WARN_ON() in drm_mode_connector_attach_encoder(). Note that this doesn't
cover all the cases, since drivers could set this up after attaching.
Drivers that use the atomic helpers will get a warning later on, though,
so hopefully the two combined cover enough to help people avoid this in
the future.

Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Philipp Zabel <p.zabel@pengutronix.de>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Liviu Dudau <Liviu.Dudau@arm.com>
Cc: Mark yao <mark.yao@rock-chips.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1447694393-24700-1-git-send-email-thierry.reding@gmail.com
2016-01-13 13:30:53 +01:00
..
amd drm: Pass 'name' to drm_encoder_init() 2015-12-11 09:13:20 +01:00
armada drm/armada: Constify function pointer structs 2015-12-15 13:41:54 +01:00
ast drm: Pass 'name' to drm_encoder_init() 2015-12-11 09:13:20 +01:00
atmel-hlcdc drm: use dev_name as default unique name in drm_dev_alloc() 2015-12-15 13:56:06 +01:00
bochs drm/bochs: Constify function pointer structs 2015-12-15 13:42:36 +01:00
bridge drm: Do not set connector->encoder in drivers 2016-01-13 13:30:53 +01:00
cirrus drm/cirrus: Constify function pointer structs 2015-12-15 13:43:59 +01:00
exynos drm/exynos: Constify function pointer structs 2015-12-15 13:44:56 +01:00
fsl-dcu drm: use dev_name as default unique name in drm_dev_alloc() 2015-12-15 13:56:06 +01:00
gma500 drm/gma500: use to_pci_dev() 2016-01-04 07:57:38 +01:00
i2c drm: Do not set connector->encoder in drivers 2016-01-13 13:30:53 +01:00
i810
i915 drm/i915: Update connector_mask during readout, v2. 2016-01-06 16:37:26 +01:00
imx drm: Do not set connector->encoder in drivers 2016-01-13 13:30:53 +01:00
mga
mgag200 drm/mgag200: Constify function pointer structs 2015-12-15 13:46:35 +01:00
msm Merge tag 'topic/drm-misc-2015-12-14' of git://anongit.freedesktop.org/drm-intel into drm-next 2015-12-15 10:40:15 +10:00
nouveau drm: use dev_name as default unique name in drm_dev_alloc() 2015-12-15 13:56:06 +01:00
omapdrm drm/omap: use kzalloc in sita_init() 2015-12-15 13:37:06 +01:00
panel
qxl drm/qxl: use to_qxl_bo macro 2015-12-15 13:39:40 +01:00
r128
radeon drm/dp/mst: constify drm_dp_mst_topology_cbs structures 2016-01-04 08:09:58 +01:00
rcar-du drm: Constify drm_encoder_slave_funcs 2015-12-15 13:41:17 +01:00
rockchip drm: use dev_name as default unique name in drm_dev_alloc() 2015-12-15 13:56:06 +01:00
savage
shmobile drm: Do not set connector->encoder in drivers 2016-01-13 13:30:53 +01:00
sis
sti drm/sti: Drop bogus drm_mode_sort() call 2015-12-11 09:33:18 +01:00
tdfx
tegra drm/tegra: Use __drm_atomic_helper_reset_connector for subclassing connector state, v2. 2016-01-05 09:43:26 +01:00
tilcdc drm: Pass 'name' to drm_encoder_init() 2015-12-11 09:13:20 +01:00
ttm
udl drm/udl: Constify function pointer structs 2015-12-15 13:48:54 +01:00
vc4 drm/atomic: Remove drm_atomic_connectors_for_crtc. 2016-01-06 16:37:39 +01:00
vgem
via
virtio drm: Drop drm_helper_probe_single_connector_modes_nomerge() 2015-12-11 09:32:53 +01:00
vmwgfx drm/vmwgfx: Constify function pointer structs 2015-12-15 13:49:04 +01:00
ati_pcigart.c
drm_agpsupport.c
drm_atomic.c drm/atomic: Remove drm_atomic_connectors_for_crtc. 2016-01-06 16:37:39 +01:00
drm_atomic_helper.c drm/atomic: Remove drm_atomic_connectors_for_crtc. 2016-01-06 16:37:39 +01:00
drm_auth.c
drm_bridge.c drm/bridge: Improve kerneldoc 2015-12-08 16:07:53 +01:00
drm_bufs.c
drm_cache.c
drm_context.c
drm_crtc.c drm: Do not set connector->encoder in drivers 2016-01-13 13:30:53 +01:00
drm_crtc_helper.c drm: Add crtc->name and use it in debug messages 2015-12-11 09:13:48 +01:00
drm_crtc_internal.h
drm_debugfs.c
drm_dma.c
drm_dp_helper.c
drm_dp_mst_topology.c drm/dp/mst: save vcpi with payloads 2015-12-15 10:22:28 +01:00
drm_drv.c drm: move MODULE_PARM_DESC to other file 2016-01-08 15:32:29 +01:00
drm_edid.c drm/edid: index CEA/HDMI mode tables using the VIC 2016-01-08 15:30:28 +01:00
drm_edid_load.c
drm_encoder_slave.c drm: Constify drm_encoder_slave_funcs 2015-12-15 13:41:17 +01:00
drm_fb_cma_helper.c drm: Use the driver's gem_object_free function from CMA helpers. 2015-12-15 10:23:44 +01:00
drm_fb_helper.c drm/fb-helper: Use proper plane mask for fb cleanup 2015-12-21 09:54:49 +01:00
drm_flip_work.c
drm_fops.c Linux 4.4-rc4 2015-12-08 11:04:26 +10:00
drm_gem.c drm: Remove opencoded drm_gem_object_release_handle() 2016-01-05 16:23:09 +01:00
drm_gem_cma_helper.c drm: Use the driver's gem_object_free function from CMA helpers. 2015-12-15 10:23:44 +01:00
drm_global.c
drm_hashtab.c
drm_info.c
drm_internal.h
drm_ioc32.c
drm_ioctl.c
drm_irq.c drm: move MODULE_PARM_DESC to other file 2016-01-08 15:32:29 +01:00
drm_legacy.h
drm_lock.c
drm_memory.c
drm_mipi_dsi.c
drm_mm.c
drm_modes.c drm/doc: Convert to markdown 2015-12-15 10:22:26 +01:00
drm_modeset_lock.c drm/doc: Convert to markdown 2015-12-15 10:22:26 +01:00
drm_of.c
drm_panel.c
drm_pci.c
drm_plane_helper.c drm: Pass 'name' to drm_universal_plane_init() 2015-12-11 09:13:10 +01:00
drm_platform.c
drm_prime.c drm/doc: Convert to markdown 2015-12-15 10:22:26 +01:00
drm_probe_helper.c drm: Expand the drm_helper_probe_single_connector_modes() docs 2015-12-11 09:35:16 +01:00
drm_rect.c drm: Add "prefix" parameter to drm_rect_debug_print() 2015-11-24 11:47:46 +01:00
drm_scatter.c
drm_sysfs.c drm/sysfs: Send out uevent when connector->force changes 2015-11-24 11:49:34 +01:00
drm_trace.h
drm_trace_points.c
drm_vm.c
drm_vma_manager.c
Kconfig
Makefile