Ville Syrjälä
dc6fcaaba5
drm/omap: Allow build with COMPILE_TEST=y
...
Allow omapdrm to be built with COMPILE_TEST=y for greater
coverage. Builds fine on x86/x86_64 at least.
Cc: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240408170426.9285-16-ville.syrjala@linux.intel.com
Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
2024-05-08 22:09:06 +03:00
Ville Syrjälä
5bbad9e008
drm/omap: Open code phys_to_page()
...
phys_to_page() is not available on most architectures.
Just open code it like msm does. Allows COMPILE_TEST=y
builds of omapdrm on other architectures.
Cc: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240408170426.9285-15-ville.syrjala@linux.intel.com
Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
2024-05-08 22:03:58 +03:00
Ville Syrjälä
8c59c8709e
drm/hisilicon/kirin: Allow build with COMPILE_TEST=y
...
Allow kirin to be built with COMPILE_TEST=y for greater
coverage. Builds fine on x86/x86_64 at least.
Cc: Xinliang Liu <xinliang.liu@linaro.org >
Cc: Tian Tao <tiantao6@hisilicon.com >
Cc: Xinwei Kong <kong.kongxinwei@hisilicon.com >
Cc: Sumit Semwal <sumit.semwal@linaro.org >
Cc: Yongqin Liu <yongqin.liu@linaro.org >
Cc: John Stultz <jstultz@google.com >
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240408170426.9285-12-ville.syrjala@linux.intel.com
Acked-by: John Stultz <jstultz@google.com >
2024-05-08 22:03:25 +03:00
Ville Syrjälä
6d46a50934
drm/hisilicon/kirin: Fix MASK(32) on 32bit architectures
...
BIT(32) is illegal when sizeof(long)==4. Use BIT_ULL(32)
instead.
Cc: Xinliang Liu <xinliang.liu@linaro.org >
Cc: Tian Tao <tiantao6@hisilicon.com >
Cc: Xinwei Kong <kong.kongxinwei@hisilicon.com >
Cc: Sumit Semwal <sumit.semwal@linaro.org >
Cc: Yongqin Liu <yongqin.liu@linaro.org >
Cc: John Stultz <jstultz@google.com >
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240408170426.9285-11-ville.syrjala@linux.intel.com
Acked-by: John Stultz <jstultz@google.com >
2024-05-08 22:03:16 +03:00
Ville Syrjälä
e34a7238bd
drm/hisilicon/kirin: Fix 64bit divisions
...
Use the appropriate 64bit division helpers to make the code
build on 32bit architectures.
Cc: Xinliang Liu <xinliang.liu@linaro.org >
Cc: Tian Tao <tiantao6@hisilicon.com >
Cc: Xinwei Kong <kong.kongxinwei@hisilicon.com >
Cc: Sumit Semwal <sumit.semwal@linaro.org >
Cc: Yongqin Liu <yongqin.liu@linaro.org >
Cc: John Stultz <jstultz@google.com >
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240408170426.9285-10-ville.syrjala@linux.intel.com
Acked-by: John Stultz <jstultz@google.com >
2024-05-08 22:03:05 +03:00
Ville Syrjälä
4a7fe0576e
drm/hisilicon/kirin: Include linux/io.h for readl()/writel()
...
Include linux/io.h for readl()/writel().
When built on x86_64 w/ COMPILE_TEST=y:
../drivers/gpu/drm/hisilicon/kirin/dw_dsi_reg.h:93:16: error: implicit declaration of function ‘readl’ [-Werror=implicit-function-declaration]
93 | orig = readl(addr);
| ^~~~~
../drivers/gpu/drm/hisilicon/kirin/dw_dsi_reg.h:96:9: error: implicit declaration of function ‘writel’ [-Werror=implicit-function-declaration]
96 | writel(tmp, addr);
| ^~~~~~
Cc: Xinliang Liu <xinliang.liu@linaro.org >
Cc: Tian Tao <tiantao6@hisilicon.com >
Cc: Xinwei Kong <kong.kongxinwei@hisilicon.com >
Cc: Sumit Semwal <sumit.semwal@linaro.org >
Cc: Yongqin Liu <yongqin.liu@linaro.org >
Cc: John Stultz <jstultz@google.com >
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240408170426.9285-9-ville.syrjala@linux.intel.com
Acked-by: John Stultz <jstultz@google.com >
2024-05-08 22:02:52 +03:00
Ville Syrjälä
d26238c680
drm/amdgpu: Use drm_crtc_vblank_crtc()
...
Replace the open coded drm_crtc_vblank_crtc() with the real
thing.
Cc: Alex Deucher <alexander.deucher@amd.com >
Cc: "Christian König" <christian.koenig@amd.com >
Cc: "Pan, Xinhui" <Xinhui.Pan@amd.com >
Cc: amd-gfx@lists.freedesktop.org
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240408190611.24914-2-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
2024-05-08 21:55:30 +03:00
Sui Jingfeng
ad3323a6cc
drm/drm-bridge: Drop conditionals around of_node pointers
...
Having conditional around the of_node pointer of the drm_bridge structure
is not necessary, since drm_bridge structure always has the of_node as its
member.
Let's drop the conditional to get a better looks, please also note that
this is following the already accepted commitments. see commit d8dfccde27
("drm/bridge: Drop conditionals around of_node pointers") for reference.
Signed-off-by: Sui Jingfeng <sui.jingfeng@linux.dev >
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20240507180001.1358816-1-sui.jingfeng@linux.dev
2024-05-08 15:44:21 +02:00
Jani Nikula
7fb8af6798
drm: deprecate driver date
...
The driver date serves no useful purpose, because it's hardly ever
updated. The information is misleading at best.
As described in Documentation/gpu/drm-internals.rst:
The driver date, formatted as YYYYMMDD, is meant to identify the date
of the latest modification to the driver. However, as most drivers
fail to update it, its value is mostly useless. The DRM core prints it
to the kernel log at initialization time and passes it to userspace
through the DRM_IOCTL_VERSION ioctl.
Stop printing the driver date at init, and start returning the empty
string "" as driver date through the DRM_IOCTL_VERSION ioctl.
The driver date initialization in drivers and the struct drm_driver date
member can be removed in follow-up.
Reviewed-by: Hamza Mahfooz <hamza.mahfooz@amd.com >
Acked-by: Simon Ser <contact@emersion.fr >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240429164336.1406480-1-jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
2024-05-08 15:31:58 +03:00
Ville Syrjälä
ef283674a1
drm/uapi: Move drm_color_ctm_3x4 out from drm_mode.h
...
drm_color_ctm_3x4 is some undocumented amgdpu private
uapi and thus has no business being in drm_mode.h.
At least move it to some amdgpu specific header, albeit
with the wrong namespace as maybe something somewhere
is using this already?
Cc: Harry Wentland <harry.wentland@amd.com >
Cc: Joshua Ashton <joshua@froggi.es >
Cc: Alex Deucher <alexander.deucher@amd.com >
Fixes: 6872a189be ("drm/amd/display: Add 3x4 CTM support for plane CTM")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240422085857.17651-1-ville.syrjala@linux.intel.com
Reviewed-by: Harry Wentland <harry.wentland@amd.com >
2024-05-07 14:14:30 +03:00
Douglas Anderson
a6cd27d92a
drm/panel-edp: Add ID for KD KD116N09-30NH-A016
...
As evidenced by in-field reports, this panel shipped on pompom but we
never added the ID and thus we're stuck w/ conservative timings. The
panel was part of early patches but somehow got left off in the
end. :( Add it in now.
For future reference, EDID from this panel is:
00ffffffffffff002c82121200000000
321e0104951a0e780ae511965e55932c
19505400000001010101010101010101
010101010101a41f5686500084302820
55000090100000180000000000000000
00000000000000000000000000000000
000000000000000000000000000000fe
004b443131364e3039333041313600f6
We use the ASCII string from decoding the EDID ("KD116N0930A16") as
the panel name.
Reviewed-by: Hsin-Yi Wang <hsinyi@chromium.org >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20240502164746.1.Ia32fc630e5ba41b3fdd3666d9e343568e03c4f3a@changeid
2024-05-06 08:58:58 -07:00
Colin Ian King
0fe113ad47
drm/gma500: Fix spelling mistake "patter" -> "pattern"
...
There is a spelling mistake in a DRM_DEBUG_KMS message. Fix it.
Reviewed-by: Sui Jingfeng <sui.jingfeng@linux.dev >
Signed-off-by: Colin Ian King <colin.i.king@gmail.com >
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240314163511.2372458-1-colin.i.king@gmail.com
2024-05-03 09:35:39 +02:00
Thomas Zimmermann
18bc074c22
drm/fbdev: Clean up fbdev documentation
...
Rewrite some docs that are not up-to-date any longer. Remove the TODO
item for fbdev-generic conversion, as the helper has been replaced. Make
documentation for DMA, SHMEM and TTM emulation available.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Jonathan Corbet <corbet@lwn.net >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-44-tzimmermann@suse.de
2024-05-02 11:33:34 +02:00
Thomas Zimmermann
aae4682e5d
drm/fbdev-generic: Convert to fbdev-ttm
...
Only TTM-based drivers use fbdev-generic. Rename it to fbdev-ttm and
change the symbol infix from _generic_ to _ttm_. Link the source file
into TTM helpers, so that it is only build if TTM-based drivers have
been selected. Select DRM_TTM_HELPER for loongson.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-43-tzimmermann@suse.de
2024-05-02 11:33:32 +02:00
Thomas Zimmermann
c32705b591
drm/tiny/st7735r: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by st7735r. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: David Lechner <david@lechnology.com >
Acked-by: David Lechner <david@lechnology.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-42-tzimmermann@suse.de
2024-05-02 11:33:32 +02:00
Thomas Zimmermann
85c8e3ec80
drm/tiny/st7586: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by st7586. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: David Lechner <david@lechnology.com >
Acked-by: David Lechner <david@lechnology.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-41-tzimmermann@suse.de
2024-05-02 11:33:31 +02:00
Thomas Zimmermann
01849b42e7
drm/tiny/repaper: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by repaper. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: "Noralf Trønnes" <noralf@tronnes.org >
Acked-by: Noralf Trønnes <noralf@tronnes.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-40-tzimmermann@suse.de
2024-05-02 11:33:31 +02:00
Thomas Zimmermann
9317ff6917
drm/tiny/panel-mipi-dbi: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by panel-mipi-dbi. Avoids the
overhead of fbdev-generic's additional shadow buffering. No functional
changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: "Noralf Trønnes" <noralf@tronnes.org >
Acked-by: Noralf Trønnes <noralf@tronnes.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-39-tzimmermann@suse.de
2024-05-02 11:33:30 +02:00
Thomas Zimmermann
6a09ecfe28
drm/tiny/mi0283qt: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by mi0283qt. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: "Noralf Trønnes" <noralf@tronnes.org >
Acked-by: Noralf Trønnes <noralf@tronnes.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-38-tzimmermann@suse.de
2024-05-02 11:33:30 +02:00
Thomas Zimmermann
4f229b50b2
drm/tiny/ili9486: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by ili9486. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-37-tzimmermann@suse.de
2024-05-02 11:33:29 +02:00
Thomas Zimmermann
18c6e51f16
drm/tiny/ili9341: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by ili9341. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Kamlesh Gurudasani <kamlesh.gurudasani@gmail.com >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-36-tzimmermann@suse.de
2024-05-02 11:33:29 +02:00
Thomas Zimmermann
5ab91447aa
drm/tiny/ili9225: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by ili9225. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: David Lechner <david@lechnology.com >
Acked-by: David Lechner <david@lechnology.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-35-tzimmermann@suse.de
2024-05-02 11:33:28 +02:00
Thomas Zimmermann
6447acb8b3
drm/tiny/ili9163: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by ili9163. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-34-tzimmermann@suse.de
2024-05-02 11:33:28 +02:00
Thomas Zimmermann
a9a0f08df5
drm/tiny/hx8357d: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by hx8357d. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-33-tzimmermann@suse.de
2024-05-02 11:33:27 +02:00
Thomas Zimmermann
b4c3fe533c
drm/rockchip: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by rockchip. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Sandy Huang <hjc@rock-chips.com >
Cc: "Heiko Stübner" <heiko@sntech.de >
Cc: Andy Yan <andy.yan@rock-chips.com >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Acked-by: Heiko Stuebner <heiko@sntech.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-32-tzimmermann@suse.de
2024-05-02 11:33:27 +02:00
Thomas Zimmermann
90d0799af3
drm/renesas/shmobile: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by shmobile. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Cc: Geert Uytterhoeven <geert+renesas@glider.be >
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-31-tzimmermann@suse.de
2024-05-02 11:33:26 +02:00
Thomas Zimmermann
ff5cea0f03
drm/renesas/rz-du: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by rz-du. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Biju Das <biju.das.jz@bp.renesas.com >
Tested-by: Biju Das <biju.das.jz@bp.renesas.com >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-30-tzimmermann@suse.de
2024-05-02 11:33:26 +02:00
Thomas Zimmermann
b3fdbd60d3
drm/renesas/rcar-du: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by rcar-du. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Cc: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com >
Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-29-tzimmermann@suse.de
2024-05-02 11:33:25 +02:00
Thomas Zimmermann
70c82ee1ac
drm/panel/panel-ilitek-9341: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by panel-ilitek-9341. Avoids
the overhead of fbdev-generic's additional shadow buffering. No
functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Neil Armstrong <neil.armstrong@linaro.org >
Cc: Jessica Zhang <quic_jesszhan@quicinc.com >
Cc: Sam Ravnborg <sam@ravnborg.org >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-28-tzimmermann@suse.de
2024-05-02 11:33:25 +02:00
Thomas Zimmermann
0992284b4f
drm/mediatek: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by ingenic. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Chun-Kuang Hu <chunkuang.hu@kernel.org >
Cc: Philipp Zabel <p.zabel@pengutronix.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-27-tzimmermann@suse.de
2024-05-02 11:33:24 +02:00
Thomas Zimmermann
c1eef5ae06
drm/ingenic: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by ingenic. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Paul Cercueil <paul@crapouillou.net >
Acked-by: Paul Cercueil <paul@crapouillou.net >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-26-tzimmermann@suse.de
2024-05-02 11:33:24 +02:00
Thomas Zimmermann
931af44404
drm/imx/lcdc: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by lcdc. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Shawn Guo <shawnguo@kernel.org >
Cc: Sascha Hauer <s.hauer@pengutronix.de >
Cc: Pengutronix Kernel Team <kernel@pengutronix.de >
Cc: Fabio Estevam <festevam@gmail.com >
Cc: NXP Linux Team <linux-imx@nxp.com >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-25-tzimmermann@suse.de
2024-05-02 11:33:23 +02:00
Thomas Zimmermann
f379625079
drm/hisilicon/kirin: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by kirin. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Xinliang Liu <xinliang.liu@linaro.org >
Cc: Tian Tao <tiantao6@hisilicon.com >
Cc: Xinwei Kong <kong.kongxinwei@hisilicon.com >
Cc: Sumit Semwal <sumit.semwal@linaro.org >
Cc: Yongqin Liu <yongqin.liu@linaro.org >
Cc: John Stultz <jstultz@google.com >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-24-tzimmermann@suse.de
2024-05-02 11:33:23 +02:00
Thomas Zimmermann
386030e519
drm/arm/komeda: Use fbdev-dma
...
Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports
damage handling, which is required by komeda. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Liviu Dudau <liviu.dudau@arm.com >
Acked-by: Liviu Dudau <liviu.dudau@arm.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-23-tzimmermann@suse.de
2024-05-02 11:33:23 +02:00
Thomas Zimmermann
808a40b694
drm/fbdev-dma: Implement damage handling and deferred I/O
...
Add support for damage handling and deferred I/O to fbdev-dma. This
enables fbdev-dma to support all DMA-memory-based DRM drivers, even
such with a dirty callback in their framebuffers.
The patch adds the code for deferred I/O and also sets a dedicated
helper for struct fb_ops.fb_mmap that support coherent mappings.
v3:
- init fb_ops with FB_GEN_DEFAULT_DEFERRED_DMAMEM_OPS() (Javier)
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-22-tzimmermann@suse.de
2024-05-02 11:33:22 +02:00
Thomas Zimmermann
d2b42634fd
drm/vkms: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com >
Cc: Melissa Wen <melissa.srw@gmail.com >
Cc: "Maíra Canal" <mairacanal@riseup.net >
Cc: Haneen Mohammed <hamohammed.sa@gmail.com >
Cc: Daniel Vetter <daniel@ffwll.ch >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Acked-by: Maíra Canal <mcanal@igalia.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-21-tzimmermann@suse.de
2024-05-02 11:33:22 +02:00
Thomas Zimmermann
8b1bb818b2
drm/virtio: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: David Airlie <airlied@redhat.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Cc: Gurchetan Singh <gurchetansingh@chromium.org >
Cc: Chia-I Wu <olvaffe@gmail.com >
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-20-tzimmermann@suse.de
2024-05-02 11:33:21 +02:00
Thomas Zimmermann
0f8c731477
drm/udl: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Dave Airlie <airlied@redhat.com >
Cc: Sean Paul <sean@poorly.run >
Cc: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-19-tzimmermann@suse.de
2024-05-02 11:33:21 +02:00
Thomas Zimmermann
5134fa750e
drm/tiny/simpledrm: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Javier Martinez Canillas <javierm@redhat.com >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-18-tzimmermann@suse.de
2024-05-02 11:33:20 +02:00
Thomas Zimmermann
049f75bd0b
drm/tiny/ofdrm: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Javier Martinez Canillas <javierm@redhat.com >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-17-tzimmermann@suse.de
2024-05-02 11:33:20 +02:00
Thomas Zimmermann
5bd79b70a2
drm/tiny/gm12u320: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Hans de Goede <hdegoede@redhat.com >
Reviewed-by: Hans de Goede <hdegoede@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-16-tzimmermann@suse.de
2024-05-02 11:33:19 +02:00
Thomas Zimmermann
eb9479a98c
drm/tiny/cirrus: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-15-tzimmermann@suse.de
2024-05-02 11:33:19 +02:00
Thomas Zimmermann
92e7a36891
drm/solomon: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Javier Martinez Canillas <javierm@redhat.com >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-14-tzimmermann@suse.de
2024-05-02 11:33:18 +02:00
Thomas Zimmermann
b1fd6da243
drm/mgag200: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Dave Airlie <airlied@redhat.com >
Cc: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Jocelyn Falempe <jfalempe@redhat.com >
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-13-tzimmermann@suse.de
2024-05-02 11:33:18 +02:00
Thomas Zimmermann
b3e328dced
drm/hyperv: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Deepak Rawat <drawat.floss@gmail.com >
Reviewed-by: Deepak Rawat <drawat.floss@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-12-tzimmermann@suse.de
2024-05-02 11:33:17 +02:00
Thomas Zimmermann
994c6277e6
drm/gud: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: "Noralf Trønnes" <noralf@tronnes.org >
Acked-by: Noralf Trønnes <noralf@tronnes.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-11-tzimmermann@suse.de
2024-05-02 11:33:17 +02:00
Thomas Zimmermann
fcb3694af5
drm/ast: Use fbdev-shmem
...
Implement fbdev emulation with fbdev-shmem. Avoids the overhead of
fbdev-generic's additional shadow buffering. No functional changes.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Dave Airlie <airlied@redhat.com >
Cc: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Jocelyn Falempe <jfalempe@redhat.com >
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-10-tzimmermann@suse.de
2024-05-02 11:33:16 +02:00
Thomas Zimmermann
150f431a08
drm/fbdev: Add fbdev-shmem
...
Add an fbdev emulation for SHMEM-based memory managers. The code is
similar to fbdev-generic, but does not require an additional shadow
buffer for mmap(). Fbdev-shmem operates directly on the buffer object's
SHMEM pages. Fbdev's deferred-I/O mechanism updates the hardware state
on write operations.
The memory pages of GEM SHMEM cannot be detected by fbdefio. Therefore
fbdev-shmem implements the .get_page() hook in struct fb_deferred_io.
The fbdefio helpers call this hook to retrieve the page directly from
fbdev-shmem instead of trying to detect it internally.
v3:
- clarify on get_page mechanism in commit description (Javier)
v2:
- use drm_driver_legacy_fb_format() (Geert)
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-9-tzimmermann@suse.de
2024-05-02 11:33:15 +02:00
Thomas Zimmermann
747bda7bb5
fbdev/deferred-io: Provide get_page hook in struct fb_deferred_io
...
Add a callback for drivers to provide framebuffer pages to fbdev's
deferred-I/O helpers. Implementations need to acquire a reference on
the page before returning it. Returning NULL generates a SIGBUS
signal.
This will be useful for DRM's fbdev emulation with GEM-shmem buffer
objects.
v2:
- fix typo in commit message (Javier)
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-8-tzimmermann@suse.de
2024-05-02 11:33:14 +02:00
Thomas Zimmermann
1ecbc7dd29
fbdev/deferred-io: Always call get_page() for framebuffer pages
...
Unconditionally call get_page() after looking up a page from the
framebuffer memory. Guarantees that we always hold a reference.
This change also refactors the code such that it can support a
driver-supplied get_page helper. This will be useful for DRM's
fbdev emulation.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240419083331.7761-7-tzimmermann@suse.de
2024-05-02 11:33:14 +02:00