Commit Graph

16 Commits

Author SHA1 Message Date
Jocelyn Falempe 9b8bfbb7b7 firmware/sysfb: Set firmware-framebuffer parent device
JIRA: https://issues.redhat.com/browse/RHEL-53899
Upstream Status: v6.9-rc1

commit 9eac534db0013aff9b9124985dab114600df9081
Author:     Thomas Zimmermann <tzimmermann@suse.de>
AuthorDate: Mon Feb 12 10:06:11 2024 +0100
Commit:     Thomas Zimmermann <tzimmermann@suse.de>
CommitDate: Wed Feb 14 10:09:17 2024 +0100

    Set the firmware framebuffer's parent device, which usually is the
    graphics hardware's physical device. Integrates the framebuffer in
    the Linux device hierarchy and lets Linux handle dependencies among
    devices. For example, the graphics hardware won't be suspended while
    the firmware device is still active.

    v4:
    	* fix build for CONFIG_SYSFB_SIMPLEFB=n, again
    v3:
    	* fix build for CONFIG_SYSFB_SIMPLEFB=n (Sui)
    	* test result of screen_info_pci_dev() for errors (Sui)
    v2:
    	* detect parent device in sysfb_parent_dev()

    Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
    Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20240212090736.11464-4-tzimmermann@suse.de

Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com>
2024-11-20 11:19:52 +01:00
Paolo Bonzini e88b91c8ab firmware/sysfb: Fix VESA format selection
JIRA: https://issues.redhat.com/browse/RHEL-10059

Some legacy BIOSes report no reserved bits in their 32-bit rgb mode,
breaking the calculation of bits_per_pixel in  commit f35cd3fa7729
("firmware/sysfb: Fix EFI/VESA format selection").  However they report
lfb_depth correctly for those modes.  Keep the computation but
set bits_per_pixel to lfb_depth if the latter is larger.

v2 fixes the warnings from a max3() macro with arguments of different
types;  split the bits_per_pixel assignment to avoid uglyfing the code
with too many typecasts.

v3 fixes space and formatting blips pointed out by Javier, and change
the bit_per_pixel assignment back to a single statement using two casts.

v4 go back to v2 and use max_t()

Signed-off-by: Pierre Asselin <pa@panix.com>
Fixes: f35cd3fa7729 ("firmware/sysfb: Fix EFI/VESA format selection")
Link: https://lore.kernel.org/r/4Psm6B6Lqkz1QXM@panix3.panix.com
Link: https://lore.kernel.org/r/20230412150225.3757223-1-javierm@redhat.com
Tested-by: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20230419044834.10816-1-pa@panix.com
(cherry picked from commit 1b617bc93178912fa36f87a957c15d1f1708c299)
Signed-off-by: Sebastian Ott <sebott@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-30 09:09:37 +01:00
Paolo Bonzini f1befa9649 efi: sysfb_efi: Fix DMI quirks not working for simpledrm
JIRA: https://issues.redhat.com/browse/RHEL-10059

Commit 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup
for all arches") moved the sysfb_apply_efi_quirks() call in sysfb_init()
from before the [sysfb_]parse_mode() call to after it.
But sysfb_apply_efi_quirks() modifies the global screen_info struct which
[sysfb_]parse_mode() parses, so doing it later is too late.

This has broken all DMI based quirks for correcting wrong firmware efifb
settings when simpledrm is used.

To fix this move the sysfb_apply_efi_quirks() call back to its old place
and split the new setup of the efifb_fwnode (which requires
the platform_device) into its own function and call that at
the place of the moved sysfb_apply_efi_quirks(pd) calls.

Fixes: 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup for all arches")
Cc: stable@vger.kernel.org
Cc: Javier Martinez Canillas <javierm@redhat.com>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
(cherry picked from commit 3615c78673c332b69aaacefbcde5937c5c706686)
Signed-off-by: Sebastian Ott <sebott@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-30 09:09:36 +01:00
Paolo Bonzini 6d76ae8703 firmware/sysfb: Fix EFI/VESA format selection
JIRA: https://issues.redhat.com/browse/RHEL-10059

Select color format for EFI/VESA firmware scanout buffer from the
number of bits per pixel and the position of the individual color
components. Fixes the selected format for the buffer in several odd
cases. For example, XRGB1555 has been reported as ARGB1555 because
of the different use of depth and transparency in VESA and Linux.

Bits-per-pixel is always the pixel's raw number of bits; including
alpha and filler bits. It is preferred over color depth, which has a
different meaning among various components and standards.

Also do not compare reserved bits and transparency bits to each other.
These values have different meanings, as reserved bits include filler
bits while transparency does not.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230102112927.26565-2-tzimmermann@suse.de
(cherry picked from commit f35cd3fa77293c2cd03e94b6a6151e1a7d9309cf)
Signed-off-by: Sebastian Ott <sebott@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-30 09:09:35 +01:00
Lenny Szubowicz 2795929364 Revert "firmware/sysfb: Fix EFI/VESA format selection"
Bugzilla: https://bugzilla.redhat.com/2234390

Upstream Status: RHEL only

This commit is part of a series which reverts
https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/2687
whose purpose was to address https://bugzilla.redhat.com/2183343

This reverts centos-stream-9 commit 68b5448ed7

commit 68b5448ed7
Author: Sebastian Ott <sebott@redhat.com>
Date:   Tue Jun 20 12:51:36 2023 -0400

    firmware/sysfb: Fix EFI/VESA format selection

    Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2183343

    Select color format for EFI/VESA firmware scanout buffer from the
    number of bits per pixel and the position of the individual color
    components. Fixes the selected format for the buffer in several odd
    cases. For example, XRGB1555 has been reported as ARGB1555 because
    of the different use of depth and transparency in VESA and Linux.

    Bits-per-pixel is always the pixel's raw number of bits; including
    alpha and filler bits. It is preferred over color depth, which has a
    different meaning among various components and standards.

    Also do not compare reserved bits and transparency bits to each other.
    These values have different meanings, as reserved bits include filler
    bits while transparency does not.

    Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
    Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20230102112927.26565-2-tzimmermann@suse.de
    (cherry picked from commit f35cd3fa77293c2cd03e94b6a6151e1a7d9309cf)
    Signed-off-by: Sebastian Ott <sebott@redhat.com>

Signed-off-by: Lenny Szubowicz <lszubowi@redhat.com>
2023-08-31 22:40:37 -04:00
Lenny Szubowicz ecffc19e7f Revert "efi: sysfb_efi: Fix DMI quirks not working for simpledrm"
Bugzilla: https://bugzilla.redhat.com/2234390

Upstream Status: RHEL only

This commit is part of a series which reverts
https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/2687
whose purpose was to address https://bugzilla.redhat.com/2183343

This reverts centos-stream-9 commit 3fc75d1b35

commit 3fc75d1b35
Author: Sebastian Ott <sebott@redhat.com>
Date:   Tue Jun 20 12:51:48 2023 -0400

    efi: sysfb_efi: Fix DMI quirks not working for simpledrm

    Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2183343

    Commit 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup
    for all arches") moved the sysfb_apply_efi_quirks() call in sysfb_init()
    from before the [sysfb_]parse_mode() call to after it.
    But sysfb_apply_efi_quirks() modifies the global screen_info struct which
    [sysfb_]parse_mode() parses, so doing it later is too late.

    This has broken all DMI based quirks for correcting wrong firmware efifb
    settings when simpledrm is used.

    To fix this move the sysfb_apply_efi_quirks() call back to its old place
    and split the new setup of the efifb_fwnode (which requires
    the platform_device) into its own function and call that at
    the place of the moved sysfb_apply_efi_quirks(pd) calls.

    Fixes: 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup for all arches")
    Cc: stable@vger.kernel.org
    Cc: Javier Martinez Canillas <javierm@redhat.com>
    Cc: Thomas Zimmermann <tzimmermann@suse.de>
    Signed-off-by: Hans de Goede <hdegoede@redhat.com>
    Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
    Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
    (cherry picked from commit 3615c78673c332b69aaacefbcde5937c5c706686)
    Signed-off-by: Sebastian Ott <sebott@redhat.com>

Signed-off-by: Lenny Szubowicz <lszubowi@redhat.com>
2023-08-31 22:40:35 -04:00
Lenny Szubowicz c81062e5d4 Revert "firmware/sysfb: Fix VESA format selection"
Bugzilla: https://bugzilla.redhat.com/2234390

Upstream Status: RHEL only

This commit is part of a series which reverts
https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/2687
whose purpose was to address https://bugzilla.redhat.com/2183343

This reverts centos-stream-9 commit 1c8ac7d558

commit 1c8ac7d558
Author: Sebastian Ott <sebott@redhat.com>
Date:   Tue Jun 20 12:51:50 2023 -0400

    firmware/sysfb: Fix VESA format selection

    Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2183343

    Some legacy BIOSes report no reserved bits in their 32-bit rgb mode,
    breaking the calculation of bits_per_pixel in  commit f35cd3fa7729
    ("firmware/sysfb: Fix EFI/VESA format selection").  However they report
    lfb_depth correctly for those modes.  Keep the computation but
    set bits_per_pixel to lfb_depth if the latter is larger.

    v2 fixes the warnings from a max3() macro with arguments of different
    types;  split the bits_per_pixel assignment to avoid uglyfing the code
    with too many typecasts.

    v3 fixes space and formatting blips pointed out by Javier, and change
    the bit_per_pixel assignment back to a single statement using two casts.

    v4 go back to v2 and use max_t()

    Signed-off-by: Pierre Asselin <pa@panix.com>
    Fixes: f35cd3fa7729 ("firmware/sysfb: Fix EFI/VESA format selection")
    Link: https://lore.kernel.org/r/4Psm6B6Lqkz1QXM@panix3.panix.com
    Link: https://lore.kernel.org/r/20230412150225.3757223-1-javierm@redhat.com
    Tested-by: Thomas Zimmermann <tzimmermann@suse.de>
    Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
    Link: https://patchwork.freedesktop.org/patch/msgid/20230419044834.10816-1-pa@panix.com
    (cherry picked from commit 1b617bc93178912fa36f87a957c15d1f1708c299)
    Signed-off-by: Sebastian Ott <sebott@redhat.com>

Signed-off-by: Lenny Szubowicz <lszubowi@redhat.com>
2023-08-31 22:40:34 -04:00
Sebastian Ott 1c8ac7d558 firmware/sysfb: Fix VESA format selection
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2183343

Some legacy BIOSes report no reserved bits in their 32-bit rgb mode,
breaking the calculation of bits_per_pixel in  commit f35cd3fa7729
("firmware/sysfb: Fix EFI/VESA format selection").  However they report
lfb_depth correctly for those modes.  Keep the computation but
set bits_per_pixel to lfb_depth if the latter is larger.

v2 fixes the warnings from a max3() macro with arguments of different
types;  split the bits_per_pixel assignment to avoid uglyfing the code
with too many typecasts.

v3 fixes space and formatting blips pointed out by Javier, and change
the bit_per_pixel assignment back to a single statement using two casts.

v4 go back to v2 and use max_t()

Signed-off-by: Pierre Asselin <pa@panix.com>
Fixes: f35cd3fa7729 ("firmware/sysfb: Fix EFI/VESA format selection")
Link: https://lore.kernel.org/r/4Psm6B6Lqkz1QXM@panix3.panix.com
Link: https://lore.kernel.org/r/20230412150225.3757223-1-javierm@redhat.com
Tested-by: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20230419044834.10816-1-pa@panix.com
(cherry picked from commit 1b617bc93178912fa36f87a957c15d1f1708c299)
Signed-off-by: Sebastian Ott <sebott@redhat.com>
2023-08-15 14:38:28 +02:00
Sebastian Ott 3fc75d1b35 efi: sysfb_efi: Fix DMI quirks not working for simpledrm
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2183343

Commit 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup
for all arches") moved the sysfb_apply_efi_quirks() call in sysfb_init()
from before the [sysfb_]parse_mode() call to after it.
But sysfb_apply_efi_quirks() modifies the global screen_info struct which
[sysfb_]parse_mode() parses, so doing it later is too late.

This has broken all DMI based quirks for correcting wrong firmware efifb
settings when simpledrm is used.

To fix this move the sysfb_apply_efi_quirks() call back to its old place
and split the new setup of the efifb_fwnode (which requires
the platform_device) into its own function and call that at
the place of the moved sysfb_apply_efi_quirks(pd) calls.

Fixes: 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup for all arches")
Cc: stable@vger.kernel.org
Cc: Javier Martinez Canillas <javierm@redhat.com>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
(cherry picked from commit 3615c78673c332b69aaacefbcde5937c5c706686)
Signed-off-by: Sebastian Ott <sebott@redhat.com>
2023-08-09 15:18:53 +02:00
Sebastian Ott 68b5448ed7 firmware/sysfb: Fix EFI/VESA format selection
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2183343

Select color format for EFI/VESA firmware scanout buffer from the
number of bits per pixel and the position of the individual color
components. Fixes the selected format for the buffer in several odd
cases. For example, XRGB1555 has been reported as ARGB1555 because
of the different use of depth and transparency in VESA and Linux.

Bits-per-pixel is always the pixel's raw number of bits; including
alpha and filler bits. It is preferred over color depth, which has a
different meaning among various components and standards.

Also do not compare reserved bits and transparency bits to each other.
These values have different meanings, as reserved bits include filler
bits while transparency does not.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230102112927.26565-2-tzimmermann@suse.de
(cherry picked from commit f35cd3fa77293c2cd03e94b6a6151e1a7d9309cf)
Signed-off-by: Sebastian Ott <sebott@redhat.com>
2023-08-09 14:35:19 +02:00
Karol Herbst ac84a344d6 firmware: sysfb: Make sysfb_create_simplefb() return a pdev pointer
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2115876
Upstream Status: v5.19-rc5

commit 9e121040e54abef9ed5542e5fdfa87911cd96204
Author:     Javier Martinez Canillas <javierm@redhat.com>
AuthorDate: Tue Jun  7 20:23:34 2022 +0200
Commit:     Javier Martinez Canillas <javierm@redhat.com>
CommitDate: Wed Jun 29 09:51:31 2022 +0200

    This function just returned 0 on success or an errno code on error, but it
    could be useful for sysfb_init() callers to have a pointer to the device.

    Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
    Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
    Link: https://patchwork.freedesktop.org/patch/msgid/20220607182338.344270-2-javierm@redhat.com

Signed-off-by: Karol Herbst <kherbst@redhat.com>
2022-12-01 16:05:52 +01:00
Al Stone 9d4c117f4f firmware: sysfb: fix platform-device leak in error path
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2071830
Depends: https://bugzilla.redhat.com/show_bug.cgi?id=2071840
Tested: This is one of a series of patch sets to enable Arm SystemReady IR
 support in the kernel for NXP i.MX8 platforms.  At this stage, this
 has been tested by ensuring we can survive the CI/CD loop -- i.e.,
 that we have not broken anything else, and a simple boot test.  When
 sufficient drivers have been brought in for i.MX8M, we will be able
 to run further tests.

commit 202c08914ba50dd324e42d5ad99535a89f242560
Author: Johan Hovold <johan@kernel.org>
Date:   Thu Mar 3 19:05:19 2022 +0100

    firmware: sysfb: fix platform-device leak in error path

    Make sure to free the platform device also in the unlikely event that
    registration fails.

    Fixes: 0589e8889dce ("drivers/firmware: Add missing platform_device_put() in sysfb_create_simplefb")
    Fixes: 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup for all arches")
    Cc: stable@vger.kernel.org      # 5.14
    Cc: Miaoqian Lin <linmq006@gmail.com>
    Cc: Javier Martinez Canillas <javierm@redhat.com>
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Link: https://lore.kernel.org/r/20220303180519.3117-1-johan@kernel.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    (cherry picked from commit 202c08914ba50dd324e42d5ad99535a89f242560)

Signed-off-by: Al Stone <ahs3@redhat.com>
2022-08-25 10:45:07 -06:00
Al Stone 474a4a6962 drivers/firmware: Don't mark as busy the simple-framebuffer IO resource
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2071830
Depends: https://bugzilla.redhat.com/show_bug.cgi?id=2071840
Tested: This is one of a series of patch sets to enable Arm SystemReady IR
 support in the kernel for NXP i.MX8 platforms.  At this stage, this
 has been tested by ensuring we can survive the CI/CD loop -- i.e.,
 that we have not broken anything else, and a simple boot test.  When
 sufficient drivers have been brought in for i.MX8M, we will be able
 to run further tests.

commit c96898342c3813fa7de6a47904dea46538873b3b
Author: Javier Martinez Canillas <javierm@redhat.com>
Date:   Tue Jan 25 10:12:19 2022 +0100

    drivers/firmware: Don't mark as busy the simple-framebuffer IO resource

    The sysfb_create_simplefb() function requests a IO memory resource for the
    simple-framebuffer platform device, but it also marks it as busy which can
    lead to drivers requesting the same memory resource to fail.

    Let's drop the IORESOURCE_BUSY flag and let drivers to request it as busy
    instead.

    Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
    Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
    Reviewed-by: Zack Rusin <zackr@vmware.com>
    Reviewed-by: Hans de Goede <hdegoede@redhat.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20220125091222.21457-3-tzimmermann@suse.de
    (cherry picked from commit c96898342c3813fa7de6a47904dea46538873b3b)

Signed-off-by: Al Stone <ahs3@redhat.com>
2022-08-25 10:45:04 -06:00
Al Stone 0cf3b82a1f drivers/firmware: Add missing platform_device_put() in sysfb_create_simplefb
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2071830
Depends: https://bugzilla.redhat.com/show_bug.cgi?id=2071840
Tested: This is one of a series of patch sets to enable Arm SystemReady IR
 support in the kernel for NXP i.MX8 platforms.  At this stage, this
 has been tested by ensuring we can survive the CI/CD loop -- i.e.,
 that we have not broken anything else, and a simple boot test.  When
 sufficient drivers have been brought in for i.MX8M, we will be able
 to run further tests.

commit 0589e8889dce8e0f0ea5bbf757f38865e2a469c1
Author: Miaoqian Lin <linmq006@gmail.com>
Date:   Fri Dec 31 08:04:25 2021 +0000

    drivers/firmware: Add missing platform_device_put() in sysfb_create_simplefb

    Add the missing platform_device_put() before return from
    sysfb_create_simplefb() in the error handling case.

    Fixes: 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup for all arches")
    Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
    Link: https://lore.kernel.org/r/20211231080431.15385-1-linmq006@gmail.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    (cherry picked from commit 0589e8889dce8e0f0ea5bbf757f38865e2a469c1)

Signed-off-by: Al Stone <ahs3@redhat.com>
2022-08-25 10:45:03 -06:00
Al Stone b27bafb608 drivers/firmware: consolidate EFI framebuffer setup for all arches
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2071830
Depends: https://bugzilla.redhat.com/show_bug.cgi?id=2071840
Tested: This is one of a series of patch sets to enable Arm SystemReady IR
 support in the kernel for NXP i.MX8 platforms.  At this stage, this
 has been tested by ensuring we can survive the CI/CD loop -- i.e.,
 that we have not broken anything else, and a simple boot test.  When
 sufficient drivers have been brought in for i.MX8M, we will be able
 to run further tests.

commit 8633ef82f101c040427b57d4df7b706261420b94
Author: Javier Martinez Canillas <javierm@redhat.com>
Date:   Fri Jun 25 15:13:59 2021 +0200

    drivers/firmware: consolidate EFI framebuffer setup for all arches

    The register_gop_device() function registers an "efi-framebuffer" platform
    device to match against the efifb driver, to have an early framebuffer for
    EFI platforms.

    But there is already support to do exactly the same by the Generic System
    Framebuffers (sysfb) driver. This used to be only for X86 but it has been
    moved to drivers/firmware and could be reused by other architectures.

    Also, besides supporting registering an "efi-framebuffer", this driver can
    register a "simple-framebuffer" allowing to use the siple{fb,drm} drivers
    on non-X86 EFI platforms. For example, on aarch64 these drivers can only
    be used with DT and doesn't have code to register a "simple-frambuffer"
    platform device when booting with EFI.

    For these reasons, let's remove the register_gop_device() duplicated code
    and instead move the platform specific logic that's there to sysfb driver.

    Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
    Acked-by: Borislav Petkov <bp@suse.de>
    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210625131359.1804394-1-javierm@redhat.com
    (cherry picked from commit 8633ef82f101c040427b57d4df7b706261420b94)

Conflicts:
    drivers/gpu/drm/tiny/Kconfig:

    495a018a8f (Merge DRM changes from upstream
    v5.14..v5.15) included what should have been applied with this patch so it
    was no longer needed

Signed-off-by: Al Stone <ahs3@redhat.com>
2022-08-25 10:44:53 -06:00
Al Stone bba665551b drivers/firmware: move x86 Generic System Framebuffers support
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2071830
Depends: https://bugzilla.redhat.com/show_bug.cgi?id=2071840
Tested: This is one of a series of patch sets to enable Arm SystemReady IR
 support in the kernel for NXP i.MX8 platforms.  At this stage, this
 has been tested by ensuring we can survive the CI/CD loop -- i.e.,
 that we have not broken anything else, and a simple boot test.  When
 sufficient drivers have been brought in for i.MX8M, we will be able
 to run further tests.

Conflicts:
    drivers/firmware/Makefile -- simple context difference

commit d391c58271072d0b0fad93c82018d495b2633448
Author: Javier Martinez Canillas <javierm@redhat.com>
Date:   Fri Jun 25 15:09:46 2021 +0200

    drivers/firmware: move x86 Generic System Framebuffers support

    The x86 architecture has generic support to register a system framebuffer
    platform device. It either registers a "simple-framebuffer" if the config
    option CONFIG_X86_SYSFB is enabled, or a legacy VGA/VBE/EFI FB device.

    But the code is generic enough to be reused by other architectures and can
    be moved out of the arch/x86 directory.

    This will allow to also support the simple{fb,drm} drivers on non-x86 EFI
    platforms, such as aarch64 where these drivers are only supported with DT.

    Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
    Acked-by: Borislav Petkov <bp@suse.de>
    Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210625130947.1803678-2-javierm@redhat.com
    (cherry picked from commit d391c58271072d0b0fad93c82018d495b2633448)

Signed-off-by: Al Stone <ahs3@redhat.com>
2022-08-25 10:44:24 -06:00