<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/gpu/drm/ast/ast_cursor.c, branch linux-rolling-stable</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-rolling-stable</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-rolling-stable'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2026-03-04T12:19:55Z</updated>
<entry>
<title>drm/ast: Swap framebuffer writes on big-endian machines</title>
<updated>2026-03-04T12:19:55Z</updated>
<author>
<name>René Rebe</name>
</author>
<published>2025-12-12T20:05:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3496ef322a7beca525247cc74dd42cf004d3d5c6'/>
<id>urn:sha1:3496ef322a7beca525247cc74dd42cf004d3d5c6</id>
<content type='text'>
[ Upstream commit 50c26c301c5176cc8b431044390e10ec862b9b77 ]

Swap the pixel data when writing to framebuffer memory on big-endian
machines. Fixes incorrect output. Aspeed graphics does not appear to
support big-endian framebuffers after AST2400, although the feature
has been documented.

There's a lengthy discussion at [1].

v5:
- avoid restricted cast from __be16 (kernel test robot)

Signed-off-by: René Rebe &lt;rene@exactco.de&gt;
Link: https://lore.kernel.org/dri-devel/20251202.170626.2134482663677806825.rene@exactco.de/ # [1]
Reviewed-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Link: https://patch.msgid.link/20251212.210504.1355099120650239629.rene@exactco.de
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>drm/ast: Remove vaddr field from struct ast_plane</title>
<updated>2025-04-07T13:08:48Z</updated>
<author>
<name>Thomas Zimmermann</name>
</author>
<published>2025-03-24T09:44:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=23fd03aa6c08fbf1ba0644aae8c30b6166fe39e8'/>
<id>urn:sha1:23fd03aa6c08fbf1ba0644aae8c30b6166fe39e8</id>
<content type='text'>
The vaddr field in struct ast_plane serves no purpose. Its value
can be calculated easily from the VRAM base plus the plane offset.
Do so and remove the field.

In ast_primary_plane_helper_get_scanout_buffer(), remove the test
for vaddr being NULL. This cannot legally happen.

Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Reviewed-by: Jocelyn Falempe &lt;jfalempe@redhat.com&gt;
Link: https://lore.kernel.org/r/20250324094520.192974-3-tzimmermann@suse.de
</content>
</entry>
<entry>
<title>drm/ast: cursor: Drop page alignment</title>
<updated>2025-03-12T07:38:13Z</updated>
<author>
<name>Thomas Zimmermann</name>
</author>
<published>2025-03-05T16:30:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c6a84bc9690afc40b103c5df3cdfb357439cb563'/>
<id>urn:sha1:c6a84bc9690afc40b103c5df3cdfb357439cb563</id>
<content type='text'>
The cursor scanout address requires alignment to a multiple of 8,
but does not require page alignment. Change the offset calculation
accordingly. Frees up a few more bytes for the primary framebuffer.

Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Reviewed-by: Jocelyn Falempe &lt;jfalempe@redhat.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20250305163207.267650-8-tzimmermann@suse.de
</content>
</entry>
<entry>
<title>drm/ast: Remove vram_fb_available from struct ast_device</title>
<updated>2025-03-12T07:38:12Z</updated>
<author>
<name>Thomas Zimmermann</name>
</author>
<published>2025-03-05T16:30:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e5f953b8eae7249bf50f86d79f80327621edc2d5'/>
<id>urn:sha1:e5f953b8eae7249bf50f86d79f80327621edc2d5</id>
<content type='text'>
Helpers compute the offset and size of the available framebuffer
memory. Remove the obsolete field vram_fb_available from struct
ast_device. Also define the cursor-signature size next to its only
user.

v2:
- initialize plane size

Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Reviewed-by: Jocelyn Falempe &lt;jfalempe@redhat.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20250305163207.267650-7-tzimmermann@suse.de
</content>
</entry>
<entry>
<title>drm/ast: cursor: Add helpers for computing location in video memory</title>
<updated>2025-03-12T07:38:11Z</updated>
<author>
<name>Thomas Zimmermann</name>
</author>
<published>2025-03-05T16:30:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4ee3229bbe6cb0e80f1dedcddda8072bb9cc884f'/>
<id>urn:sha1:4ee3229bbe6cb0e80f1dedcddda8072bb9cc884f</id>
<content type='text'>
The ast drivers stores the cursor image at the end of the video memory.
Add helpers to calculate the offset and size.

Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Reviewed-by: Jocelyn Falempe &lt;jfalempe@redhat.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20250305163207.267650-5-tzimmermann@suse.de
</content>
</entry>
<entry>
<title>drm/ast: cursor: Move implementation to separate source file</title>
<updated>2025-02-20T07:38:34Z</updated>
<author>
<name>Thomas Zimmermann</name>
</author>
<published>2025-02-17T12:22:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e82e1a0c22d841f379b1c768469dcdaae650e443'/>
<id>urn:sha1:e82e1a0c22d841f379b1c768469dcdaae650e443</id>
<content type='text'>
Move the cursor code into a separate source file for readability. No
functional changes.

v2:
- include &lt;linux/bits.h&gt;

Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Reviewed-by: Jocelyn Falempe &lt;jfalempe@redhat.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20250217122336.230067-5-tzimmermann@suse.de
</content>
</entry>
<entry>
<title>drm/ast: Inline ast cursor-update functions into modesetting code</title>
<updated>2021-02-17T11:40:05Z</updated>
<author>
<name>Thomas Zimmermann</name>
</author>
<published>2021-02-09T13:46:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=718c22865fc0a9c821e21eacba46829516901374'/>
<id>urn:sha1:718c22865fc0a9c821e21eacba46829516901374</id>
<content type='text'>
The logic for cursor updates is now located in the cursor plane's
modesetting code. A number of helper functions remain to modify the
rsp registers and image.

Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Acked-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20210209134632.12157-6-tzimmermann@suse.de
</content>
</entry>
<entry>
<title>drm/ast: Allocate HW cursor BOs during cursor-plane initialization</title>
<updated>2021-02-17T11:40:01Z</updated>
<author>
<name>Thomas Zimmermann</name>
</author>
<published>2021-02-09T13:46:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=22b6591f7ccb36142dcc0659746649eb9b4856d9'/>
<id>urn:sha1:22b6591f7ccb36142dcc0659746649eb9b4856d9</id>
<content type='text'>
The BOs are eventually released by the cursor plane's destroy callback.

Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Acked-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20210209134632.12157-5-tzimmermann@suse.de
</content>
</entry>
<entry>
<title>drm/ast: Add constants for VGACRCB register bits</title>
<updated>2021-02-17T11:39:29Z</updated>
<author>
<name>Thomas Zimmermann</name>
</author>
<published>2021-02-09T13:46:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4a11bd1e88af130f50a72e0f54391c1c7d268e03'/>
<id>urn:sha1:4a11bd1e88af130f50a72e0f54391c1c7d268e03</id>
<content type='text'>
Set the bits in VGACRCB with constants. Alo move the rsp code into a
helper function.

Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Acked-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20210209134632.12157-2-tzimmermann@suse.de
</content>
</entry>
<entry>
<title>drm/ast: Only map cursor BOs during updates</title>
<updated>2020-12-11T11:35:32Z</updated>
<author>
<name>Thomas Zimmermann</name>
</author>
<published>2020-12-09T14:25:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=78336798ce7122803bb7fbfd96b4c7dbf2119246'/>
<id>urn:sha1:78336798ce7122803bb7fbfd96b4c7dbf2119246</id>
<content type='text'>
The HW cursor's BO used to be mapped permanently into the kernel's
address space. GEM's vmap operation will be protected by locks, and
we don't want to lock the BO's for an indefinate period of time.

Change the cursor code to map the HW BOs only during updates. The
vmap operation in VRAM helpers is cheap, as a once estabished mapping
is being reused until the BO actually moves. As the HW cursor BOs are
permanently pinned, they never move at all.

v2:
	* fix typos in commit description

Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Acked-by: Christian König &lt;christian.koenig@amd.com&gt;
Acked-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20201209142527.26415-3-tzimmermann@suse.de
</content>
</entry>
</feed>
