Daniel Vetter [Fri, 11 Dec 2020 16:11:12 +0000 (17:11 +0100)]
drm/vkms: Unset preferred_depth
There's a confusion between the preferred_depth uapi and the generic
fbdev helpers. Former wants depth, latter wants bpp, and for XRGB8888
they don't match. Which hit me with vkms, which wants that.
All other drivers setting this and using the generic fbdev helpers use
16, where both numbers match, for RGB565.
Since fixing this is a bit involved (I think for atomic drivers we
should just compute this all internally from the format list of the
first primary plane) paper over the issue in vkms by using defaults
everywhere. Then userspace will pick XRGB8888, and fbdev helpers will
do the same, and we have what we want.
Reported-by: Simon Ser <contact@emersion.fr> Reviewed-by: Simon Ser <contact@emersion.fr> Cc: Simon Ser <contact@emersion.fr> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Cc: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Cc: Melissa Wen <melissa.srw@gmail.com> Cc: Haneen Mohammed <hamohammed.sa@gmail.com> Cc: Daniel Vetter <daniel@ffwll.ch> Link: https://patchwork.freedesktop.org/patch/msgid/20201211161113.3350061-1-daniel.vetter@ffwll.ch
Daniel Vetter [Fri, 4 Dec 2020 20:02:42 +0000 (21:02 +0100)]
dma-buf: Fix kerneldoc formatting
I wanted to look up something and noticed the hyperlink doesn't work.
While fixing that also noticed a trivial kerneldoc comment typo in the
same section, fix that too.
Thomas Zimmermann [Wed, 9 Dec 2020 14:25:21 +0000 (15:25 +0100)]
drm/ast: Only map cursor BOs during updates
The HW cursor's BO used to be mapped permanently into the kernel's
address space. GEM's vmap operation will be protected by locks, and
we don't want to lock the BO's for an indefinate period of time.
Change the cursor code to map the HW BOs only during updates. The
vmap operation in VRAM helpers is cheap, as a once estabished mapping
is being reused until the BO actually moves. As the HW cursor BOs are
permanently pinned, they never move at all.
Luben Tuikov [Wed, 9 Dec 2020 22:31:42 +0000 (17:31 -0500)]
drm/sched: Add missing structure comment
Add a missing structure comment for the recently
added @list member.
Cc: Stephen Rothwell <sfr@canb.auug.org.au> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Christian König <christian.koenig@amd.com> Fixes: 8935ff00e3b1 ("drm/scheduler: "node" --> "list"") Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Luben Tuikov <luben.tuikov@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Christian König <christian.koenig@amd.com> Link: https://patchwork.freedesktop.org/patch/406546/
Signed-off-by: Nirmoy Das <nirmoy.das@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Link: https://patchwork.freedesktop.org/patch/406382/ Signed-off-by: Christian König <christian.koenig@amd.com>
Sam Ravnborg [Sun, 6 Dec 2020 19:02:47 +0000 (20:02 +0100)]
video: fbdev: sis: Drop useless call to SiS_GetResInfo()
Coverity reported:
Useless call (USELESS_CALL) side_effect_free: Calling
SiS_GetResInfo(SiS_Pr, ModeNo, ModeIdIndex) is only useful for its
return value, which is ignored.
And this is correct - so drop the call.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Reported-by: Colin Ian King <colin.king@canonical.com>
Addresses-Coverity: ("Useless call") Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Colin Ian King <colin.king@canonical.com> Cc: Thomas Winischhofer <thomas@winischhofer.net> Link: https://patchwork.freedesktop.org/patch/msgid/20201206190247.1861316-14-sam@ravnborg.org
Sam Ravnborg [Sun, 6 Dec 2020 19:02:46 +0000 (20:02 +0100)]
video: fbdev: controlfb: Fix set but not used warnings
The controlfb driver has a number of dummy defines for IO operations.
They were introduced in commit a07a63b0e24d
("video: fbdev: controlfb: add COMPILE_TEST support").
The write variants did not use their value parameter in the
dummy versions, resulting in set but not used warnings.
Fix this by adding "(void)val" to silence the compiler.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Cc: "Gustavo A. R. Silva" <gustavoars@kernel.org> Cc: Michael Ellerman <mpe@ellerman.id.au> Link: https://patchwork.freedesktop.org/patch/msgid/20201206190247.1861316-13-sam@ravnborg.org
Sam Ravnborg [Sun, 6 Dec 2020 19:02:43 +0000 (20:02 +0100)]
video: fbdev: goldfishfb: Fix defined but not used warning
The goldfish_fb_acpi_match table is only used with ACPI enabled.
Ifdef it out unless it is needed.
This is a similar fix to what other acpi drivers do.
Sam Ravnborg [Sun, 6 Dec 2020 19:02:37 +0000 (20:02 +0100)]
video: fbdev: omapfb: Fix set but not used warnings in hdmi*_core
Fix a few W=1 warnings about unused assignments.
Drop the unused error code.
v2:
- Subject updated (Lee)
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Qilong Zhang <zhangqilong3@huawei.com> Cc: "Alexander A. Klimov" <grandmaster@al2klimov.de> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Lee Jones <lee.jones@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20201206190247.1861316-4-sam@ravnborg.org
Sam Ravnborg [Sun, 6 Dec 2020 20:52:11 +0000 (21:52 +0100)]
video: fbdev: core: Fix kernel-doc warnings in fbmon + fb_notify
Fix kernel-doc warnings reported when using W=1
v2:
- Improve subject (Lee)
v3:
- Add RETURNS documentation (Thomas)
v4:
- Use Return: not RETURNS (Randy)
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Randy Dunlap <rdunlap@infradead.org> Cc: Lee Jones <lee.jones@linaro.org> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Randy Dunlap <rdunlap@infradead.org> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: "Alexander A. Klimov" <grandmaster@al2klimov.de> Link: https://patchwork.freedesktop.org/patch/msgid/20201206205132.GA1869030@ravnborg.org
Paul Cercueil [Thu, 19 Nov 2020 15:55:59 +0000 (15:55 +0000)]
drm/ingenic: Add support for serial 8-bit delta-RGB panels
Add support for 24-bit panels that are connected through a 8-bit bus and
use delta-RGB, which means a RGB pixel ordering on odd lines, and a GBR
pixel ordering on even lines.
Paul Cercueil [Thu, 19 Nov 2020 15:55:58 +0000 (15:55 +0000)]
drm/ingenic: Properly compute timings when using a 3x8-bit panel
The LCD controller expects timing values in dot-clock ticks, which is 3x
the timing values in pixels when using a 3x8-bit display; but it will
count the display area size in pixels either way. Go figure.
Luben Tuikov [Fri, 4 Dec 2020 03:17:20 +0000 (22:17 -0500)]
drm/scheduler: Essentialize the job done callback
The job done callback is called from various
places, in two ways: in job done role, and
as a fence callback role.
Essentialize the callback to an atom
function to just complete the job,
and into a second function as a prototype
of fence callback which calls to complete
the job.
This is used in latter patches by the completion
code.
Signed-off-by: Luben Tuikov <luben.tuikov@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Link: https://patchwork.freedesktop.org/patch/405574/ 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> Signed-off-by: Christian König <christian.koenig@amd.com>
Luben Tuikov [Fri, 4 Dec 2020 03:17:19 +0000 (22:17 -0500)]
gpu/drm: ring_mirror_list --> pending_list
Rename "ring_mirror_list" to "pending_list",
to describe what something is, not what it does,
how it's used, or how the hardware implements it.
This also abstracts the actual hardware
implementation, i.e. how the low-level driver
communicates with the device it drives, ring, CAM,
etc., shouldn't be exposed to DRM.
The pending_list keeps jobs submitted, which are
out of our control. Usually this means they are
pending execution status in hardware, but the
latter definition is a more general (inclusive)
definition.
Signed-off-by: Luben Tuikov <luben.tuikov@amd.com> Acked-by: Christian König <christian.koenig@amd.com> Link: https://patchwork.freedesktop.org/patch/405573/ 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> Signed-off-by: Christian König <christian.koenig@amd.com>
Luben Tuikov [Fri, 4 Dec 2020 03:17:18 +0000 (22:17 -0500)]
drm/scheduler: "node" --> "list"
Rename "node" to "list" in struct drm_sched_job,
in order to make it consistent with what we see
being used throughout gpu_scheduler.h, for
instance in struct drm_sched_entity, as well as
the rest of DRM and the kernel.
Signed-off-by: Luben Tuikov <luben.tuikov@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Link: https://patchwork.freedesktop.org/patch/403515/ 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> Signed-off-by: Christian König <christian.koenig@amd.com>
Tomi Valkeinen [Mon, 30 Nov 2020 11:29:19 +0000 (13:29 +0200)]
drm/bridge: display-connector: add DP support
Add DP support to display-connector driver. The driver will support HPD
via a GPIO and DP PWR.
DP PWR will be enabled at probe, which is not optimal, but I'm not sure
what would be a good place to enable and disable DP PWR. Perhaps
attach/detach, but I don't know if enabling HW is something that attach
is supposed to do.
In any case, I don't think there's much difference in power consumption
between the version in this patch and enabling the regulator later: if
the driver probes, supposedly it will attach very soon afterwards, and
we need to enable the DP PWR as soon as possible.
Tomi Valkeinen [Mon, 30 Nov 2020 11:29:18 +0000 (13:29 +0200)]
dt-bindings: dp-connector: add binding for DisplayPort connector
Add binding for DisplayPort connector. A few notes:
* Similar to hdmi-connector, it has hpd-gpios as an optional property,
as the HPD could also be handled by, e.g., the DP bridge.
* dp-pwr-supply, which provides 3.3V on DP_PWR pin, is optional, as it
is not strictly required: standard DP cables do not even have the pin
connected.
* Connector type. Full size and mini connectors are identical except for
the connector size and form, so I believe there is no functional need
for this property. But similar to 'label' property, it might be used
to present information about the connector to the userspace.
* No eDP. There's really no "eDP connector", as it's always a custom
made connection between the DP and the DP panel, although the eDP spec
does offer a few suggested pin setups. So possibly there is no need for
edp-connector binding, but even if there is, I don't want to guess what
it could look like, and could it be part of the dp-connector binding.
* No DP++. I'm not familiar with DP++. DP++ might need an i2c bus added
to the bindings.
Neil Armstrong [Fri, 4 Dec 2020 08:19:49 +0000 (09:19 +0100)]
drm: panel: add Khadas TS050 panel driver
This add support for the Khadas TS050 1080x1920 5" LCD DSI panel designed to work
with the Khadas Edge-V, Captain, VIM3 and VIM3L Single Board Computers.
It provides a MIPI DSI interface to the host, a built-in LED backlight
and touch controller.
The init values was taken from the vendor source tree, comments were added to the
know values but most of the init table is undocumented.
This add the bindings for the Khadas TS050 1080x1920 5" LCD DSI panel designed to work
with the Khadas Edge-V, Captain, VIM3 and VIM3L Single Board Computers.
Dave Stevenson [Thu, 3 Dec 2020 13:25:42 +0000 (14:25 +0100)]
drm/vc4: dsi: Add configuration for BCM2711 DSI1
BCM2711 DSI1 doesn't have the issue with the ARM not being
able to write to the registers, therefore remove the DMA
workaround for that compatible string.
Maxime Ripard [Thu, 3 Dec 2020 13:25:39 +0000 (14:25 +0100)]
drm/vc4: dsi: Introduce a variant structure
Most of the differences between DSI0 and DSI1 are handled through the
ID. However, the BCM2711 DSI is going to introduce one more variable to
the mix and will break some expectations of the earlier, simpler, test.
Let's add a variant structure that will address most of the differences
between those three controllers.
Maxime Ripard [Thu, 3 Dec 2020 13:25:38 +0000 (14:25 +0100)]
drm/vc4: dsi: Use snprintf for the PHY clocks instead of an array
The DSI clocks setup function has been using an array to store the clock
name of either the DSI0 or DSI1 blocks, using the port ID to choose the
proper one.
Let's switch to an snprintf call to do the same thing and simplify the
array a bit.
Dave Stevenson [Thu, 3 Dec 2020 13:25:37 +0000 (14:25 +0100)]
drm/vc4: dsi: Correct DSI register definition
The DSI1_PHY_AFEC0_PD_DLANE1 and DSI1_PHY_AFEC0_PD_DLANE3 register
definitions were swapped, so trying to use more than a single data
lane failed as lane 1 would get powered down.
(In theory a 4 lane device would work as all lanes would remain
powered).
Linus Walleij [Sat, 5 Dec 2020 12:22:29 +0000 (13:22 +0100)]
drm/panel: s6e63m0: Fix init sequence again
The DSI version of the panel behaved instable and close
scrutiny of the vendor driver from the Samsung
GT-S8190 shows a different initialization sequence for
the DSI mode panel than the DPI mode panel.
Make the initialization depend on whether we are in
DSI or DPI mode and handle the differences.
After this the panel on the GT-I8190 becomes much more
stable.
Also spell out some more custom DCS commands found in
the vendor source code to cut down a bit on magic
where we can.
Linus Walleij [Sun, 15 Nov 2020 18:51:45 +0000 (19:51 +0100)]
dt-bindings: display: mcde: Convert to YAML schema
This moves the MCDE bindings over to using the YAML schema
to describe the ST-Ericsson MCDE display controller,
making use of the generic DSI controller schema.
In the process we correct an error in the old text bindings:
the clocks for the SDI host controllers were specified as
part of the main MCDE component while they should be
specified in the DSI host controller subnodes. This was
a leftover from an earlier iteration of the first patch
series adding the MCDE.
We also add the "port" node, we will use this when adding
LCD panels using the direct parallel interface DPI instead
of DSI.
Sam Ravnborg [Sat, 28 Nov 2020 22:41:13 +0000 (23:41 +0100)]
video: fbdev: cirrusfb: Fix kernel-doc and set but not used warnings
Fix warnings:
- drop kernel-doc for the two debug functions to avoid the warnings
- delete unused code
v2:
- Updated subject (Lee)
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Thomas Zimemrmann <tzimmermann@suse.de> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: "Gustavo A. R. Silva" <gustavoars@kernel.org> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Saeed Mirzamohammadi <saeed.mirzamohammadi@oracle.com> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Mike Rapoport <rppt@kernel.org> Cc: Lee Jones <lee.jones@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20201128224114.1033617-28-sam@ravnborg.org
Sam Ravnborg [Sat, 28 Nov 2020 22:41:12 +0000 (23:41 +0100)]
video: fbdev: uvesafb: Fix string related warnings
Two W=1 string related warnings.
- Using strncpy to copy string without null-termination generates a
warning. Use memcpy to copy only the relevant chars
- Fix a potential bug with a very long string, subtract one from the
length to make room for the termination null.
Arnd Bergmann [Sun, 29 Nov 2020 20:09:08 +0000 (21:09 +0100)]
drm/kmb: fix array bounds warning
gcc warns about an out-of-bounds access when the using nonzero
values for 'plane_id' on kmb->plane_status:
drivers/gpu/drm/kmb/kmb_plane.c: In function 'kmb_plane_atomic_disable':
drivers/gpu/drm/kmb/kmb_plane.c:128:20: warning: array subscript 3 is above array bounds of 'struct layer_status[1]' [-Warray-bounds]
128 | kmb->plane_status[plane_id].ctrl = LCD_CTRL_GL2_ENABLE;
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~
drivers/gpu/drm/kmb/kmb_plane.c:125:20: warning: array subscript 2 is above array bounds of 'struct layer_status[1]' [-Warray-bounds]
125 | kmb->plane_status[plane_id].ctrl = LCD_CTRL_GL1_ENABLE;
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~
drivers/gpu/drm/kmb/kmb_plane.c:122:20: warning: array subscript 1 is above array bounds of 'struct layer_status[1]' [-Warray-bounds]
122 | kmb->plane_status[plane_id].ctrl = LCD_CTRL_VL2_ENABLE;
Having the array truncated to one entry seems intentional, so add
a range check before indexing it to make it clearer what is going
on and shut up the warning.
I received the warning from the kernel test robot after a private
patch that turns on Warray-bounds unconditionally.
Fixes: 7f7b96a8a0a1 ("drm/kmb: Add support for KeemBay Display") Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Anitha Chrisanthus <anitha.chrisanthus@intel.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Link: https://patchwork.freedesktop.org/patch/msgid/20201129200927.1854104-1-arnd@kernel.org
Douglas Anderson [Tue, 1 Dec 2020 20:59:12 +0000 (12:59 -0800)]
drm: panel: Fully transition panel_desc kerneldoc to inline style
In commit 131f909ad55f ("drm: panel: simple: Fixup the struct
panel_desc kernel doc") I transitioned the more deeply nested
kerneldoc comments into the inline style. Apparently it is desirable
to continue the job and move _everything_ in this struct to inline.
Let's do it.
While doing this, we also add a short summary for the whole struct to
fix a warning when we run with extra warnings, AKA:
scripts/kernel-doc -v -rst drivers/gpu/drm/panel/panel-simple.c
The warning was:
drivers/gpu/drm/panel/panel-simple.c:42: warning: missing initial short description on line:
* struct panel_desc
Laurent Pinchart [Fri, 4 Dec 2020 09:29:32 +0000 (11:29 +0200)]
drm: Remove drmm_add_final_kfree() declaration from public headers
The drmm_add_final_kfree() function is declared in the
include/drm/drm_managed.h public header, but has become an internal API
not exposed to drivers. Drop it from drm_managed.h as it's already
declared in drm_internal.h.
Tian Tao [Fri, 4 Dec 2020 01:23:18 +0000 (09:23 +0800)]
drm/hisilicon: Delete the entire file hibmc_ttm.c
Delete the entire file hibmc_ttm.c. drmm_vram_helper_init() can be
called directly from hibmc_load(). hibmc_dumb_create() and
hibmc_mode_funcs can go to hibmc_drm_drv.c
Krzysztof Kozlowski [Mon, 16 Nov 2020 17:53:01 +0000 (18:53 +0100)]
drm/ingenic: depend on COMMON_CLK to fix compile tests
The Ingenic DRM uses Common Clock Framework thus it cannot be built on
platforms without it (e.g. compile test on MIPS with RALINK and
SOC_RT305X):
/usr/bin/mips-linux-gnu-ld: drivers/gpu/drm/ingenic/ingenic-drm-drv.o: in function `ingenic_drm_bind.isra.0':
ingenic-drm-drv.c:(.text+0x1600): undefined reference to `clk_get_parent'
/usr/bin/mips-linux-gnu-ld: ingenic-drm-drv.c:(.text+0x16b0): undefined reference to `clk_get_parent'
Dan Carpenter [Thu, 3 Dec 2020 08:40:48 +0000 (11:40 +0300)]
gma500: clean up error handling in init
The main problem with this error handling was that it didn't clean up if
i2c_add_numbered_adapter() failed. This code is pretty old, and doesn't
match with today's checkpatch.pl standards so I took the opportunity to
tidy it up a bit. I changed the NULL comparison, and removed the
WARNING message if kzalloc() fails and updated the label names.
Simon Ser [Mon, 30 Nov 2020 16:26:12 +0000 (16:26 +0000)]
drm: document that user-space should force-probe connectors
It seems like we can't have nice things, so let's just document the
disappointing behaviour instead.
The previous version assumed the kernel would perform the probing work
when appropriate, however this is not the case today. Update the
documentation to reflect reality.
v2:
- Improve commit message to explain why this change is made (Pekka)
- Keep the bit about flickering (Daniel)
- Explain when user-space should force-probe, and when it shouldn't (Daniel)
Gurchetan Singh [Tue, 1 Dec 2020 02:16:23 +0000 (18:16 -0800)]
drm/virtio: consider dma-fence context when signaling
This an incremental refactor towards multiple dma-fence contexts
in virtio-gpu. Since all fences are still allocated using
&virtio_gpu_fence_driver.context, nothing should break and every
processed fence will be signaled.
The overall idea is every 3D context can allocate a number of
dma-fence contexts. Each dma-fence context refers to it's own
timeline.
For example, consider the following case where virgl submits
commands to the GPU (fence ids 1, 3) and does a metadata query with
the CPU (fence id 5). In a different process, gfxstream submits
commands to the GPU (fence ids 2, 4).
With multiple fence contexts, we can wait for the metadata query
to finish without waiting for the virgl gpu to finish. virgl gpu
does not have to wait for gfxstream gpu. The fence id still is the
monotonically increasing sequence number, but it's only revelant to
the specific dma-fence context.
To fully enable this feature, we'll need to:
- have each 3d context allocate a number of fence contexts. Not
too hard with explicit context initialization on the horizon.
- have guest userspace specify fence context when performing
ioctls.
- tag each fence emitted to the host with the fence context
information. virtio_gpu_ctrl_hdr has padding + flags available,
so that should be easy.
This change goes in the direction specified above, by:
- looking up the virtgpu_fence given a fence_id
- signalling all prior fences in a given context
- signalling current fence
Gurchetan Singh [Tue, 1 Dec 2020 02:16:22 +0000 (18:16 -0800)]
drm/virtio: rework virtio_fence_signaled
virtio_gpu_fence_event_process sets the last_fence_id and
subsequently calls dma_fence_signal_locked(..).
dma_fence_signal_locked(..) sets DMA_FENCE_FLAG_SIGNALED_BIT,
which is actually checked before &dma_fence_ops.(*signaled) is
called.
The check for last_fence_id is therefore a bit redundant, and
it will not be sufficient to check the last_fence_id for multiple
synchronization timelines. Remove it.
Christian König [Tue, 1 Dec 2020 13:27:34 +0000 (14:27 +0100)]
drm/ttm: stop destroying pinned ghost object
Daniel added a warning for this, but we were abusing that behavior here.
Signed-off-by: Christian König <christian.koenig@amd.com> Fixes: 57fcd550eb15 ("drm/ttm: Warn on pinning without holding a reference") Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: https://patchwork.freedesktop.org/series/84456/
Daniel Vetter [Fri, 27 Nov 2020 16:35:28 +0000 (17:35 +0100)]
drm/nouveau: Drop mutex_lock_nested for atomic
Purely conjecture, but I think the original locking inversion with the
legacy page flip code between flipping and ttm's bo move function
shoudn't exist anymore with atomic: With atomic the bo pinning and
actual modeset commit is completely separated in the code patsh.
Sam Ravnborg [Sat, 28 Nov 2020 22:41:01 +0000 (23:41 +0100)]
video: fbdev: neofb: Fix set but not used warning for CursorMem
Fix W=1 warnings by removing unused code
v2:
- Updated subject (Lee)
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Evgeny Novikov <novikov@ispras.ru> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Mike Rapoport <rppt@kernel.org> Cc: Lee Jones <lee.jones@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20201128224114.1033617-16-sam@ravnborg.org
Sam Ravnborg [Sat, 28 Nov 2020 22:41:05 +0000 (23:41 +0100)]
video: fbdev: sstfb: Updated logging to fix set but not used warnings
Fix set but not used warnings by introducing no_printk variants
for the internal logging system for this driver.
Fix a new warning that popped up now that logging was checked for
correct printf format strings.
A more invasive fix had been to replace all the internal logging with
standard logging primitives - thats for another day.
v2:
- Update subject (Lee)
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Cc: Alex Dewar <alex.dewar90@gmail.com> Cc: Jani Nikula <jani.nikula@intel.com> Cc: linux-fbdev@vger.kernel.org Cc: Lee Jones <lee.jones@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20201128224114.1033617-20-sam@ravnborg.org
Sam Ravnborg [Sat, 28 Nov 2020 22:41:04 +0000 (23:41 +0100)]
video: fbdev: mx3fb: Fix kernel-doc, set but not used and string warnings
Fix W=1 warnings:
- Fix kernel-doc
- Drop unused code/variables
- Use memcpy to copy a string without zero-termination
strncpy() generates a warning
v2:
- Updated subject (Lee)
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Xiaofei Tan <tanxiaofei@huawei.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Lee Jones <lee.jones@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20201128224114.1033617-19-sam@ravnborg.org
Sam Ravnborg [Sat, 28 Nov 2020 22:41:03 +0000 (23:41 +0100)]
video: fbdev: tgafb: Fix kernel-doc and set but not used warnings
Fix W=1 warnings:
- Fix kernel-doc
- Drop unused code
v2:
- Updated subject (Lee)
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Joe Perches <joe@perches.com> Cc: Lee Jones <lee.jones@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20201128224114.1033617-18-sam@ravnborg.org
Sam Ravnborg [Sat, 28 Nov 2020 22:41:00 +0000 (23:41 +0100)]
video: fbdev: pm2fb: Fix kernel-doc warnings
Fixed a few kernel-doc issues to fix the warnings.
v2:
- Updated subject (Lee)
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: "Gustavo A. R. Silva" <gustavoars@kernel.org> Cc: Randy Dunlap <rdunlap@infradead.org> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Lee Jones <lee.jones@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20201128224114.1033617-15-sam@ravnborg.org
Sam Ravnborg [Sat, 28 Nov 2020 22:40:58 +0000 (23:40 +0100)]
video: fbdev: tdfx: Fix set but not used warning in att_outb()
The tmp variable was assigned but the result was never used,
so delete the tmp variable.
v2:
- Update subject (Lee)
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: "Gustavo A. R. Silva" <gustavoars@kernel.org> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Lee Jones <lee.jones@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20201128224114.1033617-13-sam@ravnborg.org
Sam Ravnborg [Sat, 28 Nov 2020 22:40:55 +0000 (23:40 +0100)]
video: fbdev: sis: Fix set but not used warnings in init.c
Fix "set but not used" warnings by removing the code the assign the
variables and the definition of the variables.
A register read is kept as it may have unknown side-effects.
This removes a lot of unused code - which is always a good thing to do.
Sam Ravnborg [Sat, 28 Nov 2020 22:40:53 +0000 (23:40 +0100)]
video: fbdev: sis: Fix defined but not used warnings
init.h defines static symbols, so it should only be included
once. Drop the include from sis.h as it is not needed.
This fixes a lot of warnings seen with a W=1 build.
Sam Ravnborg [Sat, 28 Nov 2020 22:40:52 +0000 (23:40 +0100)]
video: fbdev: aty: Fix set but not used warnings in mach64_ct
Fix W=1 warnings about variables assigned but never used.
- One variable is only used when CONFIG_FB_ATY_GENERIC_LCD is defined
Fix so variable is only defined with CONFIG_FB_ATY_GENERIC_LCD
- Several variables was only assigned by a call to aty_ld_le32().
Drop the variables but keep the call to aty_ld_le32() as it may
have unexpected side-effects.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Reported-by: kernel test robot <lkp@intel.com> # m68k build fix Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Lee Jones <lee.jones@linaro.org> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Joe Perches <joe@perches.com> Cc: Vaibhav Gupta <vaibhavgupta40@gmail.com> Cc: Jason Yan <yanaijie@huawei.com> Cc: Randy Dunlap <rdunlap@infradead.org> Cc: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20201128224114.1033617-6-sam@ravnborg.org
Thomas Zimmermann [Mon, 23 Nov 2020 11:56:46 +0000 (12:56 +0100)]
drm/cma-helper: Implement mmap as GEM CMA object functions
The new GEM object function drm_gem_cma_mmap() sets the VMA flags
and offset as in the old implementation and immediately maps in the
buffer's memory pages.
Changing CMA helpers to use the GEM object function allows for the
removal of the special implementations for mmap and gem_prime_mmap
callbacks. The regular functions drm_gem_mmap() and drm_gem_prime_mmap()
are now used.
Douglas Anderson [Tue, 10 Nov 2020 01:00:58 +0000 (17:00 -0800)]
drm: panel: simple: Add BOE NV110WTM-N61
Add support for the BOE NV110WTM-N61 panel. The EDID lists two modes
(one for 60 Hz refresh rate and one for 40 Hz), so we'll list both of
them here.
Note that the panel datasheet requires 80 ms between HPD asserting and
the backlight power being turned on. We'll use the new timing
constraints structure to do this cleanly. This assumes that the
backlight will be enabled _after_ the panel enable finishes. This is
how it works today and seems a sane assumption.