* [PATCH v5 0/4] EFI fbcon fixes etc
@ 2025-12-08 19:39 Tvrtko Ursulin
2025-12-08 19:39 ` [PATCH v5 1/4] efi: sysfb_efi: Replace open coded swap with the macro Tvrtko Ursulin
` (4 more replies)
0 siblings, 5 replies; 8+ messages in thread
From: Tvrtko Ursulin @ 2025-12-08 19:39 UTC (permalink / raw)
To: dri-devel
Cc: kernel-dev, Tvrtko Ursulin, Thomas Zimmermann, Ard Biesheuvel,
Melissa Wen, linux-efi
From: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Two generic fixes split out for easy review, one refactoring as requested, and
then the last patch is the panel/mode quirk to allow for corruption free fbcon
with simpledrmfb and efidrmfb on the Valve Steam Deck.
v2:
* s/unsigned/unsigned int/
* s/pitch/linelength/
* Removed comment explaining the Steam Deck quirk.
* Added patch to refactor quirk application via callbacks.
v3:
* Added forgotten __initconst.
* Use separate callback for the fixup quirk.
v4:
* Use __screen_info_lfb_bits_per_pixel() instead of accessing lfb_depth directly.
v5:
* s/lfb_width/bpp/.
* Grammar and typo tidy in the last patch.
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Melissa Wen <mwen@igalia.com>
Cc: linux-efi@vger.kernel.org
Tvrtko Ursulin (4):
efi: sysfb_efi: Replace open coded swap with the macro
efi: sysfb_efi: Fix lfb_linelength calculation when applying quirks
efi: sysfb_efi: Convert swap width and height quirk to a callback
efi: sysfb_efi: Fix efidrmfb and simpledrmfb on Valve Steam Deck
drivers/firmware/efi/sysfb_efi.c | 73 ++++++++++++++++++++++++++++----
1 file changed, 65 insertions(+), 8 deletions(-)
--
2.52.0
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v5 1/4] efi: sysfb_efi: Replace open coded swap with the macro
2025-12-08 19:39 [PATCH v5 0/4] EFI fbcon fixes etc Tvrtko Ursulin
@ 2025-12-08 19:39 ` Tvrtko Ursulin
2025-12-08 19:39 ` [PATCH v5 2/4] efi: sysfb_efi: Fix lfb_linelength calculation when applying quirks Tvrtko Ursulin
` (3 subsequent siblings)
4 siblings, 0 replies; 8+ messages in thread
From: Tvrtko Ursulin @ 2025-12-08 19:39 UTC (permalink / raw)
To: dri-devel
Cc: kernel-dev, Tvrtko Ursulin, Thomas Zimmermann, Ard Biesheuvel,
Melissa Wen, linux-efi
From: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Replace the open coded width height swap with the standard macro.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Suggested-by: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Melissa Wen <mwen@igalia.com>
Cc: linux-efi@vger.kernel.org
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
Tested-by: Melissa Wen <mwen@igalia.com> # v3
---
drivers/firmware/efi/sysfb_efi.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/drivers/firmware/efi/sysfb_efi.c b/drivers/firmware/efi/sysfb_efi.c
index 1e509595ac03..1d8b6966731c 100644
--- a/drivers/firmware/efi/sysfb_efi.c
+++ b/drivers/firmware/efi/sysfb_efi.c
@@ -357,10 +357,7 @@ __init void sysfb_apply_efi_quirks(void)
if (screen_info.orig_video_isVGA == VIDEO_TYPE_EFI &&
dmi_check_system(efifb_dmi_swap_width_height)) {
- u16 temp = screen_info.lfb_width;
-
- screen_info.lfb_width = screen_info.lfb_height;
- screen_info.lfb_height = temp;
+ swap(screen_info.lfb_width, screen_info.lfb_height);
screen_info.lfb_linelength = 4 * screen_info.lfb_width;
}
}
--
2.52.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v5 2/4] efi: sysfb_efi: Fix lfb_linelength calculation when applying quirks
2025-12-08 19:39 [PATCH v5 0/4] EFI fbcon fixes etc Tvrtko Ursulin
2025-12-08 19:39 ` [PATCH v5 1/4] efi: sysfb_efi: Replace open coded swap with the macro Tvrtko Ursulin
@ 2025-12-08 19:39 ` Tvrtko Ursulin
2025-12-09 6:20 ` Thomas Zimmermann
2025-12-08 19:39 ` [PATCH v5 3/4] efi: sysfb_efi: Convert swap width and height quirk to a callback Tvrtko Ursulin
` (2 subsequent siblings)
4 siblings, 1 reply; 8+ messages in thread
From: Tvrtko Ursulin @ 2025-12-08 19:39 UTC (permalink / raw)
To: dri-devel
Cc: kernel-dev, Tvrtko Ursulin, Thomas Zimmermann, Ard Biesheuvel,
Melissa Wen, linux-efi
From: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
PIXEL_BIT_MASK formats can have either less or more than four bytes per
pixel so lets fix the lfb_linelenght calculation when applying the
swapped width and height quirks.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Suggested-by: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Melissa Wen <mwen@igalia.com>
Cc: linux-efi@vger.kernel.org
Tested-by: Melissa Wen <mwen@igalia.com> # v3
---
drivers/firmware/efi/sysfb_efi.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/firmware/efi/sysfb_efi.c b/drivers/firmware/efi/sysfb_efi.c
index 1d8b6966731c..60495eb3441c 100644
--- a/drivers/firmware/efi/sysfb_efi.c
+++ b/drivers/firmware/efi/sysfb_efi.c
@@ -357,8 +357,11 @@ __init void sysfb_apply_efi_quirks(void)
if (screen_info.orig_video_isVGA == VIDEO_TYPE_EFI &&
dmi_check_system(efifb_dmi_swap_width_height)) {
+ u32 bpp = __screen_info_lfb_bits_per_pixel(&screen_info);
+
swap(screen_info.lfb_width, screen_info.lfb_height);
- screen_info.lfb_linelength = 4 * screen_info.lfb_width;
+ screen_info.lfb_linelength = bpp * screen_info.lfb_width /
+ BITS_PER_BYTE;
}
}
--
2.52.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v5 3/4] efi: sysfb_efi: Convert swap width and height quirk to a callback
2025-12-08 19:39 [PATCH v5 0/4] EFI fbcon fixes etc Tvrtko Ursulin
2025-12-08 19:39 ` [PATCH v5 1/4] efi: sysfb_efi: Replace open coded swap with the macro Tvrtko Ursulin
2025-12-08 19:39 ` [PATCH v5 2/4] efi: sysfb_efi: Fix lfb_linelength calculation when applying quirks Tvrtko Ursulin
@ 2025-12-08 19:39 ` Tvrtko Ursulin
2025-12-08 19:39 ` [PATCH v5 4/4] efi: sysfb_efi: Fix efidrmfb and simpledrmfb on Valve Steam Deck Tvrtko Ursulin
2025-12-09 2:05 ` [PATCH v5 0/4] EFI fbcon fixes etc Ard Biesheuvel
4 siblings, 0 replies; 8+ messages in thread
From: Tvrtko Ursulin @ 2025-12-08 19:39 UTC (permalink / raw)
To: dri-devel
Cc: kernel-dev, Tvrtko Ursulin, Ard Biesheuvel, Thomas Zimmermann,
Melissa Wen, linux-efi
From: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Convert the swapping of width and height quirk to a callback.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Suggested-by: Ard Biesheuvel <ardb@kernel.org>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Melissa Wen <mwen@igalia.com>
Cc: linux-efi@vger.kernel.org
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
Tested-by: Melissa Wen <mwen@igalia.com> # v3
---
drivers/firmware/efi/sysfb_efi.c | 26 ++++++++++++++++++--------
1 file changed, 18 insertions(+), 8 deletions(-)
diff --git a/drivers/firmware/efi/sysfb_efi.c b/drivers/firmware/efi/sysfb_efi.c
index 60495eb3441c..85f6399d5e1f 100644
--- a/drivers/firmware/efi/sysfb_efi.c
+++ b/drivers/firmware/efi/sysfb_efi.c
@@ -231,6 +231,17 @@ static const struct dmi_system_id efifb_dmi_system_table[] __initconst = {
{},
};
+static int __init efifb_swap_width_height(const struct dmi_system_id *id)
+{
+ u32 bpp = __screen_info_lfb_bits_per_pixel(&screen_info);
+
+ swap(screen_info.lfb_width, screen_info.lfb_height);
+ screen_info.lfb_linelength = bpp * screen_info.lfb_width /
+ BITS_PER_BYTE;
+
+ return 1;
+}
+
/*
* Some devices have a portrait LCD but advertise a landscape resolution (and
* pitch). We simply swap width and height for these devices so that we can
@@ -248,6 +259,7 @@ static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = {
DMI_EXACT_MATCH(DMI_PRODUCT_VERSION, "MIIX 310-10ICR"),
DMI_EXACT_MATCH(DMI_BIOS_VERSION, "1HCN44WW"),
},
+ .callback = efifb_swap_width_height,
},
{
/* Lenovo MIIX 320-10ICR with 800x1280 portrait screen */
@@ -256,6 +268,7 @@ static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = {
DMI_EXACT_MATCH(DMI_PRODUCT_VERSION,
"Lenovo MIIX 320-10ICR"),
},
+ .callback = efifb_swap_width_height,
},
{
/* Lenovo D330 with 800x1280 or 1200x1920 portrait screen */
@@ -264,6 +277,7 @@ static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = {
DMI_EXACT_MATCH(DMI_PRODUCT_VERSION,
"Lenovo ideapad D330-10IGM"),
},
+ .callback = efifb_swap_width_height,
},
{
/* Lenovo IdeaPad Duet 3 10IGL5 with 1200x1920 portrait screen */
@@ -272,6 +286,7 @@ static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = {
DMI_EXACT_MATCH(DMI_PRODUCT_VERSION,
"IdeaPad Duet 3 10IGL5"),
},
+ .callback = efifb_swap_width_height,
},
{
/* Lenovo Yoga Book X91F / X91L */
@@ -280,6 +295,7 @@ static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = {
/* Non exact match to match F + L versions */
DMI_MATCH(DMI_PRODUCT_NAME, "Lenovo YB1-X91"),
},
+ .callback = efifb_swap_width_height,
},
{},
};
@@ -355,14 +371,8 @@ __init void sysfb_apply_efi_quirks(void)
!(screen_info.capabilities & VIDEO_CAPABILITY_SKIP_QUIRKS))
dmi_check_system(efifb_dmi_system_table);
- if (screen_info.orig_video_isVGA == VIDEO_TYPE_EFI &&
- dmi_check_system(efifb_dmi_swap_width_height)) {
- u32 bpp = __screen_info_lfb_bits_per_pixel(&screen_info);
-
- swap(screen_info.lfb_width, screen_info.lfb_height);
- screen_info.lfb_linelength = bpp * screen_info.lfb_width /
- BITS_PER_BYTE;
- }
+ if (screen_info.orig_video_isVGA == VIDEO_TYPE_EFI)
+ dmi_check_system(efifb_dmi_swap_width_height);
}
__init void sysfb_set_efifb_fwnode(struct platform_device *pd)
--
2.52.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v5 4/4] efi: sysfb_efi: Fix efidrmfb and simpledrmfb on Valve Steam Deck
2025-12-08 19:39 [PATCH v5 0/4] EFI fbcon fixes etc Tvrtko Ursulin
` (2 preceding siblings ...)
2025-12-08 19:39 ` [PATCH v5 3/4] efi: sysfb_efi: Convert swap width and height quirk to a callback Tvrtko Ursulin
@ 2025-12-08 19:39 ` Tvrtko Ursulin
2025-12-09 2:05 ` [PATCH v5 0/4] EFI fbcon fixes etc Ard Biesheuvel
4 siblings, 0 replies; 8+ messages in thread
From: Tvrtko Ursulin @ 2025-12-08 19:39 UTC (permalink / raw)
To: dri-devel
Cc: kernel-dev, Tvrtko Ursulin, Thomas Zimmermann, Ard Biesheuvel,
Melissa Wen, linux-efi
From: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Valve Steam Deck has a 800x1280 portrait screen installed in a landscape
orientation. The firmware offers a software-rotated 1280x800 mode, which
GRUB can be made to switch to when displaying a boot menu. If this mode
was selected frame buffer drivers will see this fake mode and fbcon
rendering will be corrupted.
Let us therefore add a selective quirk inside the current "swap with and
height" handling, which will detect this exact mode and fix it up back to
the native one.
This will allow the DRM-based framebuffer drivers to detect the correct
mode, apply the existing panel orientation quirk, and render the console
in landscape mode with no corruption.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Melissa Wen <mwen@igalia.com>
Cc: linux-efi@vger.kernel.org
Tested-by: Melissa Wen <mwen@igalia.com> # v3
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
---
drivers/firmware/efi/sysfb_efi.c | 47 ++++++++++++++++++++++++++++++++
1 file changed, 47 insertions(+)
diff --git a/drivers/firmware/efi/sysfb_efi.c b/drivers/firmware/efi/sysfb_efi.c
index 85f6399d5e1f..88e4fd4b0a3f 100644
--- a/drivers/firmware/efi/sysfb_efi.c
+++ b/drivers/firmware/efi/sysfb_efi.c
@@ -242,6 +242,33 @@ static int __init efifb_swap_width_height(const struct dmi_system_id *id)
return 1;
}
+struct efifb_mode_fixup {
+ unsigned int width;
+ unsigned int height;
+ unsigned int linelength;
+};
+
+static int __init
+efifb_check_and_swap_width_height(const struct dmi_system_id *id)
+{
+ const struct efifb_mode_fixup *data = id->driver_data;
+
+ if (data->width == screen_info.lfb_width &&
+ data->height == screen_info.lfb_height) {
+ swap(screen_info.lfb_width, screen_info.lfb_height);
+ screen_info.lfb_linelength = data->linelength;
+ screen_info.lfb_size = data->linelength * data->width;
+ }
+
+ return 1;
+}
+
+static const struct efifb_mode_fixup efifb_steamdeck_mode_fixup __initconst = {
+ .width = 1280,
+ .height = 800,
+ .linelength = 3328,
+};
+
/*
* Some devices have a portrait LCD but advertise a landscape resolution (and
* pitch). We simply swap width and height for these devices so that we can
@@ -297,6 +324,26 @@ static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = {
},
.callback = efifb_swap_width_height,
},
+ {
+ /* Valve Steam Deck (Jupiter) */
+ .matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Valve"),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Jupiter"),
+ DMI_EXACT_MATCH(DMI_PRODUCT_VERSION, "1"),
+ },
+ .callback = efifb_check_and_swap_width_height,
+ .driver_data = (void *)&efifb_steamdeck_mode_fixup,
+ },
+ {
+ /* Valve Steam Deck (Galileo) */
+ .matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Valve"),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Galileo"),
+ DMI_EXACT_MATCH(DMI_PRODUCT_VERSION, "1"),
+ },
+ .callback = efifb_check_and_swap_width_height,
+ .driver_data = (void *)&efifb_steamdeck_mode_fixup,
+ },
{},
};
--
2.52.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v5 0/4] EFI fbcon fixes etc
2025-12-08 19:39 [PATCH v5 0/4] EFI fbcon fixes etc Tvrtko Ursulin
` (3 preceding siblings ...)
2025-12-08 19:39 ` [PATCH v5 4/4] efi: sysfb_efi: Fix efidrmfb and simpledrmfb on Valve Steam Deck Tvrtko Ursulin
@ 2025-12-09 2:05 ` Ard Biesheuvel
2025-12-16 13:24 ` Ard Biesheuvel
4 siblings, 1 reply; 8+ messages in thread
From: Ard Biesheuvel @ 2025-12-09 2:05 UTC (permalink / raw)
To: Tvrtko Ursulin
Cc: dri-devel, kernel-dev, Tvrtko Ursulin, Thomas Zimmermann,
Melissa Wen, linux-efi
On Tue, 9 Dec 2025 at 04:39, Tvrtko Ursulin <tursulin@igalia.com> wrote:
>
> From: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
>
> Two generic fixes split out for easy review, one refactoring as requested, and
> then the last patch is the panel/mode quirk to allow for corruption free fbcon
> with simpledrmfb and efidrmfb on the Valve Steam Deck.
>
> v2:
> * s/unsigned/unsigned int/
> * s/pitch/linelength/
> * Removed comment explaining the Steam Deck quirk.
> * Added patch to refactor quirk application via callbacks.
>
> v3:
> * Added forgotten __initconst.
> * Use separate callback for the fixup quirk.
>
> v4:
> * Use __screen_info_lfb_bits_per_pixel() instead of accessing lfb_depth directly.
>
> v5:
> * s/lfb_width/bpp/.
> * Grammar and typo tidy in the last patch.
>
> Cc: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: Ard Biesheuvel <ardb@kernel.org>
> Cc: Melissa Wen <mwen@igalia.com>
> Cc: linux-efi@vger.kernel.org
>
> Tvrtko Ursulin (4):
> efi: sysfb_efi: Replace open coded swap with the macro
> efi: sysfb_efi: Fix lfb_linelength calculation when applying quirks
> efi: sysfb_efi: Convert swap width and height quirk to a callback
> efi: sysfb_efi: Fix efidrmfb and simpledrmfb on Valve Steam Deck
>
> drivers/firmware/efi/sysfb_efi.c | 73 ++++++++++++++++++++++++++++----
> 1 file changed, 65 insertions(+), 8 deletions(-)
>
This looks fine to me now. Unless there are more comments, I intend to
get this queued up as soon as -rc1 comes around.
Thanks
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v5 2/4] efi: sysfb_efi: Fix lfb_linelength calculation when applying quirks
2025-12-08 19:39 ` [PATCH v5 2/4] efi: sysfb_efi: Fix lfb_linelength calculation when applying quirks Tvrtko Ursulin
@ 2025-12-09 6:20 ` Thomas Zimmermann
0 siblings, 0 replies; 8+ messages in thread
From: Thomas Zimmermann @ 2025-12-09 6:20 UTC (permalink / raw)
To: Tvrtko Ursulin, dri-devel
Cc: kernel-dev, Tvrtko Ursulin, Ard Biesheuvel, Melissa Wen,
linux-efi
Am 08.12.25 um 20:39 schrieb Tvrtko Ursulin:
> From: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
>
> PIXEL_BIT_MASK formats can have either less or more than four bytes per
> pixel so lets fix the lfb_linelenght calculation when applying the
> swapped width and height quirks.
>
> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
> Suggested-by: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: Ard Biesheuvel <ardb@kernel.org>
> Cc: Melissa Wen <mwen@igalia.com>
> Cc: linux-efi@vger.kernel.org
> Tested-by: Melissa Wen <mwen@igalia.com> # v3
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
> ---
> drivers/firmware/efi/sysfb_efi.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/firmware/efi/sysfb_efi.c b/drivers/firmware/efi/sysfb_efi.c
> index 1d8b6966731c..60495eb3441c 100644
> --- a/drivers/firmware/efi/sysfb_efi.c
> +++ b/drivers/firmware/efi/sysfb_efi.c
> @@ -357,8 +357,11 @@ __init void sysfb_apply_efi_quirks(void)
>
> if (screen_info.orig_video_isVGA == VIDEO_TYPE_EFI &&
> dmi_check_system(efifb_dmi_swap_width_height)) {
> + u32 bpp = __screen_info_lfb_bits_per_pixel(&screen_info);
> +
> swap(screen_info.lfb_width, screen_info.lfb_height);
> - screen_info.lfb_linelength = 4 * screen_info.lfb_width;
> + screen_info.lfb_linelength = bpp * screen_info.lfb_width /
> + BITS_PER_BYTE;
> }
> }
>
--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com
GF: Jochen Jaser, Andrew McDonald, Werner Knoblich, (HRB 36809, AG Nürnberg)
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v5 0/4] EFI fbcon fixes etc
2025-12-09 2:05 ` [PATCH v5 0/4] EFI fbcon fixes etc Ard Biesheuvel
@ 2025-12-16 13:24 ` Ard Biesheuvel
0 siblings, 0 replies; 8+ messages in thread
From: Ard Biesheuvel @ 2025-12-16 13:24 UTC (permalink / raw)
To: Tvrtko Ursulin
Cc: dri-devel, kernel-dev, Tvrtko Ursulin, Thomas Zimmermann,
Melissa Wen, linux-efi
On Tue, 9 Dec 2025 at 03:05, Ard Biesheuvel <ardb@kernel.org> wrote:
>
> On Tue, 9 Dec 2025 at 04:39, Tvrtko Ursulin <tursulin@igalia.com> wrote:
> >
> > From: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
> >
> > Two generic fixes split out for easy review, one refactoring as requested, and
> > then the last patch is the panel/mode quirk to allow for corruption free fbcon
> > with simpledrmfb and efidrmfb on the Valve Steam Deck.
> >
> > v2:
> > * s/unsigned/unsigned int/
> > * s/pitch/linelength/
> > * Removed comment explaining the Steam Deck quirk.
> > * Added patch to refactor quirk application via callbacks.
> >
> > v3:
> > * Added forgotten __initconst.
> > * Use separate callback for the fixup quirk.
> >
> > v4:
> > * Use __screen_info_lfb_bits_per_pixel() instead of accessing lfb_depth directly.
> >
> > v5:
> > * s/lfb_width/bpp/.
> > * Grammar and typo tidy in the last patch.
> >
> > Cc: Thomas Zimmermann <tzimmermann@suse.de>
> > Cc: Ard Biesheuvel <ardb@kernel.org>
> > Cc: Melissa Wen <mwen@igalia.com>
> > Cc: linux-efi@vger.kernel.org
> >
> > Tvrtko Ursulin (4):
> > efi: sysfb_efi: Replace open coded swap with the macro
> > efi: sysfb_efi: Fix lfb_linelength calculation when applying quirks
> > efi: sysfb_efi: Convert swap width and height quirk to a callback
> > efi: sysfb_efi: Fix efidrmfb and simpledrmfb on Valve Steam Deck
> >
> > drivers/firmware/efi/sysfb_efi.c | 73 ++++++++++++++++++++++++++++----
> > 1 file changed, 65 insertions(+), 8 deletions(-)
> >
>
> This looks fine to me now. Unless there are more comments, I intend to
> get this queued up as soon as -rc1 comes around.
>
Queued up now, thanks.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2025-12-16 13:24 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-08 19:39 [PATCH v5 0/4] EFI fbcon fixes etc Tvrtko Ursulin
2025-12-08 19:39 ` [PATCH v5 1/4] efi: sysfb_efi: Replace open coded swap with the macro Tvrtko Ursulin
2025-12-08 19:39 ` [PATCH v5 2/4] efi: sysfb_efi: Fix lfb_linelength calculation when applying quirks Tvrtko Ursulin
2025-12-09 6:20 ` Thomas Zimmermann
2025-12-08 19:39 ` [PATCH v5 3/4] efi: sysfb_efi: Convert swap width and height quirk to a callback Tvrtko Ursulin
2025-12-08 19:39 ` [PATCH v5 4/4] efi: sysfb_efi: Fix efidrmfb and simpledrmfb on Valve Steam Deck Tvrtko Ursulin
2025-12-09 2:05 ` [PATCH v5 0/4] EFI fbcon fixes etc Ard Biesheuvel
2025-12-16 13:24 ` Ard Biesheuvel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).