Patrik Jakobsson
93b0bb5867
drm/gma500: Unify crtc helpers
...
CDV crtc helpers are identical to other chips so use gma_ prefix for the
crtc helper struct and remove the CDV copy.
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20210201132617.1233-4-patrik.r.jakobsson@gmail.com
2021-02-09 13:07:41 +01:00
Patrik Jakobsson
45c7f1b4aa
drm/gma500/cdv: Remove unused tv out paths
...
Afaik tv out is not available on Cedarview and the code isn't doing
anything so remove it.
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20210201132617.1233-3-patrik.r.jakobsson@gmail.com
2021-02-09 13:07:40 +01:00
Patrik Jakobsson
23e7cce45c
drm/gma500: Remove unused DPST support
...
DPST never got enabled so remove it. We keep the reg save/restore code
just for safety.
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20210201132617.1233-2-patrik.r.jakobsson@gmail.com
2021-02-09 13:07:39 +01:00
Patrik Jakobsson
ab7a346702
drm/gma500/cdv: Remove unused code for crt init
...
Clearly never been used so just remove it.
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20210201132617.1233-1-patrik.r.jakobsson@gmail.com
2021-02-09 13:07:39 +01:00
Thomas Zimmermann
e40f97ef12
drm/gma500: Drop DRM_GMA600 config option
...
With support for the MID-only Medfield chips removed, simply build
the complete driver if DRM_GMA500 has been selected. Anyone who wants
to enable one of the chips would probably also want the rest.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Fixes: 837f23bb4b ("drm/gma500: Drop DRM_GMA3600 config option")
Cc: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Cc: dri-devel@lists.freedesktop.org
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210209112721.3421-1-tzimmermann@suse.de
2021-02-09 13:07:21 +01:00
Sebastian Andrzej Siewior
6f02e9df2a
drm/gma500: Remove in_atomic() usage.
...
The driver is using msleep() if it is safe to use based on in_atomic().
This is not needed this macro is only used from
i2c_algorithm::master_xfer() which is always invoked from preemptible
context.
Remove in_atomic() because it is superfluous. Remove wait_for_atomic()
because it has no users.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch >
Link: https://patchwork.freedesktop.org/patch/msgid/20210208233119.391103-2-bigeasy@linutronix.de
2021-02-09 11:22:58 +01:00
Thomas Zimmermann
5ceeb32863
drm/udl: Move vmap out of commit tail
...
Vmap operations may acquire the dmabuf reservation lock, which is not
allowed within atomic commit-tail functions. Therefore move vmap and
vunmap from the damage handler into prepare_fb and cleanup_fb callbacks.
The mapping is provided as GEM shadow-buffered plane. The functions in
the commit tail use the pre-established mapping for damage handling.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Tested-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Gerd Hoffmann <kraxel@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210208115538.6430-8-tzimmermann@suse.de
2021-02-08 13:00:51 +01:00
Thomas Zimmermann
4ac0868d43
drm/gm12u320: Move vmap out of commit tail
...
Vmap operations may acquire the dmabuf reservation lock, which is not
allowed within atomic commit-tail functions. Therefore move vmap and
vunmap from the damage handler into prepare_fb and cleanup_fb callbacks.
The mapping is provided as GEM shadow-buffered plane. The functions in
the commit tail use the pre-established mapping for damage handling.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Tested-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Gerd Hoffmann <kraxel@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210208115538.6430-7-tzimmermann@suse.de
2021-02-08 13:00:44 +01:00
Thomas Zimmermann
681a2c5dfd
drm/cirrus: Move vmap out of commit tail
...
Vmap operations may acquire the dmabuf reservation lock, which is not
allowed within atomic commit-tail functions. Therefore move vmap and
vunmap from the damage handler into prepare_fb and cleanup_fb callbacks.
The mapping is provided as GEM shadow-buffered plane. The functions in
the commit tail use the pre-established mapping for damage handling.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Tested-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Gerd Hoffmann <kraxel@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210208115538.6430-6-tzimmermann@suse.de
2021-02-08 13:00:36 +01:00
Thomas Zimmermann
4862ffaec5
drm/mgag200: Move vmap out of commit tail
...
Vmap operations may acquire the dmabuf reservation lock, which is not
allowed within atomic commit-tail functions. Therefore move vmap and
vunmap from the damage handler into prepare_fb and cleanup_fb callbacks.
The mapping is provided as GEM shadow-buffered plane. The functions in
the commit tail use the pre-established mapping for damage handling.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Tested-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Gerd Hoffmann <kraxel@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210208115538.6430-5-tzimmermann@suse.de
2021-02-08 13:00:26 +01:00
Thomas Zimmermann
6dd7b6ce43
drm: Add additional atomic helpers for shadow-buffered planes
...
Several drivers use GEM buffer objects as shadow buffers for the actual
framebuffer memory. Right now, drivers do these vmap operations in their
commit tail, which is actually not allowed by the locking rules for
the dma-buf reservation lock. The involved BO has to be vmapped in the
plane's prepare_fb callback and vunmapped in cleanup_fb.
This patch introduces atomic helpers for such shadow planes. Plane
functions manage the plane state for shadow planes. The provided
implementations for prepare_fb and cleanup_fb vmap and vunmap all BOs of
struct drm_plane_state.fb. The mappings are afterwards available in the
plane's commit-tail functions.
For now, all rsp drivers use the simple KMS helpers, so we add the plane
callbacks and wrappers for simple KMS. The internal plane functions can
later be exported as needed.
v3:
* documentation fixes
v2:
* make duplicate_state interface compatible with
struct drm_plane_funcs
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Tested-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Gerd Hoffmann <kraxel@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210208115538.6430-4-tzimmermann@suse.de
2021-02-08 13:00:14 +01:00
Thomas Zimmermann
db0c6bd2c0
drm/gem: Export drm_gem_vmap() and drm_gem_vunmap()
...
The symbols will be required by the upcoming helpers for shadow-buffered
planes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Tested-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Gerd Hoffmann <kraxel@redhat.com >
Reported-by: kernel test robot <lkp@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210208115538.6430-3-tzimmermann@suse.de
2021-02-08 13:00:06 +01:00
Thomas Zimmermann
40f302adbd
drm/simple-kms: Add plane-state helpers
...
Just like regular plane-state helpers, drivers can use these new
callbacks to create and destroy private plane state.
v2:
* make duplicate_state interface compatible with
struct drm_plane_funcs
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Tested-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Gerd Hoffmann <kraxel@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210208115538.6430-2-tzimmermann@suse.de
2021-02-08 12:59:59 +01:00
Christian Hewitt
1d048afe7e
drm/lima: add governor data with pre-defined thresholds
...
This patch adapts the panfrost pre-defined thresholds change [0] to the
lima driver to improve real-world performance. The upthreshold value has
been set to ramp GPU frequency to max freq faster (compared to panfrost)
to compensate for the lower overall performance of utgard devices.
[0] https://patchwork.kernel.org/project/dri-devel/patch/20210121170445.19761-1-lukasz.luba@arm.com/
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com >
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com >
Signed-off-by: Qiang Yu <yuq825@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210127194047.21462-1-christianshewitt@gmail.com
2021-02-07 20:55:08 +08:00
Lukasz Luba
904beebb3e
drm/lima: Use delayed timer as default in devfreq profile
...
Devfreq framework supports 2 modes for monitoring devices.
Use delayed timer as default instead of deferrable timer
in order to monitor the GPU status regardless of CPU idle.
Signed-off-by: Lukasz Luba <lukasz.luba@arm.com >
Signed-off-by: Qiang Yu <yuq825@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210127105121.20345-1-lukasz.luba@arm.com
2021-02-07 20:54:57 +08:00
Colin Ian King
0c9d59c3db
drm/mgag200: make a const array static, makes object smaller
...
Don't populate the const array m_div_val on the stack but instead make
it static. Makes the object code smaller by 29 bytes:
Before:
text data bss dec hex filename
34736 4552 0 39288 9978 drivers/gpu/drm/mgag200/mgag200_mode.o
After:
text data bss dec hex filename
34625 4616 0 39241 9949 drivers/gpu/drm/mgag200/mgag200_mode.o
(gcc version 10.2.0)
Signed-off-by: Colin Ian King <colin.king@canonical.com >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20210204191156.110778-1-colin.king@canonical.com
2021-02-05 15:38:08 +01:00
Christian König
f2f12eb9c3
drm/scheduler: provide scheduler score externally
...
Allow multiple schedulers to share the load balancing score.
This is useful when one engine has different hw rings.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-and-Tested-by: Leo Liu <leo.liu@amd.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210204144405.2737-1-christian.koenig@amd.com
2021-02-05 10:47:11 +01:00
Gerd Hoffmann
f4a84e165e
drm/qxl: allocate dumb buffers in ram
...
dumb buffers are shadowed anyway, so there is no need to store them
in device memory. Use QXL_GEM_DOMAIN_CPU (TTM_PL_SYSTEM) instead.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: http://patchwork.freedesktop.org/patch/msgid/20210204145712.1531203-11-kraxel@redhat.com
2021-02-05 09:02:40 +01:00
Gerd Hoffmann
5a838e5d58
drm/qxl: simplify qxl_fence_wait
...
Now that we have the new release_event wait queue we can just
use that in qxl_fence_wait() and simplify the code a lot.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: http://patchwork.freedesktop.org/patch/msgid/20210204145712.1531203-10-kraxel@redhat.com
2021-02-05 09:02:33 +01:00
Gerd Hoffmann
5f6c871fe9
drm/qxl: properly free qxl releases
...
Reorganize qxl_device_fini() a bit.
Add missing unpin() calls.
Count releases. Add wait queue for releases. That way
qxl_device_fini() can easily wait until everything is
ready for proper shutdown.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: http://patchwork.freedesktop.org/patch/msgid/20210204145712.1531203-9-kraxel@redhat.com
2021-02-05 08:52:45 +01:00
Gerd Hoffmann
a7709b9b89
drm/qxl: handle shadow in primary destroy
...
qxl_primary_atomic_disable must check whenever the framebuffer bo has a
shadow surface and in case it has check the shadow primary status.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: http://patchwork.freedesktop.org/patch/msgid/20210204145712.1531203-8-kraxel@redhat.com
2021-02-05 08:52:40 +01:00
Gerd Hoffmann
76aefa4d27
drm/qxl: properly pin/unpin shadow
...
Suggested-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: http://patchwork.freedesktop.org/patch/msgid/20210204145712.1531203-7-kraxel@redhat.com
2021-02-05 08:52:35 +01:00
Gerd Hoffmann
4ca77c5135
drm/qxl: release shadow on shutdown
...
In case we have a shadow surface on shutdown release
it so it doesn't leak.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: http://patchwork.freedesktop.org/patch/msgid/20210204145712.1531203-6-kraxel@redhat.com
2021-02-05 08:52:31 +01:00
Gerd Hoffmann
65ffea3c6e
drm/qxl: unpin release objects
...
Balances the qxl_create_bo(..., pinned=true, ...);
call in qxl_release_bo_alloc().
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: http://patchwork.freedesktop.org/patch/msgid/20210204145712.1531203-5-kraxel@redhat.com
2021-02-05 08:52:25 +01:00
Gerd Hoffmann
f8752f14c9
drm/qxl: use drmm_mode_config_init
...
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: http://patchwork.freedesktop.org/patch/msgid/20210204145712.1531203-4-kraxel@redhat.com
2021-02-05 08:52:21 +01:00
Gerd Hoffmann
93d8da8d7e
Revert "drm/qxl: do not run release if qxl failed to init"
...
This reverts commit b91907a624 .
Patch is broken, it effectively makes qxl_drm_release() a nop
because on normal driver shutdown qxl_drm_release() is called
*after* drm_dev_unregister().
Fixes: b91907a624 ("drm/qxl: do not run release if qxl failed to init")
Cc: Tong Zhang <ztong0001@gmail.com >
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: http://patchwork.freedesktop.org/patch/msgid/20210204145712.1531203-3-kraxel@redhat.com
2021-02-05 08:52:15 +01:00
Imre Deak
6fec777c11
drm/dp_mst: Use DP_MST_LOGICAL_PORT_0 instead of magic number
...
Use the macro defined for the first logical port instead of the
corresponding magic number.
Cc: Lyude Paul <lyude@redhat.com >
Signed-off-by: Imre Deak <imre.deak@intel.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210201120145.350258-4-imre.deak@intel.com
2021-02-04 19:22:36 +02:00
Imre Deak
e0305024e7
drm/dp_mst: Remove redundant tile property setting
...
drm_get_edid() already updates the tile property since
commit 2de3a07849 ("drm/dp: Set the connector's TILE property even for DP SST connectors")
so no need to update it after calling this function.
Cc: Lyude Paul <lyude@redhat.com >
Signed-off-by: Imre Deak <imre.deak@intel.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210201120145.350258-3-imre.deak@intel.com
2021-02-04 19:22:26 +02:00
Imre Deak
468091531c
drm/dp_mst: Don't cache EDIDs for physical ports
...
Caching EDIDs for physical ports prevents updating the EDID if a port
gets reconnected via a Connection Status Notification message, fix this.
Fixes: db1a079569 ("drm/dp_mst: Handle SST-only branch device case")
Cc: Wayne Lin <Wayne.Lin@amd.com >
Cc: Lyude Paul <lyude@redhat.com >
Signed-off-by: Imre Deak <imre.deak@intel.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210201120145.350258-2-imre.deak@intel.com
2021-02-04 19:22:02 +02:00
Tong Zhang
b91907a624
drm/qxl: do not run release if qxl failed to init
...
if qxl_device_init() fail, drm device will not be registered,
in this case, do not run qxl_drm_release()
[ 5.258534] ==================================================================
[ 5.258931] BUG: KASAN: user-memory-access in qxl_destroy_monitors_object+0x42/0xa0 [qxl]
[ 5.259388] Write of size 8 at addr 00000000000014dc by task modprobe/95
[ 5.259754]
[ 5.259842] CPU: 0 PID: 95 Comm: modprobe Not tainted 5.11.0-rc6-00007-g88bb507a74ea #62
[ 5.260309] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-48-gd9c812dda54
[ 5.260917] Call Trace:
[ 5.261056] dump_stack+0x7d/0xa3
[ 5.261245] kasan_report.cold+0x10c/0x10e
[ 5.261475] ? qxl_destroy_monitors_object+0x42/0xa0 [qxl]
[ 5.261789] check_memory_region+0x17c/0x1e0
[ 5.262029] qxl_destroy_monitors_object+0x42/0xa0 [qxl]
[ 5.262332] qxl_modeset_fini+0x9/0x20 [qxl]
[ 5.262595] qxl_drm_release+0x22/0x30 [qxl]
[ 5.262841] drm_dev_release+0x32/0x50
[ 5.263047] release_nodes+0x39e/0x410
[ 5.263253] ? devres_release+0x40/0x40
[ 5.263462] really_probe+0x2ea/0x420
[ 5.263664] driver_probe_device+0x6d/0xd0
[ 5.263888] device_driver_attach+0x82/0x90
[ 5.264116] ? device_driver_attach+0x90/0x90
[ 5.264353] __driver_attach+0x60/0x100
[ 5.264563] ? device_driver_attach+0x90/0x90
[ 5.264801] bus_for_each_dev+0xe1/0x140
[ 5.265014] ? subsys_dev_iter_exit+0x10/0x10
[ 5.265251] ? klist_node_init+0x61/0x80
[ 5.265464] bus_add_driver+0x254/0x2a0
[ 5.265673] driver_register+0xd3/0x150
[ 5.265882] ? 0xffffffffc0048000
[ 5.266064] do_one_initcall+0x84/0x250
[ 5.266274] ? trace_event_raw_event_initcall_finish+0x150/0x150
[ 5.266596] ? unpoison_range+0xf/0x30
[ 5.266801] ? ____kasan_kmalloc.constprop.0+0x84/0xa0
[ 5.267082] ? unpoison_range+0xf/0x30
[ 5.267287] ? unpoison_range+0xf/0x30
[ 5.267491] do_init_module+0xf8/0x350
[ 5.267697] load_module+0x3fe6/0x4340
[ 5.267902] ? vm_unmap_ram+0x1d0/0x1d0
[ 5.268115] ? module_frob_arch_sections+0x20/0x20
[ 5.268375] ? __do_sys_finit_module+0x108/0x170
[ 5.268624] __do_sys_finit_module+0x108/0x170
[ 5.268865] ? __ia32_sys_init_module+0x40/0x40
[ 5.269111] ? file_open_root+0x200/0x200
[ 5.269330] ? do_sys_open+0x85/0xe0
[ 5.269527] ? filp_open+0x50/0x50
[ 5.269714] ? exit_to_user_mode_prepare+0xfc/0x130
[ 5.269978] do_syscall_64+0x33/0x40
[ 5.270176] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 5.270450] RIP: 0033:0x7fa3f685bcf7
[ 5.270646] Code: 48 89 57 30 48 8b 04 24 48 89 47 38 e9 1d a0 02 00 48 89 f8 48 89 f7 48 89 d1
[ 5.271634] RSP: 002b:00007ffca83048d8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[ 5.272037] RAX: ffffffffffffffda RBX: 0000000001e94a70 RCX: 00007fa3f685bcf7
[ 5.272416] RDX: 0000000000000000 RSI: 0000000001e939e0 RDI: 0000000000000003
[ 5.272794] RBP: 0000000000000003 R08: 0000000000000000 R09: 0000000000000001
[ 5.273171] R10: 00007fa3f68bf300 R11: 0000000000000246 R12: 0000000001e939e0
[ 5.273550] R13: 0000000000000000 R14: 0000000001e93bd0 R15: 0000000000000001
[ 5.273928] ==================================================================
Signed-off-by: Tong Zhang <ztong0001@gmail.com >
Link: http://patchwork.freedesktop.org/patch/msgid/20210203040727.868921-1-ztong0001@gmail.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2021-02-03 14:52:44 +01:00
Dan Carpenter
eb988a2ee5
drm/virtio: fix an error code in virtio_gpu_init()
...
If devm_request_mem_region() fails this code currently returns success
but it should return -EBUSY.
Fixes: 6076a9711d ("drm/virtio: implement blob resources: probe for host visible region")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com >
Link: http://patchwork.freedesktop.org/patch/msgid/YBpy0GS7GfmafMfe@mwanda
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2021-02-03 14:52:44 +01:00
Daniel Vetter
5823cca39d
drm/todo: Add entry for moving to dma_resv_lock
...
Requested by Thomas. I think it justifies a new level, since I tried
to make some forward progress on this last summer, and gave up (for
now). This is very tricky.
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com >
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com >
Cc: Maxime Ripard <mripard@kernel.org >
Cc: Thomas Zimmermann <tzimmermann@suse.de >
Cc: David Airlie <airlied@linux.ie >
Cc: Daniel Vetter <daniel@ffwll.ch >
Cc: Sumit Semwal <sumit.semwal@linaro.org >
Cc: "Christian König" <christian.koenig@amd.com >
Cc: linux-media@vger.kernel.org
Cc: linaro-mm-sig@lists.linaro.org
Link: https://patchwork.freedesktop.org/patch/msgid/20210122133624.1751802-1-daniel.vetter@ffwll.ch
2021-02-03 14:09:44 +01:00
Ye Bin
09b20988ff
drm/nouveau: remove set but not used variable ‘pdev’ in nouveau_bios_init
...
Fix follow warning:
drivers/gpu/drm/nouveau/nouveau_bios.c:2086:18: warning: variable ‘pdev’ set but not used [-Wunused-but-set-variable]
struct pci_dev *pdev;
^~~~
Reported-by: Hulk Robot <hulkci@huawei.com >
Signed-off-by: Ye Bin <yebin10@huawei.com >
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20210123013014.3815870-1-yebin10@huawei.com
2021-02-03 09:19:19 +01:00
Zack Rusin
75ec69c79e
drm/vmwgfx: Fix some memory leaks on errors
...
Dan noticed some issues with pci_release_region, this builds upon
that and fixes some other lingering issues. As part of this we
also can stop trying to manually free our managed device;
there's no need for it, it will be cleaned up automatically for us.
Fixes: 8772c0bb58 ("drm/vmwgfx: Cleanup pci resource allocation")
Signed-off-by: Zack Rusin <zackr@vmware.com >
Reviewed-by: Martin Krastev <krastevm@vmware.com >
Reviewed-by: Roland Scheidegger <sroland@vmware.com >
Reported-by: kernel test robot <lkp@intel.com >
Reported-by: Dan Carpenter <dan.carpenter@oracle.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210128173756.121525-1-zackr@vmware.com
2021-02-02 11:41:28 -05:00
Bernard Zhao
f0c5a89e53
drm/vc4: remove unneeded variable: "ret"
...
remove unneeded variable: "ret".
Signed-off-by: Bernard Zhao <bernard@vivo.com >
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Link: https://patchwork.freedesktop.org/patch/msgid/20210202122338.15351-1-bernard@vivo.com
2021-02-02 16:59:33 +01:00
Joseph Schulte
482f3ef0b0
drm: replace drm_modeset_lock_all() in drm_client_modeset_dpms_legacy()
...
This patch helps complete Use DRM_MODESET_LOCK_ALL* helpers instead of
boilerplate todo in Documentation/gpu/todo.rst
Signed-off-by: Joseph Schulte <joeschulte.js@gmail.com >
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch >
Link: https://patchwork.freedesktop.org/patch/msgid/20210125144815.8389-1-joeschulte.js@gmail.com
2021-02-02 16:01:40 +01:00
Christian König
576a08e008
drm/v3d/v3d_sched: fix scheduler callbacks return status
...
Looks like this was not correctly adjusted.
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
Fixes: a6a1f036c7 ("drm/scheduler: Job timeout handler returns status (v3)")
Link: https://patchwork.freedesktop.org/patch/msgid/20210201091159.177853-1-christian.koenig@amd.com
2021-02-02 11:10:14 +01:00
Thomas Zimmermann
8180cc3752
drm/gma500: Remove dependency on TTM
...
The gma500 driver does not use TTM.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210129095604.32423-6-tzimmermann@suse.de
2021-02-01 11:28:15 +01:00
Thomas Zimmermann
6455af65e9
drm/gma500: Remove CONFIG_X86 conditionals from source files
...
Remove the CONFIG_X86 conditionals from the source code. The driver
already depends on X86 in the Kconfig file. Also, no one has been
trying to build it on a non-x86 platform recently, or they would have
noticed that drm_ttm_cache_flush() doesn't exist.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210129095604.32423-5-tzimmermann@suse.de
2021-02-01 11:23:42 +01:00
Thomas Zimmermann
837f23bb4b
drm/gma500: Drop DRM_GMA3600 config option
...
With support for the MID-related chips removed, only support for
desktop chips is left in the driver. So just build the complete
driver if DRM_GMA500 has been selected. Anyone who wants to enable
the Poulsbo code would probably also want the Cedarview code.
[Patrik: Fixed conflict due to Oaktrail not being dropped]
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210129095604.32423-4-tzimmermann@suse.de
2021-02-01 11:14:20 +01:00
Thomas Zimmermann
b51035c200
drm/gma500: Remove Medfield support
...
Medfield is an outdated mobile platform with apparently no users left.
Remove it from gma500.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210129095604.32423-2-tzimmermann@suse.de
2021-02-01 10:32:28 +01:00
Joe Perches
e4abd7ad2b
dma-buf: Avoid comma separated statements
...
Use semicolons and braces.
Signed-off-by: Joe Perches <joe@perches.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Link: https://patchwork.freedesktop.org/patch/msgid/990bf6f33ccaf73ad56eb4bea8bd2c0db5e90a31.1598331148.git.joe@perches.com
Signed-off-by: Christian König <christian.koenig@amd.com >
2021-02-03 14:49:27 +01:00
Qinglang Miao
de499781c9
drm/lima: fix reference leak in lima_pm_busy
...
pm_runtime_get_sync will increment pm usage counter even it
failed. Forgetting to putting operation will result in a
reference leak here.
A new function pm_runtime_resume_and_get is introduced in
[0] to keep usage counter balanced. So We fix the reference
leak by replacing it with new function.
[0] commit dd8088d5a8 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter")
Fixes: 50de2e9ebb ("drm/lima: enable runtime pm")
Reported-by: Hulk Robot <hulkci@huawei.com >
Signed-off-by: Qinglang Miao <miaoqinglang@huawei.com >
Signed-off-by: Qiang Yu <yuq825@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20201127094438.121003-1-miaoqinglang@huawei.com
2021-01-30 11:25:36 +08:00
Luben Tuikov
a6a1f036c7
drm/scheduler: Job timeout handler returns status (v3)
...
This patch does not change current behaviour.
The driver's job timeout handler now returns
status indicating back to the DRM layer whether
the device (GPU) is no longer available, such as
after it's been unplugged, or whether all is
normal, i.e. current behaviour.
All drivers which make use of the
drm_sched_backend_ops' .timedout_job() callback
have been accordingly renamed and return the
would've-been default value of
DRM_GPU_SCHED_STAT_NOMINAL to restart the task's
timeout timer--this is the old behaviour, and is
preserved by this patch.
v2: Use enum as the status of a driver's job
timeout callback method.
v3: Return scheduler/device information, rather
than task information.
Cc: Alexander Deucher <Alexander.Deucher@amd.com >
Cc: Andrey Grodzovsky <Andrey.Grodzovsky@amd.com >
Cc: Christian König <christian.koenig@amd.com >
Cc: Daniel Vetter <daniel.vetter@ffwll.ch >
Cc: Lucas Stach <l.stach@pengutronix.de >
Cc: Russell King <linux+etnaviv@armlinux.org.uk >
Cc: Christian Gmeiner <christian.gmeiner@gmail.com >
Cc: Qiang Yu <yuq825@gmail.com >
Cc: Rob Herring <robh@kernel.org >
Cc: Tomeu Vizoso <tomeu.vizoso@collabora.com >
Cc: Steven Price <steven.price@arm.com >
Cc: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Cc: Eric Anholt <eric@anholt.net >
Reported-by: kernel test robot <lkp@intel.com >
Signed-off-by: Luben Tuikov <luben.tuikov@amd.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Acked-by: Christian König <christian.koenig@amd.com >
Acked-by: Steven Price <steven.price@arm.com >
Signed-off-by: Christian König <christian.koenig@amd.com >
Link: https://patchwork.freedesktop.org/patch/415095/
2021-01-29 11:30:22 +01:00
Dan Carpenter
f3ebd4e6b6
drm/vmwgfx/vmwgfx_drv: Fix an error path in vmw_setup_pci_resources()
...
The devm_memremap() function never returns NULL, it returns error
pointers so the test needs to be fixed. Also we need to call
pci_release_regions() to avoid a memory leak.
Fixes: be4f77ac68 ("drm/vmwgfx: Cleanup fifo mmio handling")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com >
Signed-off-by: Zack Rusin <zackr@vmware.com >
Link: https://patchwork.freedesktop.org/patch/msgid/YA6FMboLhnE3uSvb@mwanda
2021-01-28 11:08:20 -05:00
Maxime Ripard
e7cbc68a28
dt-binding: display: bcm2711-hdmi: Add CEC and hotplug interrupts
...
The CEC and hotplug interrupts were missing when that binding was
introduced, let's add them in now that we've figured out how it works.
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Acked-by: Dave Stevenson <dave.stevenson@raspberrypi.com >
Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl >
Tested-by: Hans Verkuil <hverkuil-cisco@xs4all.nl >
Link: https://patchwork.freedesktop.org/patch/msgid/20210111142309.193441-14-maxime@cerno.tech
2021-01-28 10:29:28 +01:00
Maxime Ripard
4d03ed7ad7
drm/vc4: hdmi: Don't register the CEC adapter if there's no interrupts
...
We introduced the BCM2711 support to the vc4 HDMI controller with 5.10,
but this was lacking any of the interrupts of the CEC controller so we
have to deal with the backward compatibility.
Do so by simply ignoring the CEC setup if the DT doesn't have the
interrupts property.
Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com >
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl >
Tested-by: Hans Verkuil <hverkuil-cisco@xs4all.nl >
Link: https://patchwork.freedesktop.org/patch/msgid/20210111142309.193441-13-maxime@cerno.tech
2021-01-28 10:29:20 +01:00
Dom Cobley
f551863af9
drm/vc4: hdmi: Remove cec_available flag
...
Now that our HDMI controller supports CEC for the BCM2711, let's remove
that flag.
Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com >
Signed-off-by: Dom Cobley <popcornmix@gmail.com >
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl >
Tested-by: Hans Verkuil <hverkuil-cisco@xs4all.nl >
Link: https://patchwork.freedesktop.org/patch/msgid/20210111142309.193441-12-maxime@cerno.tech
2021-01-28 10:29:15 +01:00
Maxime Ripard
ad6380e9aa
drm/vc4: hdmi: Support BCM2711 CEC interrupt setup
...
The HDMI controller found in the BCM2711 has an external interrupt
controller for the CEC and hotplug interrupt shared between the two
instances.
Let's add a variant flag to register a single interrupt handler and
deals with the interrupt handler setup, or two interrupt handlers
relying on an external irqchip.
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com >
Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl >
Tested-by: Hans Verkuil <hverkuil-cisco@xs4all.nl >
Link: https://patchwork.freedesktop.org/patch/msgid/20210111142309.193441-11-maxime@cerno.tech
2021-01-28 10:29:09 +01:00
Maxime Ripard
0c38490a03
drm/vc4: hdmi: Split the interrupt handlers
...
The BCM2711 has two different interrupt sources to transmit and receive
CEC messages, provided through an external interrupt chip shared between
the two HDMI interrupt controllers.
The rest of the CEC controller is identical though so we need to change
a bit the code organisation to share the code as much as possible, yet
still allowing to register independent handlers.
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com >
Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl >
Tested-by: Hans Verkuil <hverkuil-cisco@xs4all.nl >
Link: https://patchwork.freedesktop.org/patch/msgid/20210111142309.193441-10-maxime@cerno.tech
2021-01-28 10:28:58 +01:00