Thierry Reding
dbe2d2bf79
drm: Fix a couple of typos, punctation and whitespace issues
...
These are just a couple of things that I came across as I was reading
through the code and comments.
v2: added one more hunk that ended up in the wrong patch
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Thierry Reding <treding@nvidia.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191206135336.2084564-1-thierry.reding@gmail.com
2019-12-22 11:09:46 +01:00
Yannick Fertré
f412af187a
drm/stm: ltdc: move pinctrl to encoder mode set
...
The pin control must be set to default as soon as possible to
establish a good video link between tv & bridge hdmi
(encoder mode set is call before encoder enable).
Signed-off-by: Yannick Fertre <yannick.fertre@st.com >
Acked-by: Philippe Cornu <philippe.cornu@st.com >
Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com >
Link: https://patchwork.freedesktop.org/patch/msgid/1574850218-13257-1-git-send-email-yannick.fertre@st.com
2019-12-20 13:30:42 +01:00
Daniel Vetter
93ccfa9a4e
drm/todo: Updating logging todo
...
Jani has merged a new set of logging functions, which we hope to be
the One True solution now, pinky promises:
commit fb6c7ab871
Author: Jani Nikula <jani.nikula@intel.com >
Date: Tue Dec 10 14:30:43 2019 +0200
drm/print: introduce new struct drm_device based logging macros
Update the todo entry to match the new preference.
v2: Fix spelling issue Sam noticed.
Cc: Jani Nikula <jani.nikula@intel.com >
Cc: Sean Paul <sean@poorly.run >
Cc: Wambui Karuga <wambui.karugax@gmail.com >
Acked-by: Jani Nikula <jani.nikula@intel.com >
Acked-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191219161722.2779994-1-daniel.vetter@ffwll.ch
2019-12-19 22:12:54 +01:00
Colin Ian King
7da5492739
drm/gma500: fix null dereference of pointer fb before null check
...
Pointer fb is being dereferenced when assigning dev before it
is null checked. Fix this by only dereferencing dev after the
null check.
Fixes: 6b7ce2c416 ("drm/gma500: Remove struct psb_fbdev")
Signed-off-by: Colin Ian King <colin.king@canonical.com >
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191216162136.270114-1-colin.king@canonical.com
2019-12-19 15:33:40 +01:00
Jani Nikula
24f03be4aa
drm/gem-fb-helper: convert to drm device based logging
...
Prefer drm_dbg_kms() and drm_err() over all other logging.
Reviewed-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191210123050.8799-4-jani.nikula@intel.com
2019-12-19 15:55:10 +02:00
Jani Nikula
f33b9730cc
drm/fb-helper: convert to drm device based logging
...
Prefer drm_dbg_kms(), drm_info(), and drm_err() over all other
logging. This is about KMS so switch to the KMS category while at it.
Reviewed-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191210123050.8799-3-jani.nikula@intel.com
2019-12-19 15:54:29 +02:00
Jani Nikula
41cb6603ad
drm/client: convert to drm device based logging
...
Prefer drm_dbg_kms() and drm_err() over DRM_DEV_DEBUG_KMS() and
DRM_DEV_ERROR().
Reviewed-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191210123050.8799-2-jani.nikula@intel.com
2019-12-19 15:52:44 +02:00
Gurchetan Singh
570c815698
drm/virtio: move drm_connector_to_virtio_gpu_output to virtgpu_display
...
That's the only file that uses it.
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org >
Link: http://patchwork.freedesktop.org/patch/msgid/20191219005733.18960-6-gurchetansingh@chromium.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2019-12-19 07:13:46 +01:00
Gurchetan Singh
c91a1e2b5a
drm/virtio: move to_virtio_fence inside virtgpu_fence
...
That's the only file that uses it.
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org >
Link: http://patchwork.freedesktop.org/patch/msgid/20191219005733.18960-5-gurchetansingh@chromium.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2019-12-19 07:13:46 +01:00
Gurchetan Singh
093bd9cf5e
drm/virtio: simplify getting fake offset
...
This is a little simpler.
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org >
Link: http://patchwork.freedesktop.org/patch/msgid/20191219005733.18960-4-gurchetansingh@chromium.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2019-12-19 07:13:45 +01:00
Gurchetan Singh
9e07d4617b
drm/virtio: get rid of drm_encoder_to_virtio_gpu_output
...
Not used anywhere.
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org >
Link: http://patchwork.freedesktop.org/patch/msgid/20191219005733.18960-3-gurchetansingh@chromium.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2019-12-19 07:13:45 +01:00
Gurchetan Singh
9567728ae2
drm/virtio: static-ify virtio_gpu_framebuffer_init
...
Not used anywhere else.
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org >
Link: http://patchwork.freedesktop.org/patch/msgid/20191219005733.18960-2-gurchetansingh@chromium.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2019-12-19 07:13:45 +01:00
Gurchetan Singh
974e65e384
drm/virtio: static-ify virtio_fence_signaled
...
Not used anywhere else.
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org >
Link: http://patchwork.freedesktop.org/patch/msgid/20191219005733.18960-1-gurchetansingh@chromium.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2019-12-19 07:13:45 +01:00
Fabrizio Castro
cad8c44a9f
dt-bindings: display: bridge: lvds-codec: Absorb thine, thc63lvdm83d.txt
...
At this point in time, compatible string "thine,thc63lvdm83d" is
backed by the lvds-codec driver, and the documentation contained
in thine,thc63lvdm83d.txt is basically the same as the one
contained in lvds-codec.yaml (generic fallback compatible string
aside), therefore absorb thine,thc63lvdm83d.txt.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/ <1573660292-10629-14-git-send-email-fabrizio.castro@bp.renesas.com
2019-12-18 12:51:12 +01:00
Fabrizio Castro
b7de4ba7db
dt-bindings: display: bridge: lvds-codec: Document ti, ds90cf384a
...
The DS90CF384A from TI is a transparent LVDS receiver (decoder),
and therefore it is compatible with the lvds-codec driver and
bindings.
Document the ti,ds90cf384a compatible string with the dt-bindings.
No driver change required.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/1573660292-10629-10-git-send-email-fabrizio.castro@bp.renesas.com
2019-12-18 12:51:12 +01:00
Fabrizio Castro
575af8ecd1
dt-bindings: display: bridge: Repurpose lvds-encoder
...
In an effort to repurpose lvds-encoder.c to also serve the
function of LVDS decoders, we ended up defining a new "generic"
compatible string ("lvds-decoder"), therefore adapt the dt schema
to allow for the new compatible string.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
[narmstrong: fixed port descriptions as acked with lpinchart]
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/1573660292-10629-9-git-send-email-fabrizio.castro@bp.renesas.com
2019-12-18 12:51:12 +01:00
Fabrizio Castro
319d8e9814
drm/bridge: lvds-codec: Simplify panel DT node localisation
...
The probe function needs to get ahold of the panel device tree
node, and it achieves that by using a combination of
of_graph_get_port_by_id, of_get_child_by_name, and
of_graph_get_remote_port_parent. We can achieve the same goal
by replacing those calls with a call to of_graph_get_remote_node
these days.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/1573660292-10629-8-git-send-email-fabrizio.castro@bp.renesas.com
2019-12-18 12:26:09 +01:00
Fabrizio Castro
e6f607bb2b
drm/bridge: lvds-codec: Add "lvds-decoder" support
...
Add support for transparent LVDS decoders by adding a new
compatible string ("lvds-decoder") to the driver.
This patch also adds member connector_type to struct lvds_codec,
and that's because LVDS decoders have a different connector type
from LVDS encoders. We fill this new member up with the data
matching the compatible string.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
[Fix pointer to int cast warning]
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com >
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191217230753.2999-1-laurent.pinchart+renesas@ideasonboard.com
2019-12-18 12:26:08 +01:00
Fabrizio Castro
0d60131a3b
drm/bridge: Repurpose lvds-encoder.c
...
lvds-encoder.c implementation is also suitable for LVDS decoders,
not just LVDS encoders.
Instead of creating a new driver for addressing support for
transparent LVDS decoders, repurpose lvds-encoder.c for the greater
good with this patch.
This patch only "rebrands" the lvds-encoder.c driver, to make it
suitable for hosting LVDS decoders support. The actual support for
LVDS decoders will come with a later patch.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/1573660292-10629-6-git-send-email-fabrizio.castro@bp.renesas.com
2019-12-18 12:26:07 +01:00
Fabrizio Castro
4788f4e11d
dt-bindings: display: bridge: lvds-transmitter: Document "ti, sn75lvds83"
...
Compatible string "ti,sn75lvds83" is being used by device tree
rk3188-bqedison2qc.dts, but it's not documented anywhere, therefore
document it within lvds-transmitter.yaml.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com >
Acked-by: Rob Herring <robh@kernel.org >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/1573660292-10629-5-git-send-email-fabrizio.castro@bp.renesas.com
2019-12-18 12:26:06 +01:00
Fabrizio Castro
5240272d43
dt-bindings: display: bridge: lvds-transmitter: Absorb ti, ds90c185.txt
...
ti,ds90c185.txt documents LVDS encoders using the same driver
as the one documented by lvds-transmitter.yaml.
Since the properties listed in ti,ds90c185.txt are the same
as the ones listed in lvds-transmitter.yaml, absorb the dt-binding
into lvds-transmitter.yaml.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/1573660292-10629-4-git-send-email-fabrizio.castro@bp.renesas.com
2019-12-18 12:26:05 +01:00
Fabrizio Castro
9acfa9d30a
dt-bindings: display: bridge: lvds-transmitter: Document powerdown-gpios
...
Add documentation for property powerdown-gpios. The property is
optional.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/1573660292-10629-3-git-send-email-fabrizio.castro@bp.renesas.com
2019-12-18 12:26:04 +01:00
Fabrizio Castro
a7738c08cf
dt-bindings: display: bridge: Convert lvds-transmitter binding to json-schema
...
Convert the lvds-transmitter binding to DT schema format using
json-schema.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/1573660292-10629-2-git-send-email-fabrizio.castro@bp.renesas.com
2019-12-18 12:26:03 +01:00
Gurchetan Singh
1ffe095901
udmabuf: fix dma-buf cpu access
...
I'm just going to put Chia's review comment here since it sums
the issue rather nicely:
"(1) Semantically, a dma-buf is in DMA domain. CPU access from the
importer must be surrounded by {begin,end}_cpu_access. This gives the
exporter a chance to move the buffer to the CPU domain temporarily.
(2) When the exporter itself has other means to do CPU access, it is
only reasonable for the exporter to move the buffer to the CPU domain
before access, and to the DMA domain after access. The exporter can
potentially reuse {begin,end}_cpu_access for that purpose.
Because of (1), udmabuf does need to implement the
{begin,end}_cpu_access hooks. But "begin" should mean
dma_sync_sg_for_cpu and "end" should mean dma_sync_sg_for_device.
Because of (2), if userspace wants to continuing accessing through the
memfd mapping, it should call udmabuf's {begin,end}_cpu_access to
avoid cache issues."
Reported-by: Chia-I Wu <olvaffe@gmail.com >
Suggested-by: Chia-I Wu <olvaffe@gmail.com >
Fixes: 284562e1f3 ("udmabuf: implement begin_cpu_access/end_cpu_access hooks")
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org >
Link: http://patchwork.freedesktop.org/patch/msgid/20191217230228.453-1-gurchetansingh@chromium.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2019-12-18 09:11:38 +01:00
Linus Walleij
c8d4a56082
drm/mcde: Some fixes to handling video mode
...
The video DSI mode had not really been tested. These fixes makes
it more likely to work on real hardware:
- Put the active width (x width) in the right bits and the VSA
(vertical sync active) in the right bits (those were swapped).
- Calculate the packet sizes in bytes as in the vendor driver,
rather than in bits. Test the calculations agains a
spreadsheet and confirmed by debug prints to be reasonable.
- Also verified the register values with relative confidence
to register dumps from the Samsung GT-I8190 boot loader
graphics. We are not identical but not off by far either.
- Error out if the current mode and refresh frequency doesn't
work out. (In the future we may simply want to scale down
the vrefresh.)
- Handle negative result in front/back/sync packages and fall
back to zero like in the vendor driver.
- Put in lots of clarifying comments and references to the
documentation where the code is hard to understand.
- Set the DSI_VID_VCA_SETTING2 field
DSI_VID_VCA_SETTING2_MAX_LINE_LIMIT to blkline_pck - 6 as in
the vendor driver and mask the field properly.
- Set the DSI_VID_VCA_SETTING1 field
DSI_VID_VCA_SETTING1_MAX_BURST_LIMIT to blkeol_pck - 6 to
blkeol_duration - 6 as in the vendor driver.
Cc: Stephan Gerhold <stephan@gerhold.net >
Fixes: 5fc537bfd0 ("drm/mcde: Add new driver for ST-Ericsson MCDE")
Link: https://patchwork.freedesktop.org/patch/msgid/20191217150959.17215-1-linus.walleij@linaro.org
Reviewed-by: Stephan Gerhold <stephan@gerhold.net >
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
2019-12-17 21:20:03 +01:00
Andy Shevchenko
4a34a9dcec
drm/drm_panel: Fix EXPORT of drm_panel_of_backlight() one more time
...
The initial commit followed by the fix didn't
take into consideration the case:
CONFIG_DRM_PANEL=y
CONFIG_BACKLIGHT_CLASS_DEVICE=m
CONFIG_DRM_I915=y
where symbol devm_of_find_backlight() is not reachable from DRM subsystem.
Quick fix is to avoid drm_panel_of_backlight() from exporting in such case.
Fixes: 907aa265fd ("drm/drm_panel: fix EXPORT of drm_panel_of_backlight")
Reported-by: Randy Dunlap <rdunlap@infradead.org >
Acked-by: Randy Dunlap <rdunlap@infradead.org > # build-tested
Cc: Linus Walleij <linus.walleij@linaro.org >
Cc: Sam Ravnborg <sam@ravnborg.org >
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Cc: Thierry Reding <thierry.reding@gmail.com >
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com >
Cc: Sean Paul <sean@poorly.run >
Cc: David Airlie <airlied@linux.ie >
Cc: Daniel Vetter <daniel@ffwll.ch >
Cc: Maxime Ripard <mripard@kernel.org >
Cc: dri-devel@lists.freedesktop.org
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Signed-off-by: Sam Ravnborg <sam@ravnborg.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20191217140721.42432-1-andriy.shevchenko@linux.intel.com
2019-12-17 20:39:33 +01:00
zhong jiang
7d411afe84
dma-heap: Make the symbol 'dma_heap_ioctl_cmds' static
...
Fix the following sparse warning.
drivers/dma-buf/dma-heap.c:109:14: warning: symbol 'dma_heap_ioctl_cmds'
was not declared. Should it be static?
Acked-by: Andrew F. Davis <afd@ti.com >
Acked-by: John Stultz <john.stultz@linaro.org >
Signed-off-by: zhong jiang <zhongjiang@huawei.com >
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org >
[sumits: rebased over IOCTL rename patches]
Link: https://patchwork.freedesktop.org/patch/msgid/20191217190822.1969-1-sumit.semwal@linaro.org
2019-12-18 00:41:29 +05:30
Colin Ian King
f9d3b2c600
dma-buf: fix resource leak on -ENOTTY error return path
...
The -ENOTTY error return path does not free the allocated
kdata as it returns directly. Fix this by returning via the
error handling label err.
Addresses-Coverity: ("Resource leak")
Fixes: c02a81fba7 ("dma-buf: Add dma-buf heaps framework")
Signed-off-by: Colin Ian King <colin.king@canonical.com >
Acked-by: John Stultz <john.stultz@linaro.org >
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20191216161059.269492-1-colin.king@canonical.com
2019-12-17 22:28:14 +05:30
Aditya Pakki
8b6fc114be
drm: remove duplicate check on parent and avoid BUG_ON
...
In drm_dev_init, parent is checked for NULL via assert after
checked in devm_drm_dev_init(). The patch removes the duplicate
check and replaces the assertion with WARN_ON. Further, it returns
-EINVAL consistent with the usage in devm_drm_dev_init.
Signed-off-by: Aditya Pakki <pakki001@umn.edu >
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch >
Link: https://patchwork.freedesktop.org/patch/msgid/20191215194345.4679-1-pakki001@umn.edu
2019-12-17 17:26:08 +01:00
Daniel Vetter
4f865a74c8
drm/mediatek: plane_state->fb iff plane_state->crtc
...
Checking both is one too much, so wrap a WARN_ON around it to stope
the copypasta.
Acked-by: CK Hu <ck.hu@mediatek.com >
Acked-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com >
Cc: CK Hu <ck.hu@mediatek.com >
Cc: Philipp Zabel <p.zabel@pengutronix.de >
Cc: Matthias Brugger <matthias.bgg@gmail.com >
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Link: https://patchwork.freedesktop.org/patch/msgid/20191213172612.1514842-5-daniel.vetter@ffwll.ch
2019-12-17 17:26:08 +01:00
Daniel Vetter
e529878e4b
drm/malidp: plane_state->fb iff plane_state->crtc
...
Checking both is one too much, so wrap a WARN_ON around it to stope
the copypasta.
Acked-by: Liviu Dudau <liviu.dudau@arm.com >
Acked-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com >
Cc: Liviu Dudau <liviu.dudau@arm.com >
Cc: Brian Starkey <brian.starkey@arm.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191213172612.1514842-2-daniel.vetter@ffwll.ch
2019-12-17 17:26:08 +01:00
Daniel Vetter
caa2a77810
drm/etnaviv: Use dma_resv locking wrappers
...
I'll add more fancy logic to them soon, so everyone really has to use
them. Plus they already provide some nice additional debug
infrastructure on top of direct ww_mutex usage for the fences tracked
by dma_resv.
v2: Fix the lost _interruptible (Michael)
Acked-by: Michael J. Ruhl <michael.j.ruhl@intel.com >
Reviewed-by: Lucas Stach <l.stach@pengutronix.de >
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com >
Cc: Lucas Stach <l.stach@pengutronix.de >
Cc: Russell King <linux+etnaviv@armlinux.org.uk >
Cc: Christian Gmeiner <christian.gmeiner@gmail.com >
Cc: etnaviv@lists.freedesktop.org
Cc: "Ruhl, Michael J" <michael.j.ruhl@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191214000927.1616384-1-daniel.vetter@ffwll.ch
2019-12-17 17:26:08 +01:00
Daniel Vetter
616b549b15
drm/vc4: Use dma_resv locking wrappers
...
I'll add more fancy logic to them soon, so everyone really has to use
them. Plus they already provide some nice additional debug
infrastructure on top of direct ww_mutex usage for the fences tracked
by dma_resv.
Reviewed-by: Eric Anholt <eric@anholt.net >
Cc: Eric Anholt <eric@anholt.net >
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191125094356.161941-5-daniel.vetter@ffwll.ch
2019-12-17 17:26:08 +01:00
Daniel Vetter
80f30930b6
drm/msm: Use dma_resv locking wrappers
...
I'll add more fancy logic to them soon, so everyone really has to use
them. Plus they already provide some nice additional debug
infrastructure on top of direct ww_mutex usage for the fences tracked
by dma_resv.
Reviewed-by: Eric Anholt <eric@anholt.net >
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com >
Cc: Rob Clark <robdclark@gmail.com >
Cc: Sean Paul <sean@poorly.run >
Cc: linux-arm-msm@vger.kernel.org
Cc: freedreno@lists.freedesktop.org
Link: https://patchwork.freedesktop.org/patch/msgid/20191125094356.161941-4-daniel.vetter@ffwll.ch
2019-12-17 17:26:08 +01:00
Andrew F. Davis
263e38f82c
dma-buf: heaps: Remove redundant heap identifier from system heap name
...
The heaps are already in a directory of heaps, adding _heap to a heap
name is redundant. This patch is only a name change, no logic is changed.
Signed-off-by: Andrew F. Davis <afd@ti.com >
Acked-by: John Stultz <john.stultz@linaro.org >
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20191216133405.1001-3-afd@ti.com
2019-12-17 21:37:40 +05:30
Andrew F. Davis
b3b4346544
dma-buf: heaps: Use _IOCTL_ for userspace IOCTL identifier
...
This is more consistent with the DMA and DRM frameworks convention. This
patch is only a name change, no logic is changed.
Signed-off-by: Andrew F. Davis <afd@ti.com >
Acked-by: John Stultz <john.stultz@linaro.org >
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20191216133405.1001-2-afd@ti.com
2019-12-17 21:37:40 +05:30
Jani Nikula
fb6c7ab871
drm/print: introduce new struct drm_device based logging macros
...
Add new struct drm_device based logging macros modeled after the core
kernel device based logging macros. These would be preferred over the
drm printk and struct device based macros in drm code, where possible.
We have existing drm specific struct device based logging functions, but
they are too verbose to use for two main reasons:
* The names are unnecessarily long, for example DRM_DEV_DEBUG_KMS().
* The use of struct device over struct drm_device is too generic for
most users, leading to an extra dereference.
For example:
DRM_DEV_DEBUG_KMS(drm->dev, "Hello, world\n");
vs.
drm_dbg_kms(drm, "Hello, world\n");
It's a matter of taste, but the SHOUTING UPPERCASE has been argued to be
less readable than lowercase.
Some names are changed from old DRM names to be based on the core kernel
logging functions. For example, NOTE -> notice, ERROR -> err, DEBUG ->
dbg.
Due to the conflation of DRM_DEBUG and DRM_DEBUG_DRIVER macro use
(DRM_DEBUG is used widely in drivers though it's supposed to be a core
debugging category), they are named as drm_dbg_core and drm_dbg,
respectively.
The drm_err and _once/_ratelimited variants no longer include the
function name in order to be able to use the core device based logging
macros. Arguably this is not a significant change; error messages should
not be so common to be only distinguishable by the function name.
Ratelimited debug logging macros are to be added later.
Cc: Sam Ravnborg <sam@ravnborg.org >
Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Acked-by: Sean Paul <sean@poorly.run >
Acked-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191210123050.8799-1-jani.nikula@intel.com
2019-12-17 16:43:20 +02:00
Ville Syrjälä
9212f8ee41
drm/edid: Make sure the CEA mode arrays have the correct amount of modes
...
We depend on a specific relationship between the VIC number and the
index in the CEA mode arrays. Assert that the arrays have the expected
size to make sure we've not accidentally left holes in them.
v2: Pimp the BUILD_BUG_ON()s
v3: Fix typos (Manasi)
Cc: Hans Verkuil <hansverk@cisco.com >
Reviewed-by: Manasi Navare <manasi.d.navare@intel.com >
Reviewed-by: Thomas Anderson <thomasanderson@google.com >
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191213174348.27261-5-ville.syrjala@linux.intel.com
2019-12-16 17:20:41 +02:00
Ville Syrjälä
8c1b2bd932
drm/edid: Throw away the dummy VIC 0 cea mode
...
Now that the cea mode handling is not 100% tied to the single
array the dummy VIC 0 mode is pretty much pointles. Throw it
out.
v2: Rebase
Cc: Tom Anderson <thomasanderson@google.com >
Cc: Hans Verkuil <hansverk@cisco.com >
Cc: Manasi Navare <manasi.d.navare@intel.com >
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191213174348.27261-4-ville.syrjala@linux.intel.com
Reviewed-by: Thomas Anderson <thomasanderson@google.com >
2019-12-16 17:20:38 +02:00
Ville Syrjälä
f7655d42fc
drm/edid: Add CTA-861-G modes with VIC >= 193
...
Add a second table to the cea modes with VIC >= 193.
v2: Improve the comment for cea_modes_*[] to indicate
that one should always use cea_mode_for_vic() (Tom)
Cc: Hans Verkuil <hansverk@cisco.com >
Reviewed-by: Manasi Navare <manasi.d.navare@intel.com >
Reviewed-by: Thomas Anderson <thomasanderson@google.com >
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191213174348.27261-3-ville.syrjala@linux.intel.com
2019-12-16 17:20:27 +02:00
Ville Syrjälä
7befe621ff
drm/edid: Abstract away cea_edid_modes[]
...
We're going to need two cea mode tables (one for VICs < 128,
another one for VICs >= 193). To that end replace the direct
edid_cea_modes[] lookups with a function call. And we'll rename
the array to edid_cea_modes_0[] to indicate how it's to be
indexed.
v2: Fix typos (Tom)
Drop the pointless NULL checks in the loops (Tom)
Assign when declaring (Tom)
Improve the comment for cea_modes_*[] to indicate
that one should always use cea_mode_for_vic() (Tom)
Cc: Tom Anderson <thomasanderson@google.com >
Cc: Hans Verkuil <hansverk@cisco.com >
Cc: Manasi Navare <manasi.d.navare@intel.com >
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191213174348.27261-2-ville.syrjala@linux.intel.com
Reviewed-by: Thomas Anderson <thomasanderson@google.com >
2019-12-16 17:20:21 +02:00
Gerd Hoffmann
c096761718
drm/virtio: use damage info for display updates.
...
v2: remove shift by src_{x,y}, drm_atomic_helper_damage_merged()
handles that for us (Chia-I Wu).
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Link: http://patchwork.freedesktop.org/patch/msgid/20191212125346.8334-4-kraxel@redhat.com
2019-12-16 12:39:50 +01:00
Gerd Hoffmann
7082e7a438
drm/virtio: batch display update commands.
...
When the driver submits multiple commands in a row it makes sense to
notify the host only after submitting the last one, so the host can
process them all at once, with a single vmexit.
Add functions to enable/disable notifications to allow that. Use the
new functions for primary plane updates.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Link: http://patchwork.freedesktop.org/patch/msgid/20191212125346.8334-3-kraxel@redhat.com
2019-12-16 12:39:50 +01:00
Gerd Hoffmann
3954ff10e0
drm/virtio: skip set_scanout if framebuffer didn't change
...
v2: also check src rect (Chia-I Wu).
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Link: http://patchwork.freedesktop.org/patch/msgid/20191212125346.8334-2-kraxel@redhat.com
2019-12-16 12:39:50 +01:00
Daniel Vetter
4ad7056a40
drm/virtio: plane_state->fb iff plane_state->crtc
...
Checking both is one too much, so wrap a WARN_ON around it to stope
the copypasta.
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com >
Link: http://patchwork.freedesktop.org/patch/msgid/20191213172612.1514842-8-daniel.vetter@ffwll.ch
Cc: David Airlie <airlied@linux.ie >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Cc: virtualization@lists.linux-foundation.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2019-12-16 12:39:50 +01:00
zhengbin
f2f7df4fbf
drm/bochs: Remove unneeded semicolon
...
Fixes coccicheck warning:
drivers/gpu/drm/bochs/bochs_hw.c:258:2-3: Unneeded semicolon
Reported-by: Hulk Robot <hulkci@huawei.com >
Signed-off-by: zhengbin <zhengbin13@huawei.com >
Link: http://patchwork.freedesktop.org/patch/msgid/1576468459-67216-1-git-send-email-zhengbin13@huawei.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2019-12-16 12:39:50 +01:00
Hans de Goede
d1fe276b51
drm/modes: parse_cmdline: Explicitly memset the passed in drm_cmdline_mode struct
...
Instead of only setting mode->specified on false on an early exit and
leaving e.g. mode->bpp_specified and mode->refresh_specified as is,
lets be consistent and just zero out the entire passed in struct at
the top of drm_mode_parse_command_line_for_connector()
Changes in v3:
-Drop "mode->specified = false;" line instead of the "return false;" (oops)
This crasher was reported-by: kernel test robot <lkp@intel.com >
Acked-by: Maxime Ripard <mripard@kernel.org >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-11-hdegoede@redhat.com
2019-12-16 12:13:18 +01:00
Hans de Goede
5b926617cd
drm/modes: parse_cmdline: Remove some unnecessary code (v2)
...
fb_get_options() will return fb_mode_option if no video=<connector-name>
argument is present on the kernel commandline, so there is no need to also
do this in drm_mode_parse_command_line_for_connector() as our only caller
uses fb_get_options() to get the mode_option argument.
Changes in v2:
-Split out the changes dealing with the initialization of the mode struct
into a separate patch
Acked-by: Maxime Ripard <mripard@kernel.org >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-10-hdegoede@redhat.com
2019-12-16 12:13:18 +01:00
Hans de Goede
4e7a4a6fbd
drm/modes: parse_cmdline: Add support for specifying panel_orientation (v2)
...
Sometimes we want to override a connector's panel_orientation from the
kernel commandline. Either for testing and for special cases, e.g. a kiosk
like setup which uses a TV mounted in portrait mode.
Users can already specify a "rotate" option through a video= kernel cmdline
option. But that only supports 0/180 degrees (see drm_client_modeset TODO)
and only works for in kernel modeset clients, not for userspace kms users.
The "panel-orientation" connector property OTOH does support 90/270 degrees
as it leaves dealing with the rotation up to userspace and this does work
for userspace kms clients (at least those which support this property).
Changes in v2:
-Add missing ':' after @panel_orientation (reported by kbuild test robot)
BugLink: https://gitlab.freedesktop.org/plymouth/plymouth/merge_requests/83
Acked-by: Maxime Ripard <mripard@kernel.org >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-9-hdegoede@redhat.com
2019-12-16 12:13:18 +01:00
Hans de Goede
7b1cce760a
drm/modes: parse_cmdline: Allow specifying stand-alone options
...
Some options which can be specified on the commandline, such as
margin_right=..., margin_left=..., etc. are applied not only to the
specified mode, but to all modes. As such it would be nice if the user
can simply say e.g.
video=HDMI-1:margin_right=14,margin_left=24,margin_bottom=36,margin_top=42
This commit refactors drm_mode_parse_command_line_for_connector() to
add support for this, and as a nice side effect also cleans up the
function a bit.
Acked-by: Maxime Ripard <mripard@kernel.org >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-8-hdegoede@redhat.com
2019-12-16 12:13:18 +01:00