Biju Das
4ee48cc558
drm: of: Fix double-free bug
...
Fix double-free bug in the error path.
Fixes: 6529007522
("drm: of: Add drm_of_lvds_get_dual_link_pixel_order")
Reported-by: Pavel Machek <pavel@denx.de >
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Cc: stable@vger.kernel.org
Signed-off-by: Sam Ravnborg <sam@ravnborg.org >
Link: https://patchwork.freedesktop.org/patch/msgid/1595502654-40595-1-git-send-email-biju.das.jz@bp.renesas.com
2020-07-26 18:04:06 +02:00
Vinod Koul
23278bf54a
drm/bridge: Introduce LT9611 DSI to HDMI bridge
...
Lontium Lt9611 is a DSI to HDMI bridge which supports two DSI ports and
I2S port as an input and HDMI port as output
Co-developed-by: Bjorn Andersson <bjorn.andersson@linaro.org >
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org >
Co-developed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org >
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org >
Tested-by: John Stultz <john.stultz@linaro.org >
Signed-off-by: Vinod Koul <vkoul@kernel.org >
Signed-off-by: Sam Ravnborg <sam@ravnborg.org > # fix lt9611_bridge_mode_valid
Link: https://patchwork.freedesktop.org/patch/msgid/20200723163442.1280414-4-vkoul@kernel.org
2020-07-26 16:55:49 +02:00
Ville Syrjälä
7d98404c81
drm/omap: Use {} to zero initialize the mode
...
The first member of drm_display_mode is no longer a structure, but
the code is still using {{0}} to zero initialize it. Make that just
{} so it works regardless of what lies inside.
Cc: Dave Airlie <airlied@redhat.com >
Cc: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com >
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com >
Fixes: 42acb06b01
("drm: pahole struct drm_display_mode")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200724190718.23567-1-ville.syrjala@linux.intel.com
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch.ch >
2020-07-24 23:01:46 +03:00
Baolin Wang
f34ce7a701
iommu: Add gfp parameter to io_pgtable_ops->map()
...
Now the ARM page tables are always allocated by GFP_ATOMIC parameter,
but the iommu_ops->map() function has been added a gfp_t parameter by
commit 781ca2de89
("iommu: Add gfp parameter to iommu_ops::map"),
thus io_pgtable_ops->map() should use the gfp parameter passed from
iommu_ops->map() to allocate page pages, which can avoid wasting the
memory allocators atomic pools for some non-atomic contexts.
Signed-off-by: Baolin Wang <baolin.wang@linux.alibaba.com >
Acked-by: Will Deacon <will@kernel.org >
Link: https://lore.kernel.org/r/3093df4cb95497aaf713fca623ce4ecebb197c2e.1591930156.git.baolin.wang@linux.alibaba.com
Signed-off-by: Joerg Roedel <jroedel@suse.de >
2020-07-24 14:29:47 +02:00
Lyude Paul
0059a9081a
drm/nouveau/kms/nv50-: Fix CRC-related compile errors with debugfs disabled
...
Looks like I made the mistake of forgetting to check whether or not this
would build without CONFIG_DEBUG_FS, as the Kbuild bot reported some
issues building with tegra_defconfig:
In file included from drivers/gpu/drm/nouveau/nouveau_display.c:47:
./drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
‘nv50_head_crc_late_register’:
./drivers/gpu/drm/nouveau/dispnv50/crc.h:106:47: error: parameter name
omitted
106 | static inline int nv50_head_crc_late_register(struct nv50_head *) {}
| ^~~~~~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h:106:54: warning: no return
statement in function returning non-void [-Wreturn-type]
106 | static inline int nv50_head_crc_late_register(struct nv50_head *) {}
| ^~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
‘nv50_crc_handle_vblank’:
./drivers/gpu/drm/nouveau/dispnv50/crc.h:108:57: warning: ‘return’ with
a value, in function returning void [-Wreturn-type]
108 | nv50_crc_handle_vblank(struct nv50_head *head) { return 0; }
| ^
./drivers/gpu/drm/nouveau/dispnv50/crc.h:108:1: note: declared here
108 | nv50_crc_handle_vblank(struct nv50_head *head) { return 0; }
| ^~~~~~~~~~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
‘nv50_crc_atomic_check’:
./drivers/gpu/drm/nouveau/dispnv50/crc.h:111:23: error: parameter name
omitted
111 | nv50_crc_atomic_check(struct nv50_head *, struct nv50_head_atom *,
| ^~~~~~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h:111:43: error: parameter name
omitted
111 | nv50_crc_atomic_check(struct nv50_head *, struct nv50_head_atom *,
| ^~~~~~~~~~~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h:112:9: error: parameter name
omitted
112 | struct nv50_head_atom *) {}
| ^~~~~~~~~~~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h:112:16: warning: no return
statement in function returning non-void [-Wreturn-type]
112 | struct nv50_head_atom *) {}
| ^~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
‘nv50_crc_atomic_stop_reporting’:
./drivers/gpu/drm/nouveau/dispnv50/crc.h:114:32: error: parameter name
omitted
114 | nv50_crc_atomic_stop_reporting(struct drm_atomic_state *) {}
| ^~~~~~~~~~~~~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
‘nv50_crc_atomic_prepare_notifier_contexts’:
./drivers/gpu/drm/nouveau/dispnv50/crc.h:116:43: error: parameter name
omitted
116 | nv50_crc_atomic_prepare_notifier_contexts(struct drm_atomic_state *) {}
| ^~~~~~~~~~~~~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
‘nv50_crc_atomic_start_reporting’:
./drivers/gpu/drm/nouveau/dispnv50/crc.h:118:33: error: parameter name
omitted
118 | nv50_crc_atomic_start_reporting(struct drm_atomic_state *) {}
| ^~~~~~~~~~~~~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
‘nv50_crc_atomic_set’:
./drivers/gpu/drm/nouveau/dispnv50/crc.h:120:21: error: parameter name
omitted
120 | nv50_crc_atomic_set(struct nv50_head *, struct nv50_head_atom *) {}
| ^~~~~~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h:120:41: error: parameter name
omitted
120 | nv50_crc_atomic_set(struct nv50_head *, struct nv50_head_atom *) {}
| ^~~~~~~~~~~~~~~~~~~~~~~
./drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
‘nv50_crc_atomic_clr’:
./drivers/gpu/drm/nouveau/dispnv50/crc.h:122:21: error: parameter name
omitted
122 | nv50_crc_atomic_clr(struct nv50_head *) {}
| ^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/nouveau/nouveau_display.c: In function
‘nouveau_framebuffer_new’:
drivers/gpu/drm/nouveau/nouveau_display.c:286:15: warning: variable
‘width’ set but not used [-Wunused-but-set-variable]
286 | unsigned int width, height, i;
| ^~~~~
So, fix the inline function declarations we use in
drm/drivers/gpu/drm/nouveau/dispnv50/crc.h when CONFIG_DEBUG_FS is
enabled.
Fixes: 12885ecbfe
("drm/nouveau/kms/nvd9-: Add CRC support")
Reported-by: kernel test robot <lkp@intel.com >
Signed-off-by: Lyude Paul <lyude@redhat.com >
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2020-07-24 18:51:05 +10:00
Ben Skeggs
2bd43e0ad0
drm/nouveau/fence: use NVIDIA's headers for read()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:04 +10:00
Ben Skeggs
40f1171e7c
drm/nouveau/fence: use NVIDIA's headers for sync()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:04 +10:00
Ben Skeggs
60cdadace3
drm/nouveau/fence: use NVIDIA's headers for emit()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:04 +10:00
Ben Skeggs
c47fceca2e
drm/nouveau/svm: use NVIDIA's headers for migrate_clear()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:04 +10:00
Ben Skeggs
66c3bdd4e7
drm/nouveau/svm: use NVIDIA's headers for migrate_copy()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:04 +10:00
Ben Skeggs
6c75137274
drm/nouveau/bo: use NVIDIA's headers for move move()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:04 +10:00
Ben Skeggs
e767835a52
drm/nouveau/bo: use NVIDIA's headers for move init()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:04 +10:00
Ben Skeggs
a38f83d901
drm/nouveau/fbcon/nv50-: use NVIDIA's headers for fillrect()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:04 +10:00
Ben Skeggs
95b1469e5c
drm/nouveau/fbcon/nv50-: use NVIDIA's headers for copyarea()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:03 +10:00
Ben Skeggs
c7acff9894
drm/nouveau/fbcon/nv50-: use NVIDIA's headers for imageblit()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:03 +10:00
Ben Skeggs
5755b1eac0
drm/nouveau/fbcon/nv50-: use NVIDIA's headers for accel_init()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:03 +10:00
Ben Skeggs
1fad04ceef
drm/nouveau/kms/nv50-: use NVIDIA's headers for core crc_set_ctx()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:03 +10:00
Ben Skeggs
6162638e19
drm/nouveau/kms/nv50-: use NVIDIA's headers for core crc_set_src()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:03 +10:00
Ben Skeggs
c854bf9464
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_or()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:03 +10:00
Ben Skeggs
29ace860ec
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_procamp()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:03 +10:00
Ben Skeggs
f801efb127
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_dither()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:03 +10:00
Ben Skeggs
35cefc538b
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_ovly()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:02 +10:00
Ben Skeggs
2aa934ca04
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_base()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:02 +10:00
Ben Skeggs
916722fce5
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_curs_clr()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:02 +10:00
Ben Skeggs
ed0b86a90b
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_curs_set()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:02 +10:00
Ben Skeggs
dbb23f544e
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_core_clr()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:02 +10:00
Ben Skeggs
1302634f79
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_core_set()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:02 +10:00
Ben Skeggs
a66a096d78
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_olut_clr()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:02 +10:00
Ben Skeggs
a41ef363f5
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_olut_set()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:02 +10:00
Ben Skeggs
c4c751885e
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_mode()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:01 +10:00
Ben Skeggs
fb3939e232
drm/nouveau/kms/nv50-: use NVIDIA's headers for core head_view()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:01 +10:00
Ben Skeggs
ca31b0c01a
drm/nouveau/kms/nv50-: use NVIDIA's headers for core or_get_caps()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:01 +10:00
Ben Skeggs
344c2e5a47
drm/nouveau/kms/nv50-: use NVIDIA's headers for core or_ctrl()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:01 +10:00
Ben Skeggs
8e650ecbcd
drm/nouveau/kms/nv50-: use NVIDIA's headers for core wndw_owner()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:01 +10:00
Ben Skeggs
2806280a0c
drm/nouveau/kms/nv50-: use NVIDIA's headers for core update()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:01 +10:00
Ben Skeggs
4daef27cb8
drm/nouveau/kms/nv50-: use NVIDIA's headers for core ntfy_wait_done()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:01 +10:00
Ben Skeggs
d8b24526ef
drm/nouveau/kms/nv50-: use NVIDIA's headers for core caps_init()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:01 +10:00
Ben Skeggs
38a323b007
drm/nouveau/kms/nv50-: use NVIDIA's headers for core ntfy_init()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:00 +10:00
Ben Skeggs
b11d8ca151
drm/nouveau/kms/nv50-: use NVIDIA's headers for core init()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:00 +10:00
Ben Skeggs
9f7ffb49ee
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw update()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:00 +10:00
Ben Skeggs
fbc318bdbb
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw blend_set()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:00 +10:00
Ben Skeggs
5329dbd4a3
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw scale_set()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:00 +10:00
Ben Skeggs
1070832b1e
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw image_clr()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:00 +10:00
Ben Skeggs
f844eb485e
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw image_set()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:00 +10:00
Ben Skeggs
66f7b7bddf
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw xlut_clr()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:00 +10:00
Ben Skeggs
6833d2a0c7
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw xlut_set()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:51:00 +10:00
Ben Skeggs
2740edb3c6
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw csc_clr()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:50:59 +10:00
Ben Skeggs
84e1d06b06
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw csc_set()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:50:59 +10:00
Ben Skeggs
75bd8304e6
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw ntfy_wait_begun()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:50:59 +10:00
Ben Skeggs
9562e564ab
drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw ntfy_clr()
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
Reviewed-by: Lyude Paul <lyude@redhat.com >
2020-07-24 18:50:59 +10:00