From: Javier Martinez Canillas <javierm@redhat.com>
To: Daniel Vetter <daniel.vetter@ffwll.ch>,
DRI Development <dri-devel@lists.freedesktop.org>
Cc: linux-fbdev@vger.kernel.org,
Daniel Vetter <daniel.vetter@ffwll.ch>,
Intel Graphics Development <intel-gfx@lists.freedesktop.org>,
Thomas Zimmermann <tzimmermann@suse.de>,
linux-pci@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>,
Daniel Vetter <daniel.vetter@intel.com>,
Helge Deller <deller@gmx.de>
Subject: Re: [Intel-gfx] [PATCH 2/8] video/aperture: use generic code to figure out the vga default device
Date: Wed, 05 Apr 2023 13:27:44 +0200 [thread overview]
Message-ID: <874jpud0wf.fsf@minerva.mail-host-address-is-not-set> (raw)
In-Reply-To: <20230404201842.567344-2-daniel.vetter@ffwll.ch>
Daniel Vetter <daniel.vetter@ffwll.ch> writes:
> Since vgaarb has been promoted to be a core piece of the pci subsystem
> we don't have to open code random guesses anymore, we actually know
> this in a platform agnostic way, and there's no need for an x86
> specific hack. See also 1d38fe6ee6a8 ("PCI/VGA: Move vgaarb to
> drivers/pci")
>
> This should not result in any functional change, and the non-x86
> multi-gpu pci systems are probably rare enough to not matter (I don't
> know of any tbh). But it's a nice cleanup, so let's do it.
>
> There's been a few questions on previous iterations on dri-devel and
> irc:
>
> - fb_is_primary_device() seems to be yet another implementation of
> this theme, and at least on x86 it checks for both
> vga_default_device OR rom shadowing. There shouldn't ever be a case
> where rom shadowing gives any additional hints about the boot vga
> device, but if there is then the default vga selection in vgaarb
> should probably be fixed. And not special-case checks replicated all
> over.
>
Agreed and if there are regressions reported then could be added there.
> - Thomas also brought up that on most !x86 systems
> fb_is_primary_device() returns 0, except on sparc/parisc. But these
> 2 special cases are about platform specific devices and not pci, so
> shouldn't have any interactions.
>
> - Furthermore fb_is_primary_device() is a bit a red herring since it's
> only used to select the right fbdev driver for fbcon, and not for
> the fw handover dance which the aperture helpers handle. At least
> for x86 we might want to look into unifying them, but that's a
> separate thing.
>
> v2: Extend commit message trying to summarize various discussions.
>
> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> Cc: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: Javier Martinez Canillas <javierm@redhat.com>
> Cc: Helge Deller <deller@gmx.de>
> Cc: linux-fbdev@vger.kernel.org
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: linux-pci@vger.kernel.org
> ---
> drivers/video/aperture.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/video/aperture.c b/drivers/video/aperture.c
> index b009468ffdff..8835d3bc39bf 100644
> --- a/drivers/video/aperture.c
> +++ b/drivers/video/aperture.c
> @@ -324,13 +324,11 @@ EXPORT_SYMBOL(aperture_remove_conflicting_devices);
> */
> int aperture_remove_conflicting_pci_devices(struct pci_dev *pdev, const char *name)
> {
> - bool primary = false;
> + bool primary;
> resource_size_t base, size;
> int bar, ret;
>
> -#ifdef CONFIG_X86
> - primary = pdev->resource[PCI_ROM_RESOURCE].flags & IORESOURCE_ROM_SHADOW;
> -#endif
> + primary = pdev == vga_default_device();
>
Maybe enclose the check in parenthesis to make it easier to read ?
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
--
Best regards,
Javier Martinez Canillas
Core Platforms
Red Hat
WARNING: multiple messages have this Message-ID (diff)
From: Javier Martinez Canillas <javierm@redhat.com>
To: Daniel Vetter <daniel.vetter@ffwll.ch>,
DRI Development <dri-devel@lists.freedesktop.org>
Cc: Intel Graphics Development <intel-gfx@lists.freedesktop.org>,
Daniel Vetter <daniel.vetter@ffwll.ch>,
Daniel Vetter <daniel.vetter@intel.com>,
Thomas Zimmermann <tzimmermann@suse.de>,
Helge Deller <deller@gmx.de>,
linux-fbdev@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>,
linux-pci@vger.kernel.org
Subject: Re: [PATCH 2/8] video/aperture: use generic code to figure out the vga default device
Date: Wed, 05 Apr 2023 13:27:44 +0200 [thread overview]
Message-ID: <874jpud0wf.fsf@minerva.mail-host-address-is-not-set> (raw)
In-Reply-To: <20230404201842.567344-2-daniel.vetter@ffwll.ch>
Daniel Vetter <daniel.vetter@ffwll.ch> writes:
> Since vgaarb has been promoted to be a core piece of the pci subsystem
> we don't have to open code random guesses anymore, we actually know
> this in a platform agnostic way, and there's no need for an x86
> specific hack. See also 1d38fe6ee6a8 ("PCI/VGA: Move vgaarb to
> drivers/pci")
>
> This should not result in any functional change, and the non-x86
> multi-gpu pci systems are probably rare enough to not matter (I don't
> know of any tbh). But it's a nice cleanup, so let's do it.
>
> There's been a few questions on previous iterations on dri-devel and
> irc:
>
> - fb_is_primary_device() seems to be yet another implementation of
> this theme, and at least on x86 it checks for both
> vga_default_device OR rom shadowing. There shouldn't ever be a case
> where rom shadowing gives any additional hints about the boot vga
> device, but if there is then the default vga selection in vgaarb
> should probably be fixed. And not special-case checks replicated all
> over.
>
Agreed and if there are regressions reported then could be added there.
> - Thomas also brought up that on most !x86 systems
> fb_is_primary_device() returns 0, except on sparc/parisc. But these
> 2 special cases are about platform specific devices and not pci, so
> shouldn't have any interactions.
>
> - Furthermore fb_is_primary_device() is a bit a red herring since it's
> only used to select the right fbdev driver for fbcon, and not for
> the fw handover dance which the aperture helpers handle. At least
> for x86 we might want to look into unifying them, but that's a
> separate thing.
>
> v2: Extend commit message trying to summarize various discussions.
>
> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> Cc: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: Javier Martinez Canillas <javierm@redhat.com>
> Cc: Helge Deller <deller@gmx.de>
> Cc: linux-fbdev@vger.kernel.org
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: linux-pci@vger.kernel.org
> ---
> drivers/video/aperture.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/video/aperture.c b/drivers/video/aperture.c
> index b009468ffdff..8835d3bc39bf 100644
> --- a/drivers/video/aperture.c
> +++ b/drivers/video/aperture.c
> @@ -324,13 +324,11 @@ EXPORT_SYMBOL(aperture_remove_conflicting_devices);
> */
> int aperture_remove_conflicting_pci_devices(struct pci_dev *pdev, const char *name)
> {
> - bool primary = false;
> + bool primary;
> resource_size_t base, size;
> int bar, ret;
>
> -#ifdef CONFIG_X86
> - primary = pdev->resource[PCI_ROM_RESOURCE].flags & IORESOURCE_ROM_SHADOW;
> -#endif
> + primary = pdev == vga_default_device();
>
Maybe enclose the check in parenthesis to make it easier to read ?
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
--
Best regards,
Javier Martinez Canillas
Core Platforms
Red Hat
WARNING: multiple messages have this Message-ID (diff)
From: Javier Martinez Canillas <javierm@redhat.com>
To: Daniel Vetter <daniel.vetter@ffwll.ch>,
DRI Development <dri-devel@lists.freedesktop.org>
Cc: linux-fbdev@vger.kernel.org,
Daniel Vetter <daniel.vetter@ffwll.ch>,
Intel Graphics Development <intel-gfx@lists.freedesktop.org>,
Thomas Zimmermann <tzimmermann@suse.de>,
linux-pci@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>,
Daniel Vetter <daniel.vetter@intel.com>,
Helge Deller <deller@gmx.de>
Subject: Re: [PATCH 2/8] video/aperture: use generic code to figure out the vga default device
Date: Wed, 05 Apr 2023 13:27:44 +0200 [thread overview]
Message-ID: <874jpud0wf.fsf@minerva.mail-host-address-is-not-set> (raw)
In-Reply-To: <20230404201842.567344-2-daniel.vetter@ffwll.ch>
Daniel Vetter <daniel.vetter@ffwll.ch> writes:
> Since vgaarb has been promoted to be a core piece of the pci subsystem
> we don't have to open code random guesses anymore, we actually know
> this in a platform agnostic way, and there's no need for an x86
> specific hack. See also 1d38fe6ee6a8 ("PCI/VGA: Move vgaarb to
> drivers/pci")
>
> This should not result in any functional change, and the non-x86
> multi-gpu pci systems are probably rare enough to not matter (I don't
> know of any tbh). But it's a nice cleanup, so let's do it.
>
> There's been a few questions on previous iterations on dri-devel and
> irc:
>
> - fb_is_primary_device() seems to be yet another implementation of
> this theme, and at least on x86 it checks for both
> vga_default_device OR rom shadowing. There shouldn't ever be a case
> where rom shadowing gives any additional hints about the boot vga
> device, but if there is then the default vga selection in vgaarb
> should probably be fixed. And not special-case checks replicated all
> over.
>
Agreed and if there are regressions reported then could be added there.
> - Thomas also brought up that on most !x86 systems
> fb_is_primary_device() returns 0, except on sparc/parisc. But these
> 2 special cases are about platform specific devices and not pci, so
> shouldn't have any interactions.
>
> - Furthermore fb_is_primary_device() is a bit a red herring since it's
> only used to select the right fbdev driver for fbcon, and not for
> the fw handover dance which the aperture helpers handle. At least
> for x86 we might want to look into unifying them, but that's a
> separate thing.
>
> v2: Extend commit message trying to summarize various discussions.
>
> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> Cc: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: Javier Martinez Canillas <javierm@redhat.com>
> Cc: Helge Deller <deller@gmx.de>
> Cc: linux-fbdev@vger.kernel.org
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: linux-pci@vger.kernel.org
> ---
> drivers/video/aperture.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/video/aperture.c b/drivers/video/aperture.c
> index b009468ffdff..8835d3bc39bf 100644
> --- a/drivers/video/aperture.c
> +++ b/drivers/video/aperture.c
> @@ -324,13 +324,11 @@ EXPORT_SYMBOL(aperture_remove_conflicting_devices);
> */
> int aperture_remove_conflicting_pci_devices(struct pci_dev *pdev, const char *name)
> {
> - bool primary = false;
> + bool primary;
> resource_size_t base, size;
> int bar, ret;
>
> -#ifdef CONFIG_X86
> - primary = pdev->resource[PCI_ROM_RESOURCE].flags & IORESOURCE_ROM_SHADOW;
> -#endif
> + primary = pdev == vga_default_device();
>
Maybe enclose the check in parenthesis to make it easier to read ?
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
--
Best regards,
Javier Martinez Canillas
Core Platforms
Red Hat
next prev parent reply other threads:[~2023-04-05 11:27 UTC|newest]
Thread overview: 112+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-04 20:18 [Intel-gfx] [PATCH 1/8] drm/gma500: Use drm_aperture_remove_conflicting_pci_framebuffers Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 20:18 ` [Intel-gfx] [PATCH 2/8] video/aperture: use generic code to figure out the vga default device Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-05 11:27 ` Javier Martinez Canillas [this message]
2023-04-05 11:27 ` Javier Martinez Canillas
2023-04-05 11:27 ` Javier Martinez Canillas
2023-04-04 20:18 ` [Intel-gfx] [PATCH 3/8] drm/aperture: Remove primary argument Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 21:20 ` [Intel-gfx] " Martin Blumenstingl
2023-04-04 21:20 ` Martin Blumenstingl
2023-04-04 21:20 ` Martin Blumenstingl
2023-04-04 21:20 ` Martin Blumenstingl
2023-04-04 21:20 ` Martin Blumenstingl
2023-04-05 9:25 ` [Intel-gfx] " Thierry Reding
2023-04-05 9:25 ` Thierry Reding
2023-04-05 9:25 ` Thierry Reding
2023-04-05 9:25 ` Thierry Reding
2023-04-05 9:25 ` Thierry Reding
2023-04-05 11:30 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-05 11:30 ` Javier Martinez Canillas
2023-04-05 11:30 ` Javier Martinez Canillas
2023-04-05 11:30 ` Javier Martinez Canillas
2023-04-05 11:30 ` Javier Martinez Canillas
2023-04-04 20:18 ` [Intel-gfx] [PATCH 4/8] video/aperture: Only kick vgacon when the pdev is decoding vga Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-05 11:31 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-05 11:31 ` Javier Martinez Canillas
2023-04-05 11:31 ` Javier Martinez Canillas
2023-04-04 20:18 ` [Intel-gfx] [PATCH 5/8] video/aperture: Move vga handling to pci function Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-05 11:34 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-05 11:34 ` Javier Martinez Canillas
2023-04-05 11:34 ` Javier Martinez Canillas
2023-04-04 20:18 ` [Intel-gfx] [PATCH 6/8] video/aperture: Drop primary argument Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-05 11:36 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-05 11:36 ` Javier Martinez Canillas
2023-04-05 11:36 ` Javier Martinez Canillas
2023-04-04 20:18 ` [Intel-gfx] [PATCH 7/8] video/aperture: Only remove sysfb on the default vga pci device Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-04 20:59 ` [Intel-gfx] " Aaron Plattner
2023-04-04 20:59 ` Aaron Plattner
2023-04-04 20:59 ` Aaron Plattner
2023-04-05 8:48 ` [Intel-gfx] " Daniel Vetter
2023-04-05 8:48 ` Daniel Vetter
2023-04-05 8:48 ` Daniel Vetter
2023-04-05 11:37 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-05 11:37 ` Javier Martinez Canillas
2023-04-05 11:37 ` Javier Martinez Canillas
2023-04-04 20:18 ` [Intel-gfx] [PATCH 8/8] fbdev: Simplify fb_is_primary_device for x86 Daniel Vetter
2023-04-04 20:18 ` Daniel Vetter
2023-04-05 11:40 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-05 11:40 ` Javier Martinez Canillas
2023-04-04 23:44 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/8] drm/gma500: Use drm_aperture_remove_conflicting_pci_framebuffers Patchwork
2023-04-04 23:44 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2023-04-04 23:51 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-04-05 7:49 ` [Intel-gfx] [PATCH 1/8] " Thomas Zimmermann
2023-04-05 7:49 ` Thomas Zimmermann
2023-04-05 8:05 ` [Intel-gfx] " Patrik Jakobsson
2023-04-05 8:05 ` Patrik Jakobsson
2023-04-05 8:15 ` [Intel-gfx] " Thomas Zimmermann
2023-04-05 8:15 ` Thomas Zimmermann
2023-04-05 8:07 ` [Intel-gfx] " Thomas Zimmermann
2023-04-05 8:07 ` Thomas Zimmermann
2023-04-05 8:59 ` [Intel-gfx] " Daniel Vetter
2023-04-05 8:59 ` Daniel Vetter
2023-04-05 9:26 ` [Intel-gfx] " Thomas Zimmermann
2023-04-05 9:26 ` Thomas Zimmermann
2023-04-05 9:38 ` [Intel-gfx] " Daniel Vetter
2023-04-05 9:38 ` Daniel Vetter
2023-04-05 11:00 ` [Intel-gfx] " Thomas Zimmermann
2023-04-05 11:00 ` Thomas Zimmermann
2023-04-05 11:16 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-05 11:16 ` Javier Martinez Canillas
2023-04-05 13:18 ` [Intel-gfx] " Daniel Vetter
2023-04-05 13:18 ` Daniel Vetter
2023-04-05 14:32 ` [Intel-gfx] " Thomas Zimmermann
2023-04-05 14:32 ` Thomas Zimmermann
2023-04-05 16:02 ` [Intel-gfx] " Daniel Vetter
2023-04-05 16:02 ` Daniel Vetter
2023-04-05 16:54 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-05 16:54 ` Javier Martinez Canillas
2023-04-05 17:14 ` [Intel-gfx] " Daniel Vetter
2023-04-05 17:14 ` Daniel Vetter
2023-04-05 17:43 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-05 17:43 ` Javier Martinez Canillas
2023-04-05 17:46 ` [Intel-gfx] " Patrik Jakobsson
2023-04-06 7:31 ` Daniel Vetter
2023-04-06 11:16 ` Patrik Jakobsson
2023-04-05 8:19 ` Thomas Zimmermann
2023-04-05 8:19 ` Thomas Zimmermann
2023-04-05 9:09 ` [Intel-gfx] " Daniel Vetter
2023-04-05 9:09 ` Daniel Vetter
2023-04-05 10:10 ` [Intel-gfx] ✓ Fi.CI.IGT: success for series starting with [1/8] " Patchwork
2023-04-06 7:14 ` [Intel-gfx] [PATCH 1/8] " Thomas Zimmermann
2023-04-06 7:14 ` Thomas Zimmermann
2023-04-06 8:38 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-06 8:38 ` Javier Martinez Canillas
2023-04-06 8:49 ` [Intel-gfx] " Thomas Zimmermann
2023-04-06 8:49 ` Thomas Zimmermann
2023-04-06 9:05 ` [Intel-gfx] " Javier Martinez Canillas
2023-04-06 9:05 ` Javier Martinez Canillas
2023-04-06 9:05 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for series starting with [1/8] drm/gma500: Use drm_aperture_remove_conflicting_pci_framebuffers (rev2) Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=874jpud0wf.fsf@minerva.mail-host-address-is-not-set \
--to=javierm@redhat.com \
--cc=bhelgaas@google.com \
--cc=daniel.vetter@ffwll.ch \
--cc=daniel.vetter@intel.com \
--cc=deller@gmx.de \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=tzimmermann@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.