Zack Rusin
e0029da927
drm/vmwgfx: Rename dummy to is_iomem
...
Rename dummy to is_iomem because that's what it is even if we're not
activelly using it. Makes the code easier to read.
Signed-off-by: Zack Rusin <zackr@vmware.com >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Martin Krastev <krastevm@vmware.com >
Reviewed-by: Maaz Mombasawala <mombasawalam@vmware.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230131033542.953249-7-zack@kde.org
2023-02-13 22:37:55 -05:00
Zack Rusin
cb8097a45d
drm/vmwgfx: Cleanup the vmw bo usage in the cursor paths
...
Base mapped count is useless because the ttm unmap functions handle
null maps just fine so completely remove all the code related to it.
Signed-off-by: Zack Rusin <zackr@vmware.com >
Reviewed-by: Martin Krastev <krastevm@vmware.com >
Reviewed-by: Maaz Mombasawala <mombasawalam@vmware.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230131033542.953249-6-zack@kde.org
2023-02-13 22:37:55 -05:00
Zack Rusin
6703e28f97
drm/vmwgfx: Simplify fb pinning
...
Only the legacy display unit requires pinning of the fb memory in vram.
Both the screen objects and screen targets can present from any buffer.
That makes the pinning abstraction pointless. Simplify all of the code
and move it to the legacy display unit, the only place that needs it.
Signed-off-by: Zack Rusin <zackr@vmware.com >
Reviewed-by: Martin Krastev <krastevm@vmware.com >
Reviewed-by: Maaz Mombasawala <mombasawalam@vmware.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230131033542.953249-5-zack@kde.org
2023-02-13 22:37:55 -05:00
Zack Rusin
09881d2940
drm/vmwgfx: Rename vmw_buffer_object to vmw_bo
...
The rest of the drivers which are using ttm have mostly standardized on
driver_prefix_bo as the name for subclasses of the TTM buffer object.
Make vmwgfx match the rest of the drivers and follow the same naming
semantics.
This is especially clear given that the name of the file in which the
object was defined is vmw_bo.c.
Signed-off-by: Zack Rusin <zackr@vmware.com >
Reviewed-by: Martin Krastev <krastevm@vmware.com >
Reviewed-by: Maaz Mombasawala <mombasawalam@vmware.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230131033542.953249-4-zack@kde.org
2023-02-13 22:37:08 -05:00
Zack Rusin
6b2e8aa451
drm/vmwgfx: Remove the duplicate bo_free function
...
Remove the explicit bo_free parameter which was switching between
vmw_bo_bo_free and vmw_gem_destroy which had exactly the same
implementation.
It makes no sense to keep parameter which is always the same, remove it
and all code referencing it. Instead use the vmw_bo_bo_free directly.
Signed-off-by: Zack Rusin <zackr@vmware.com >
Reviewed-by: Martin Krastev <krastevm@vmware.com >
Reviewed-by: Maaz Mombasawala <mombasawalam@vmware.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230131033542.953249-3-zack@kde.org
2023-02-13 21:34:13 -05:00
Zack Rusin
9da2957f9f
drm/vmwgfx: Use the common gem mmap instead of the custom code
...
Before vmwgfx supported gem it needed to implement the entire mmap logic
explicitly. With GEM support that's not needed and the generic code
can be used by simply setting the vm_ops to vmwgfx specific ones on the
gem object itself.
Removes a lot of code from vmwgfx without any functional difference.
Signed-off-by: Zack Rusin <zackr@vmware.com >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Martin Krastev <krastevm@vmware.com >
Reviewed-by: Maaz Mombasawala <mombasawalam@vmware.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230131033542.953249-2-zack@kde.org
2023-02-13 21:34:13 -05:00
Asahi Lina
aa8c85affe
drm/shmem-helper: Fix locking for drm_gem_shmem_get_pages_sgt()
...
Other functions touching shmem->sgt take the pages lock, so do that here
too. drm_gem_shmem_get_pages() & co take the same lock, so move to the
_locked() variants to avoid recursive locking.
Discovered while auditing locking to write the Rust abstractions.
Fixes: 2194a63a81 ("drm: Add library for shmem backed GEM objects")
Fixes: 4fa3d66f13 ("drm/shmem: Do dma_unmap_sg before purging pages")
Signed-off-by: Asahi Lina <lina@asahilina.net >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230205125124.2260-1-lina@asahilina.net
2023-02-10 13:13:44 +01:00
Maíra Canal
7c18189b14
drm/vgem: add missing mutex_destroy
...
vgem_fence_open() instantiates a mutex for a particular fence
instance, but never destroys it by calling mutex_destroy() in
vgem_fence_close().
So, add the missing mutex_destroy() to guarantee proper resource
destruction.
Fixes: 4077798484 ("drm/vgem: Attach sw fences to exported vGEM dma-buf (ioctl)")
Signed-off-by: Maíra Canal <mcanal@igalia.com >
Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com >
Signed-off-by: Maíra Canal <mairacanal@riseup.net >
Link: https://patchwork.freedesktop.org/patch/msgid/20230202125517.427976-1-mcanal@igalia.com
2023-02-10 08:21:04 -03:00
Christian König
96a7b60f6d
drm: remove dumb_destroy callback
...
Not used by any driver any more.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Tested-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230126102814.8722-2-christian.koenig@amd.com
2023-02-10 12:19:27 +01:00
Somalapuram Amaranath
aed01a6804
drm/amdgpu: Remove TTM resource->start visible VRAM condition v2
...
Use amdgpu_bo_in_cpu_visible_vram() instead.
v2 (chk): fix test inversion
Signed-off-by: Somalapuram Amaranath <Amaranath.Somalapuram@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/msgid/20230208090106.9659-2-Amaranath.Somalapuram@amd.com
2023-02-09 15:10:36 +01:00
John Keeping
e3ea1806e4
drm/bridge: panel: Set orientation on panel_bridge connector
...
Commit 15b9ca1641 ("drm: Config orientation property if panel provides
it") added a helper to set the panel orientation early but only
connected this for drm_bridge_connector, which constructs a panel bridge
with DRM_BRIDGE_ATTACH_NO_CONNECTOR and creates the connector itself.
When the DRM_BRIDGE_ATTACH_NO_CONNECTOR flag is not specified and the
panel_bridge creates its own connector the orientation is not set unless
the panel does it in .get_modes which is too late and leads to a warning
splat from __drm_mode_object_add() because the device is already
registered.
Call the necessary function to set add the orientation property when the
connector is created so that it is available before the device is
registered.
Signed-off-by: John Keeping <john@metanate.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20230120114313.2087015-1-john@metanate.com
2023-02-06 16:50:57 -08:00
Christian König
f87c1f0b7b
drm/ttm: prevent moving of pinned BOs
...
We have checks for this in the individual drivers move callback, but
it's probably better to generally forbid that on a higher level.
Also stops exporting ttm_resource_compat() since that's not necessary
any more after removing the extra checks in vmwgfx.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Matthew Auld <matthew.auld@intel.com >
Signed-off-by: Matthew Auld <matthew.auld@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230130120636.63765-6-matthew.auld@intel.com
2023-02-06 12:10:17 +01:00
Christian König
c7ea16f6a4
drm/ttm: stop allocating a dummy resource for pipelined gutting
...
That should not be necessary any more when drivers should at least be
able to handle a move without a resource.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Matthew Auld <matthew.auld@intel.com >
Signed-off-by: Matthew Auld <matthew.auld@intel.com >
Acked-by: Nirmoy Das <nirmoy.das@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230130120636.63765-5-matthew.auld@intel.com
2023-02-06 12:10:17 +01:00
Christian König
1802537820
drm/ttm: stop allocating dummy resources during BO creation
...
That should not be necessary any more when drivers should at least be
able to handle the move without a resource.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Matthew Auld <matthew.auld@intel.com >
Signed-off-by: Matthew Auld <matthew.auld@intel.com >
Acked-by: Nirmoy Das <nirmoy.das@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230130120636.63765-4-matthew.auld@intel.com
2023-02-06 12:10:17 +01:00
Matthew Auld
24243212c5
drm/ttm: clear the ttm_tt when bo->resource is NULL
...
In the next few patches, when initially creating a ttm BO, the
bo->resource is NULL, and the driver is then expected to handle the
initial dummy move. However, if this is created as a system resource
the first ttm_tt we create will always have the clear value set to
false. Previously the initial ttm_tt would be created in
ttm_bo_validate() with the clear parameter always set to true.
Signed-off-by: Matthew Auld <matthew.auld@intel.com >
Reviewed-by: Christian König <ckoenig.leichtzumerken@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230130101230.25347-3-matthew.auld@intel.com
Acked-by: Nirmoy Das <nirmoy.das@intel.com >
Signed-off-by: Christian König <christian.koenig@amd.com >
2023-02-06 12:10:13 +01:00
Matthew Auld
58c7ee0676
drm/i915/ttm: audit remaining bo->resource
...
In the near future TTM will have NULL bo->resource when the object is
initially created, plus after calling into pipeline-gutting. Try to
handle the remaining cases. In practice NULL bo->resource should be
taken to mean swapped-out or purged object.
v2 (Andrzej):
- Rather make i915_ttm_cpu_maps_iomem() return false with NULL
resource.
References: 516198d317 ("drm/i915: audit bo->resource usage v3")
Signed-off-by: Matthew Auld <matthew.auld@intel.com >
Cc: Nirmoy Das <nirmoy.das@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230130101230.25347-2-matthew.auld@intel.com
Reviewed-by: Nirmoy Das <nirmoy.das@intel.com >
Reviewed-by: Andrzej Hajda <andrzej.hajda@intel.com >
Acked-by: Christian König <ckoenig.leichtzumerken@gmail.com >
Signed-off-by: Christian König <christian.koenig@amd.com >
2023-02-06 12:10:07 +01:00
Matthew Auld
fde789e833
drm/i915/ttm: fix sparse warning
...
Sparse complains with:
drivers/gpu/drm/i915/gem/i915_gem_ttm.c:1066:21: sparse:
expected restricted vm_fault_t [assigned] [usertype] ret
drivers/gpu/drm/i915/gem/i915_gem_ttm.c:1066:21: sparse: got int
Fixes: 516198d317 ("drm/i915: audit bo->resource usage v3")
Reported-by: kernel test robot <lkp@intel.com >
Signed-off-by: Matthew Auld <matthew.auld@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230130101230.25347-1-matthew.auld@intel.com
Reviewed-by: Nirmoy Das <nirmoy.das@intel.com >
Acked-by: Christian König <ckoenig.leichtzumerken@gmail.com >
Signed-off-by: Christian König <christian.koenig@amd.com >
2023-02-06 12:09:58 +01:00
Stanislaw Gruszka
ec6ec9c6ca
accel/ivpu: Fix old dma_buf api usage
...
Update according to new dma-buf locking scheme.
Remove redundant WARN_ON()'s, dma_buf functions internally
have the same warnings already.
Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com >
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230202092114.2637452-5-stanislaw.gruszka@linux.intel.com
2023-02-06 09:02:27 +01:00
Stanislaw Gruszka
07ccb63a5c
accel/ivpu: Set dma max_segment_size
...
Avoid below spurious warning:
[ 264.844029] DMA-API: intel_vpu 0000:00:0b.0: mapping sg segment longer than device claims to support [len=143360] [max=65536]
[ 264.844038] WARNING: CPU: 0 PID: 1254 at kernel/dma/debug.c:1160 debug_dma_map_sg+0x6ca/0xb70
Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com >
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230202092114.2637452-4-stanislaw.gruszka@linux.intel.com
2023-02-06 09:02:11 +01:00
Andrzej Kacprowski
38257f514d
accel/ivpu: Send VPU_JSM_MSG_CONTEXT_DELETE when deleting context
...
The VPU_JSM_MSG_CONTEXT_DELETE will remove any resources associated
with the SSID, that included any blobs create by the user space
application.
The command can also remove doorbell registrations, but since this
does not work in HW scheduling case, we do not depend on this
capability and unregister the doorbells explicitly.
Signed-off-by: Andrzej Kacprowski <andrzej.kacprowski@linux.intel.com >
Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com >
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230202092114.2637452-3-stanislaw.gruszka@linux.intel.com
2023-02-06 09:01:56 +01:00
Andrzej Kacprowski
4ea1e504db
accel/ivpu: Fix FW API data alignment issues
...
FW API structures have been updated to fix misaligned
structure members.
Also changed JSM message header format to account for
future improvements.
Added explicit check for minimum supported JSM API version.
Signed-off-by: Andrzej Kacprowski <andrzej.kacprowski@linux.intel.com >
Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com >
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230202092114.2637452-2-stanislaw.gruszka@linux.intel.com
2023-02-06 09:01:20 +01:00
Rob Clark
8ee3b0e85f
drm/rockchip: Drop unbalanced obj unref
...
In the error path, rockchip_drm_gem_object_mmap() is dropping an obj
reference that it doesn't own.
Fixes: 41315b793e ("drm/rockchip: use drm_gem_mmap helpers")
Signed-off-by: Rob Clark <robdclark@chromium.org >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230119231734.2884543-1-robdclark@gmail.com
2023-02-05 15:32:35 +01:00
John Keeping
0020d4cfa3
drm/rockchip: avoid duplicate mappings for IOMMU devices
...
If a buffer is allocated with alloc_kmap, then it is vmap'd on creation
and there is no reason to map it again in rockchip_gem_prime_vmap() when
the existing mapping can be used.
Signed-off-by: John Keeping <john@metanate.com >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20221110172415.2853420-1-john@metanate.com
2023-02-05 15:27:54 +01:00
Brian Norris
582212ee16
drm/rockchip: vop: Quiet always-warning AFBC log
...
The downstream code from which this was derived didn't ever run through
this 'switch' block with non-AFBC formats, but the upstream code does --
we use this function to probe whether a given format is supported.
Demote the warning to eliminate this sort of warning seen on every
boot:
[drm] unsupported AFBC format[3231564e]
And make it warn more than once, because if we *actually* care to see
what formats we're probing/rejecting and for what reasons, we probably
care about more than just the first message.
Drop the comment, because one of the two *is* commonly reachable.
And lastly, drop the unreachable return; we'd do better to let the
compiler complain if we start hitting this unexpectedly.
Signed-off-by: Brian Norris <briannorris@chromium.org >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20221031101557.1.Ic1569d394173c1c3016142fee4bb87a09753db94@changeid
2023-02-05 15:25:49 +01:00
Michael Riesch
c66c6d7c47
drm/rockchip: vop2: add support for the rgb output block
...
The Rockchip VOP2 features an internal RGB output block, which can be
attached any video port of the VOP2. Add support for this output block.
Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net >
Reviewed-by: Sascha Hauer <s.hauer@pengutronix.de >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230124054706.3921383-6-michael.riesch@wolfvision.net
2023-02-05 15:21:39 +01:00
Michael Riesch
cddddc066b
drm/rockchip: vop2: use symmetric function pair vop2_{create,destroy}_crtcs
...
Let the function name vop2_create_crtcs reflect that the function creates
multiple CRTCS. Also, use a symmetric function pair to create and destroy
the CRTCs and the corresponding planes.
Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net >
Reviewed-by: Sascha Hauer <s.hauer@pengutronix.de >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230124054706.3921383-5-michael.riesch@wolfvision.net
2023-02-05 15:21:38 +01:00
Michael Riesch
03db8f25cf
drm/rockchip: rgb: add video_port parameter to init function
...
The VOP2 driver has more than one video port, hence the hard-coded
port id will not work anymore. Add an extra parameter for the video
port id to the rockchip_rgb_init function.
Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net >
Reviewed-by: Sascha Hauer <s.hauer@pengutronix.de >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230124054706.3921383-4-michael.riesch@wolfvision.net
2023-02-05 15:21:36 +01:00
Michael Riesch
f8a852f1f8
drm/rockchip: rgb: embed drm_encoder into rockchip_encoder
...
Commit 540b8f271e ("drm/rockchip: Embed drm_encoder into
rockchip_decoder") provides the means to pass the endpoint ID to the
VOP2 driver, which sets the interface MUX accordingly. However, this
step has not yet been carried out for the RGB output block. Embed the
drm_encoder structure into the rockchip_encoder structure and set the
endpoint ID correctly.
Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net >
Reviewed-by: Sascha Hauer <s.hauer@pengutronix.de >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230124054706.3921383-3-michael.riesch@wolfvision.net
2023-02-05 15:21:35 +01:00
Michael Riesch
368419a2d4
drm/rockchip: vop2: initialize possible_crtcs properly
...
The variable possible_crtcs is only initialized for primary and
overlay planes. Since the VOP2 driver only supports these plane
types at the moment, the current code is safe. However, in order
to provide a future-proof solution, fix the initialization of
the variable.
Reported-by: kernel test robot <lkp@intel.com >
Reported-by: Dan Carpenter <error27@gmail.com >
Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net >
Reviewed-by: Sascha Hauer <s.hauer@pengutronix.de >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230124054706.3921383-2-michael.riesch@wolfvision.net
2023-02-05 15:21:34 +01:00
Johan Jonker
9bb35d4c32
dt-bindings: display: rockchip: convert analogix_dp-rockchip.txt to yaml
...
Convert analogix_dp-rockchip.txt to yaml.
Changed:
Add power-domains property
File name
Signed-off-by: Johan Jonker <jbx6244@gmail.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/88a5a9e3-9bc8-5966-22ec-5bdb1fa7a5b1@gmail.com
2023-02-05 15:05:55 +01:00
Johan Jonker
440112adad
dt-bindings: display: bridge: convert analogix_dp.txt to yaml
...
Convert analogix_dp.txt to yaml for use as common document.
Changed:
Relexed requirements
Signed-off-by: Johan Jonker <jbx6244@gmail.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/489e7bd3-fa26-885f-4104-8b0b29aa4f2b@gmail.com
2023-02-05 15:05:53 +01:00
Johan Jonker
0dac2102cf
dt-bindings: display: rockchip: convert dw_mipi_dsi_rockchip.txt to yaml
...
Convert dw_mipi_dsi_rockchip.txt to yaml.
Changed:
file name
requirements
Signed-off-by: Johan Jonker <jbx6244@gmail.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/d6dc8453-4807-0a5d-15bf-6dcf80dcd0fe@gmail.com
2023-02-05 15:05:52 +01:00
Johan Jonker
a90fa0adbe
dt-bindings: display: bridge: snps,dw-mipi-dsi: fix clock properties
...
Fix clock properties from the common snps,dw-mipi-dsi.yaml file,
as they don't match with what is used on the SoCs.
Signed-off-by: Johan Jonker <jbx6244@gmail.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/78b4548e-dfe1-d0c6-f96c-5d40f28f8b2e@gmail.com
2023-02-05 15:05:51 +01:00
Johan Jonker
a1b7455dc4
dt-bindings: display: dsi-controller: move clock-master property
...
The clock-master property is used for the controller and not in the panel,
so move it there.
Signed-off-by: Johan Jonker <jbx6244@gmail.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/1c3b18ad-350f-e862-de98-a775e11e132c@gmail.com
2023-02-05 15:05:50 +01:00
Johan Jonker
cbfc73a3fe
dt-bindings: soc: rockchip: grf: add rockchip,lvds.yaml
...
Add new converted rockchip,lvds.yaml to grf.yaml file.
Prepare for more SoCs with lvds output.
Signed-off-by: Johan Jonker <jbx6244@gmail.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/ff3644da-e5ae-f795-c7d9-454b8c8bdfe8@gmail.com
2023-02-05 15:05:49 +01:00
Johan Jonker
d567ca6ed9
dt-bindings: display: rockchip: convert rockchip-lvds.txt to YAML
...
Convert rockchip-lvds.txt to YAML.
Changed:
Add power-domains property.
Requirements between PX30 and RK3288
Signed-off-by: Johan Jonker <jbx6244@gmail.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Signed-off-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/67771143-fd83-383d-41b2-68e8707134e8@gmail.com
2023-02-05 15:05:47 +01:00
Deepak R Varma
8094d717c7
drm/arm/malidp: use sysfs_emit in show function callback
...
According to Documentation/filesystems/sysfs.rst, the show() callback
function of kobject attributes should strictly use sysfs_emit() instead
of sprintf() family functions.
Issue identified using the device_attr_show.cocci Coccinelle script.
Signed-off-by: Deepak R Varma <drv@mailo.com >
Signed-off-by: Liviu Dudau <liviu.dudau@arm.com >
Link: https://patchwork.freedesktop.org/patch/msgid/Y9Q5Tt8c9WBDxeyV@ubun2204.myguest.virtualbox.org
2023-02-03 13:05:33 +00:00
Maíra Canal
4fae160fde
drm/format-helper: Use KUNIT_EXPECT_MEMEQ macro
...
Commit b8a926bea8 ("kunit: Introduce KUNIT_EXPECT_MEMEQ and
KUNIT_EXPECT_MEMNEQ macros") introduced a new macro to compare blocks of
memory and, if the test fails, print the result in a human-friendly
format. Therefore, use KUNIT_EXPECT_MEMEQ to compare memory blocks in
replacement of the KUNIT_EXPECT_EQ macro.
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: David Gow <davidgow@google.com >
Signed-off-by: Maíra Canal <mairacanal@riseup.net >
Link: https://patchwork.freedesktop.org/patch/msgid/20230130125554.363481-1-mairacanal@riseup.net
2023-02-02 07:40:15 -03:00
Stephen Boyd
c913cd5489
drm/panel: boe-tv101wum-nl6: Ensure DSI writes succeed during disable
...
The unprepare sequence has started to fail after moving to panel bridge
code in the msm drm driver (commit 007ac0262b ("drm/msm/dsi: switch to
DRM_PANEL_BRIDGE")). You'll see messages like this in the kernel logs:
panel-boe-tv101wum-nl6 ae94000.dsi.0: failed to set panel off: -22
This is because boe_panel_enter_sleep_mode() needs an operating DSI link
to set the panel into sleep mode. Performing those writes in the
unprepare phase of bridge ops is too late, because the link has already
been torn down by the DSI controller in post_disable, i.e. the PHY has
been disabled, etc. See dsi_mgr_bridge_post_disable() for more details
on the DSI .
Split the unprepare function into a disable part and an unprepare part.
For now, just the DSI writes to enter sleep mode are put in the disable
function. This fixes the panel off routine and keeps the panel happy.
My Wormdingler has an integrated touchscreen that stops responding to
touch if the panel is only half disabled too. This patch fixes it. And
finally, this saves power when the screen is off because without this
fix the regulators for the panel are left enabled when nothing is being
displayed on the screen.
Fixes: 007ac0262b ("drm/msm/dsi: switch to DRM_PANEL_BRIDGE")
Fixes: a869b9db7a ("drm/panel: support for boe tv101wum-nl6 wuxga dsi video mode panel")
Cc: yangcong <yangcong5@huaqin.corp-partner.google.com >
Cc: Douglas Anderson <dianders@chromium.org >
Cc: Jitao Shi <jitao.shi@mediatek.com >
Cc: Sam Ravnborg <sam@ravnborg.org >
Cc: Rob Clark <robdclark@chromium.org >
Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Stephen Boyd <swboyd@chromium.org >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20230106030108.2542081-1-swboyd@chromium.org
2023-01-31 13:23:38 -08:00
Arnd Bergmann
918b8f7eee
accel/ivpu: avoid duplicate assignment
...
With extra warnings enabled, gcc warns about two assignments
of the same .mmap callback:
In file included from drivers/accel/ivpu/ivpu_drv.c:10:
include/drm/drm_accel.h:31:27: error: initialized field overwritten [-Werror=override-init]
31 | .mmap = drm_gem_mmap
| ^~~~~~~~~~~~
drivers/accel/ivpu/ivpu_drv.c:360:9: note: in expansion of macro 'DRM_ACCEL_FOPS'
360 | DRM_ACCEL_FOPS,
| ^~~~~~~~~~~~~~
Remove the unused local assignment.
Fixes: e868cc591e ("accel: Add .mmap to DRM_ACCEL_FOPS")
Signed-off-by: Arnd Bergmann <arnd@arndb.de >
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230126163804.3648051-2-arnd@kernel.org
2023-01-31 14:58:17 +01:00
Thomas Zimmermann
df5bf3b942
Merge drm/drm-next into drm-misc-next
...
Backmerging to get v6.2-rc6.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
2023-01-31 14:18:33 +01:00
Geert Uytterhoeven
532a38292c
drivers: Restore alignment and newline in Makefile
...
The introduction of drivers/accel/ broke alignment, and removed the
newline at the end of the file. Fix all of that.
Fixes: 35b137630f ("accel/ivpu: Introduce a new DRM driver for Intel VPU")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be >
Reviewed-by: Oded Gabbay <ogabbay@kernel.org >
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230124104145.3962497-1-geert+renesas@glider.be
2023-01-31 13:47:54 +01:00
Daniel Vetter
aebd8f0c6f
Merge v6.2-rc6 into drm-next
...
Due to holidays we started -next with more -fixes in-flight than
usual, and people have been asking where they are. Backmerge to get
things better in sync.
Conflicts:
- Tiny conflict in drm_fbdev_generic.c between variable rename and
missing error handling that got added.
- Conflict in drm_fb_helper.c between the added call to vgaswitcheroo
in drm_fb_helper_single_fb_probe and a refactor patch that extracted
lots of helpers and incidentally removed the dev local variable.
Readd it to make things compile.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2023-01-31 12:23:23 +01:00
Rayyan Ansari
859af8cb5e
dt-bindings: display: simple-framebuffer: Document the panel node
...
Document the new panel node and what it is used for.
Signed-off-by: Rayyan Ansari <rayyan@ansari.sh >
Reviewed-by: Rob Herring <robh@kernel.org >
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230126182435.70544-3-rayyan@ansari.sh
2023-01-31 10:39:11 +01:00
Rayyan Ansari
2a6d731a8f
drm/simpledrm: Allow physical width and height configuration via panel node
...
Parse the width-mm and height-mm devicetree properties of the panel node,
and use this to set the DRM Display Mode instead of calculating it
based on a hardcoded DPI.
Signed-off-by: Rayyan Ansari <rayyan@ansari.sh >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20230126182435.70544-2-rayyan@ansari.sh
2023-01-31 10:38:59 +01:00
Arnd Bergmann
3524c96a12
accel: fix CONFIG_DRM dependencies
...
At the moment, accel drivers can be built-in even with CONFIG_DRM=m,
but this causes a link failure:
x86_64-linux-ld: drivers/accel/ivpu/ivpu_drv.o: in function `ivpu_dev_init':
ivpu_drv.c:(.text+0x1535): undefined reference to `drmm_kmalloc'
x86_64-linux-ld: ivpu_drv.c:(.text+0x1562): undefined reference to `drmm_kmalloc'
x86_64-linux-ld: drivers/accel/ivpu/ivpu_drv.o: in function `ivpu_remove':
ivpu_drv.c:(.text+0x1faa): undefined reference to `drm_dev_unregister'
x86_64-linux-ld: drivers/accel/ivpu/ivpu_drv.o: in function `ivpu_probe':
ivpu_drv.c:(.text+0x1fef): undefined reference to `__devm_drm_dev_alloc'
The problem is that DRM_ACCEL is a 'bool' symbol, so driver that
only depend on DRM_ACCEL but not also on DRM do not see the restriction
to =m configs.
To ensure that each accel driver has an implied dependency on CONFIG_DRM,
enclose the entire Kconfig file in an if/endif check.
Fixes: 8bf4889762 ("drivers/accel: define kconfig and register a new major")
Signed-off-by: Arnd Bergmann <arnd@arndb.de >
Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com >
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com >
Reviewed-by: Oded Gabbay <ogabbay@kernel.org >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230127221504.2522909-1-arnd@kernel.org
2023-01-31 09:56:50 +01:00
Rob Clark
d023d6f741
drm/shmem: Cleanup drm_gem_shmem_create_with_handle()
...
Once we create the handle, the handle owns the reference. Currently
nothing was doing anything with the shmem ptr after the handle was
created, but let's change drm_gem_shmem_create_with_handle() to not
return the pointer, so-as to not encourage problematic use of this
function in the future. As a bonus, it makes the code a bit cleaner.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Steven Price <steven.price@arm.com >
Signed-off-by: Steven Price <steven.price@arm.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230123154831.3191821-1-robdclark@gmail.com
2023-01-30 14:35:01 +00:00
Dave Airlie
155c6b16ee
Merge tag 'amd-drm-next-6.3-2023-01-27' of https://gitlab.freedesktop.org/agd5f/linux into drm-next
...
amd-drm-next-6.3-2023-01-27:
amdgpu:
- GC11 fixes
- SMU13 fixes
- Freesync fixes
- DP MST fixes
- DP MST code rework and cleanup
- AV1 fixes for VCN4
- DCN 3.2.x fixes
- PSR fixes
- DML optimizations
- DC link code rework
Signed-off-by: Dave Airlie <airlied@redhat.com >
From: Alex Deucher <alexander.deucher@amd.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230127225917.2419162-1-alexander.deucher@amd.com
2023-01-30 15:37:57 +10:00
Dave Airlie
dae437d568
Merge tag 'drm/tegra/for-6.3-rc1' of https://gitlab.freedesktop.org/drm/tegra into drm-next
...
drm/tegra: Changes for v6.3-rc1
This set of changes includes a rework of the custom syncpoint interrupt
code to take better advantage of existing DRM/KMS infrastructure.
There's also various bits of cleanup and fixes included.
Signed-off-by: Dave Airlie <airlied@redhat.com >
From: Thierry Reding <thierry.reding@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20230127170119.495943-1-thierry.reding@gmail.com
2023-01-30 14:24:52 +10:00
Dave Airlie
54587d9943
Merge tag 'drm-next-20230127' of git://git.kernel.org/pub/scm/linux/kernel/git/pinchartl/linux into drm-next
...
Renesas R-Car DU fixes and improvements
Signed-off-by: Dave Airlie <airlied@redhat.com >
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Link: https://patchwork.freedesktop.org/patch/msgid/Y9QCw3SkHm6k1bwJ@pendragon.ideasonboard.com
2023-01-30 13:49:56 +10:00