linux/drivers/gpu/drm
Daniel Vetter 64914da24e drm/fbdev-helper: don't force restores
Instead check for master status, in case we've raced.

This is the last exception to the general rule that we restore fbcon
only when there's no master active. Compositors are supposed to drop
their master status before they switch to a different console back to
text mode (or just switch to text mode directly, without a vt switch).

This is known to break some subtests of kms_fbcon_fbt in igt, but they're
just wrong - it does a graphics/text mode switch for the vt without
updating the master status.

Also add a comment to the drm_client->restore hook that this is expected
going forward from all clients (there's currently just one).

v2: Also drop the force in pan_display

v3: Restore the _force to pan_display, this actually means _locked in that
path. Spotted by Noralf.

Cc: Noralf Trønnes <noralf@tronnes.org>
Reviewed-by: Noralf Trønnes <noralf@tronnes.org>
Tested-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200204150146.2006481-3-daniel.vetter@ffwll.ch
2020-02-11 15:03:08 +01:00
..
amd drm: Avoid drm_global_mutex for simple inc/dec of dev->open_count 2020-01-24 17:41:34 +00:00
arc drm/arc: Remove sending of vblank event 2020-01-30 08:57:22 +01:00
arm drm-misc-next for v5.6: 2020-01-03 11:43:44 +10:00
armada drm: constify fb ops across all drivers 2019-12-05 10:57:42 +02:00
aspeed
ast drm/vram: Add helpers to validate a display mode's memory requirements 2020-02-06 10:32:54 +01:00
atmel-hlcdc Revert "drm: atmel-hlcdc: enable sys_clk during initalization." 2020-01-06 19:54:27 +01:00
bochs drm/bochs: deinit bugfix 2020-02-10 12:54:32 +01:00
bridge drm/bridge: tfp410: add pclk limits 2020-02-11 09:17:51 +02:00
cirrus drm/cirrus: Remove sending of vblank event 2020-01-30 09:00:45 +01:00
etnaviv drm-misc-next for v5.6: 2020-01-03 11:43:44 +10:00
exynos drm/exynos: dsi: Fix bridge chain handling 2020-01-08 09:09:48 +01:00
fsl-dcu drm/panel: decouple connector from drm_panel 2019-12-09 22:57:26 +01:00
gma500 drm/gma500: remove set but not used variables 'hist_reg' 2020-01-08 10:07:58 +01:00
hisilicon drm/hibmc: Implement struct drm_mode_config_funcs.mode_valid 2020-02-06 10:34:06 +01:00
i2c
i810 drm/i810: Don't include <drm/drm_pci.h> 2019-12-05 08:44:12 +01:00
i915 drm: Avoid drm_global_mutex for simple inc/dec of dev->open_count 2020-01-24 17:41:34 +00:00
imx drm/imx: pd: Use bus format/flags provided by the bridge when available 2020-01-31 16:40:12 +01:00
ingenic gpu/drm: ingenic: Add support for the JZ4770 2019-12-14 19:26:55 +01:00
lib
lima drm/lima: increase driver version to 1.1 2020-01-27 22:01:20 +08:00
mcde drm-misc-next for v5.6: 2020-01-03 11:43:44 +10:00
mediatek drm-misc-next for v5.6: 2020-01-03 11:43:44 +10:00
meson drm: meson: fix address type confusion 2020-01-08 13:51:56 +01:00
mga drm/mga: Don't include <drm/drm_pci.h> 2019-12-05 08:44:16 +01:00
mgag200 drm/mgag200: Add module parameter to pin all buffers at offset 0 2020-01-07 11:53:19 +01:00
msm drm-misc-next for v5.6: 2020-01-03 11:43:44 +10:00
mxsfb drm/panel: decouple connector from drm_panel 2019-12-09 22:57:26 +01:00
nouveau drm: Avoid drm_global_mutex for simple inc/dec of dev->open_count 2020-01-24 17:41:34 +00:00
omapdrm drm/omap: fix possible object reference leak 2020-02-11 11:46:51 +02:00
panel drm/panel: simple: Fix the lt089ac29000 bus_format 2020-01-31 17:48:16 +01:00
panfrost drm/panfrost: Prefix interrupt handlers' names 2020-01-21 10:30:10 -06:00
pl111 drm: get drm_bridge_panel connector via helper 2019-12-09 22:57:26 +01:00
qxl drm/qxl: add drm_driver.release callback. 2020-02-11 11:45:51 +01:00
r128 drm/r128: Don't include <drm/drm_pci.h> 2019-12-05 08:44:23 +01:00
radeon drm: Avoid drm_global_mutex for simple inc/dec of dev->open_count 2020-01-24 17:41:34 +00:00
rcar-du drm/bridge: Patch atomic hooks to take a drm_bridge_state 2020-01-31 16:00:24 +01:00
rockchip drm/rockchip: plane_state->fb iff plane_state->crtc 2020-01-28 15:42:23 +01:00
savage drm/savage: Don't include <drm/drm_pci.h> 2019-12-05 08:44:34 +01:00
scheduler drm-misc-next for v5.6: 2019-12-17 13:57:54 +01:00
selftests drm/modes: parse_cmdline: Add support for specifying panel_orientation (v2) 2019-12-16 12:13:18 +01:00
shmobile
sis drm/sis: Don't include <drm/drm_pci.h> 2019-12-05 08:44:55 +01:00
sti drm/panel: decouple connector from drm_panel 2019-12-09 22:57:26 +01:00
stm drm/stm: dsi: stm mipi dsi doesn't print error on probe deferral 2020-02-04 11:47:43 +01:00
sun4i drm/sun4i: drc: Make sure we enforce the clock rate 2020-01-08 09:14:08 +01:00
tdfx drm/tdfx: Don't include <drm/drm_pci.h> 2019-12-05 08:45:01 +01:00
tegra drm/tegra: Provide ddc symlink in output connector sysfs directory 2020-01-07 20:25:24 +01:00
tidss drm/tidss: New driver for TI Keystone platform Display SubSystem 2020-01-27 19:27:30 +02:00
tilcdc drm/tilcdc: Remove obsolete bundled tilcdc tfp410 driver 2019-12-16 10:45:43 +02:00
tiny drm/tiny/st7735r: No need to set ->owner for spi_register_driver() 2020-02-10 02:54:47 +01:00
ttm drm/ttm: use RCU in ttm_bo_flush_all_fences 2020-02-11 14:31:05 +01:00
tve200 drm: get drm_bridge_panel connector via helper 2019-12-09 22:57:26 +01:00
udl drm/udl: Clear struct drm_connector_funcs.dpms 2020-02-10 09:24:09 +01:00
v3d Linux 5.4-rc7 2019-11-14 05:53:10 +10:00
vboxvideo drm/vboxvideo: Implement struct drm_mode_config_funcs.mode_valid 2020-02-06 10:34:06 +01:00
vc4 drm/vc4: plane_state->fb iff plane_state->crtc 2020-01-28 15:42:43 +01:00
vgem
via drm/via: Don't include <drm/drm_pci.h> 2019-12-05 08:45:13 +01:00
virtio drm/virtio: move virtio_gpu_mem_entry initialization to new function 2020-02-10 12:54:33 +01:00
vkms drm/vkms: plane_state->fb iff plane_state->crtc 2020-01-28 15:43:32 +01:00
vmwgfx drm/ttm: nuke invalidate_caches callback 2020-01-16 16:35:07 +01:00
xen drm/xen: Explicitly disable automatic sending of vblank event 2020-01-30 09:00:51 +01:00
zte drm/zte: plane_state->fb iff plane_state->crtc 2020-01-28 15:43:58 +01:00
drm_agpsupport.c drm: use DIV_ROUND_UP helper macro for calculations 2019-11-04 18:17:36 +01:00
drm_atomic_helper.c drm/bridge: Add the necessary bits to support bus format negotiation 2020-01-31 16:39:53 +01:00
drm_atomic_state_helper.c drm/bridge: Add a drm_bridge_state object 2020-01-31 16:00:21 +01:00
drm_atomic_uapi.c drm/atomic: Spell CRTC consistently 2019-12-22 11:13:00 +01:00
drm_atomic.c drm/bridge: Add a drm_bridge_state object 2020-01-31 16:00:21 +01:00
drm_auth.c drm/auth: Drop master_create/destroy hooks 2020-01-29 09:14:11 +01:00
drm_blend.c
drm_bridge.c drm/bridge: Add the necessary bits to support bus format negotiation 2020-01-31 16:39:53 +01:00
drm_bufs.c drm: Remove the dma_alloc_coherent wrapper for internal usage 2020-02-04 23:57:26 +00:00
drm_cache.c
drm_client_modeset.c Revert "drm/fbdev: Fallback to non tiled mode if all tiles not present" 2019-11-25 16:55:40 +02:00
drm_client.c drm/client: convert to drm device based logging 2019-12-19 15:52:44 +02:00
drm_color_mgmt.c drm: Inline drm_color_lut_extract() 2019-11-29 21:29:17 +02:00
drm_connector.c drm/connector: Hookup the new drm_cmdline_mode panel_orientation member (v2) 2020-01-11 11:57:59 +01:00
drm_context.c
drm_crtc_helper_internal.h
drm_crtc_helper.c drm/crtc-helper: drm_connector_get_single_encoder prototype is missing 2019-12-03 17:42:57 +01:00
drm_crtc_internal.h drm: Add getfb2 ioctl 2020-01-14 16:22:17 -05:00
drm_crtc.c
drm_damage_helper.c
drm_debugfs_crc.c drm/crc: Actually allow to change the crc source 2020-01-28 16:49:22 +01:00
drm_debugfs.c drm/debugfs: also take per device driver features into account 2020-01-25 15:49:11 +02:00
drm_dma.c drm: fix parameters documentation style in drm_dma 2020-01-18 10:33:12 +01:00
drm_dp_aux_dev.c
drm_dp_cec.c
drm_dp_dual_mode_helper.c
drm_dp_helper.c drm: always determine branch device with drm_dp_is_branch() 2020-01-10 15:33:24 +02:00
drm_dp_mst_topology_internal.h
drm_dp_mst_topology.c drm/dp_mst: Fix clearing payload state on topology disable 2020-01-22 18:56:20 -05:00
drm_drv.c drm: remove duplicate check on parent and avoid BUG_ON 2019-12-17 17:26:08 +01:00
drm_dsc.c
drm_dumb_buffers.c
drm_edid_load.c
drm_edid.c drm: Fix a couple of typos, punctation and whitespace issues 2019-12-22 11:09:46 +01:00
drm_encoder_slave.c
drm_encoder.c drm/bridge: Make the bridge chain a double-linked list 2019-12-09 10:03:01 +01:00
drm_fb_cma_helper.c drm/fb-cma-helpers: Fix include issue 2020-01-09 17:33:41 +01:00
drm_fb_helper.c drm/fbdev-helper: don't force restores 2020-02-11 15:03:08 +01:00
drm_file.c drm: Avoid drm_global_mutex for simple inc/dec of dev->open_count 2020-01-24 17:41:34 +00:00
drm_flip_work.c
drm_format_helper.c
drm_fourcc.c drm/fourcc: Fill out all block sizes for P210 2019-11-28 11:19:32 +01:00
drm_framebuffer.c drm: Add getfb2 ioctl 2020-01-14 16:22:17 -05:00
drm_gem_cma_helper.c
drm_gem_framebuffer_helper.c drm/gem-fb-helper: convert to drm device based logging 2019-12-19 15:55:10 +02:00
drm_gem_shmem_helper.c drm: call drm_gem_object_funcs.mmap with fake offset 2019-12-06 11:18:11 +01:00
drm_gem_ttm_helper.c drm/ttm: fix mmap refcounting 2019-11-15 08:00:08 +01:00
drm_gem_vram_helper.c drm/vram: Add helpers to validate a display mode's memory requirements 2020-02-06 10:32:54 +01:00
drm_gem.c drm-misc-next for v5.6: 2019-12-17 13:57:54 +01:00
drm_hashtab.c
drm_hdcp.c
drm_internal.h drm/pci: Only build drm_pci.c if CONFIG_PCI is set 2019-12-05 08:43:14 +01:00
drm_ioc32.c
drm_ioctl.c drm: Add getfb2 ioctl 2020-01-14 16:22:17 -05:00
drm_irq.c
drm_kms_helper_common.c
drm_lease.c
drm_legacy_misc.c
drm_legacy.h
drm_lock.c gpu/drm: clean up white space in drm_legacy_lock_master_cleanup() 2020-01-08 19:51:11 +01:00
drm_memory.c
drm_mipi_dbi.c drm/mipi-dbi: Remove sending of vblank event 2020-01-30 09:00:45 +01:00
drm_mipi_dsi.c drm/dsi: add helpers for DSI compression mode and PPS packets 2019-11-07 15:00:16 +02:00
drm_mm.c
drm_mode_config.c drm/modeset: Prime modeset lock vs dma_resv 2019-11-21 11:03:31 +01:00
drm_mode_object.c drm/property: Enforce more lifetime rules 2019-11-04 18:17:36 +01:00
drm_modes.c drm/modes: tag unused variables to avoid warnings 2020-01-09 17:17:28 +01:00
drm_modeset_helper.c
drm_modeset_lock.c
drm_of.c drm: of: Add drm_of_lvds_get_dual_link_pixel_order 2019-12-18 02:40:16 +02:00
drm_panel_orientation_quirks.c
drm_panel.c drm/drm_panel: Fix EXPORT of drm_panel_of_backlight() one more time 2019-12-17 20:39:33 +01:00
drm_pci.c drm: Remove the dma_alloc_coherent wrapper for internal usage 2020-02-04 23:57:26 +00:00
drm_plane_helper.c
drm_plane.c
drm_prime.c drm: share address space for dma bufs 2019-12-06 11:18:11 +01:00
drm_print.c drm/print: convert debug category macros into an enum 2019-11-14 14:08:57 +02:00
drm_probe_helper.c drm: Stop accessing encoder->bridge directly 2019-12-09 10:02:45 +01:00
drm_property.c drm: limit to INT_MAX in create_blob ioctl 2019-12-04 19:44:13 -08:00
drm_rect.c drm/rect: update kerneldoc for drm_rect_clip_scaled() 2019-11-28 13:15:43 +01:00
drm_scatter.c
drm_scdc_helper.c
drm_self_refresh_helper.c drm/atomic: fix self-refresh helpers crtc state dereference 2019-11-06 13:00:21 -05:00
drm_simple_kms_helper.c
drm_syncobj.c drm/syncobj: Add documentation for timeline syncobj 2020-01-20 14:22:21 +01:00
drm_sysfs.c
drm_trace_points.c
drm_trace.h
drm_vblank.c drm: Initialize struct drm_crtc_state.no_vblank from device settings 2020-01-30 08:57:12 +01:00
drm_vm.c drm: Remove the dma_alloc_coherent wrapper for internal usage 2020-02-04 23:57:26 +00:00
drm_vma_manager.c
drm_vram_helper_common.c
drm_writeback.c
Kconfig drm/tidss: New driver for TI Keystone platform Display SubSystem 2020-01-27 19:27:30 +02:00
Makefile drm/tidss: New driver for TI Keystone platform Display SubSystem 2020-01-27 19:27:30 +02:00