From: Thomas Zimmermann <tzimmermann@suse.de>
To: suijingfeng <suijingfeng@loongson.cn>,
Sui Jingfeng <sui.jingfeng@linux.dev>,
Bjorn Helgaas <bhelgaas@google.com>,
"Koenig, Christian" <Christian.Koenig@amd.com>,
Jani Nikula <jani.nikula@linux.intel.com>,
Daniel Vetter <daniel@ffwll.ch>,
"Deucher, Alexander" <Alexander.Deucher@amd.com>
Cc: nouveau@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
amd-gfx@lists.freedesktop.org, linux-pci@vger.kernel.org
Subject: Re: [Intel-gfx] [Nouveau] [RFC, drm-misc-next v4 0/9] PCI/VGA: Allowing the user to select the primary video adapter at boot time
Date: Wed, 6 Sep 2023 09:00:37 +0200 [thread overview]
Message-ID: <22e8f3a4-63e6-63bd-9e6a-c0a42cb2c33a@suse.de> (raw)
In-Reply-To: <42c907fe-a8c3-5a07-a792-737e45f8134e@loongson.cn>
[-- Attachment #1.1: Type: text/plain, Size: 2889 bytes --]
Hi
Am 06.09.23 um 04:14 schrieb suijingfeng:
> Hi,
>
>
> On 2023/9/5 23:05, Thomas Zimmermann wrote:
>> However, on modern Linux systems the primary display does not really
>> exist.
>
>
> No, it do exist. X server need to know which one is the primary GPU.
> The '*' character at the of (4@0:0:0) PCI device is the Primary.
> The '*' denote primary, see the log below.
>
> (II) xfree86: Adding drm device (/dev/dri/card2)
> (II) xfree86: Adding drm device (/dev/dri/card0)
> (II) Platform probe for
> /sys/devices/pci0000:00/0000:00:1c.5/0000:003:00.0/0000:04:00.0/drm/card0
> (II) xfree86: Adding drm device (/dev/dri/card3)
> (II) Platform probe for
> /sys/devices/pci0000:00/0000:00:1c.6/0000:005:00.0/drm/card3
> (--) PCI: (0@0:2:0) 8086:3e91:8086:3e91 rev 0, Mem @
> 0xdb000000/167777216, 0xa0000000/536870912, I/O @ 0x0000f000/64, BIOS @
> 0x????????/131072
> (--) PCI: (1@0:0:0) 1002:6771:1043:8636 rev 0, Mem @
> 0xc0000000/2688435456, 0xdf220000/131072, I/O @ 0x0000e000/256, BIOS @
> 0x????????/131072
> (--) PCI:*(4@0:0:0) 1a03:2000:1a03:2000 rev 48, Mem @
> 0xde000000/166777216, 0xdf020000/131072, I/O @ 0x0000c000/128, BIOS @
> 0x????????/131072
> (--) PCI: (5@0:0:0) 10de:1288:174b:b324 rev 161, Mem @
> 0xdc000000/116777216, 0xd0000000/134217728, 0xd8000000/33554432, I/O @
> 0x0000b000/128, BIOS @@0x????????/524288
>
> The modesetting driver of X server will create framebuffer on the
> primary video adapter.
> If a 2D video adapter (like the aspeed BMC) is not the primary, then it
> probably will not
> be used. The only chance to be able to display something is to
> functional as a output slave.
> But the output slave technology need the PRIME support for cross driver
> buffer sharing.
>
> So, there do have some difference between the primary and non-primary
> video adapters.
Xorg is a pretty bad example, because X parses the PCI bus and then
tries to match devices to /dev/dri/ files. That's also not fixable in
Xorg's current code base. Please don't promote Xorg's design. It dates
back to the time when Xorg did the modesetting by itself.
Userspace should just open existing device files and start rendering.
Maybe pick the previous settings and/or do some guess work about the
arrangment of these devices. AFAIK that's what the modern compositors do.
Best regards
Thomas
>
>
>> 'Primary' is the device that is available via VGA, VESA or EFI. Our
>> drivers don't use these interfaces, but the native registers. As you
>> said yourself, these firmware devices (VGA, VESA, EFI) are removed
>> ASAP by the native drivers.
>
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]
next prev parent reply other threads:[~2023-09-06 7:00 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-04 19:57 [Intel-gfx] [RFC, drm-misc-next v4 0/9] PCI/VGA: Allowing the user to select the primary video adapter at boot time Sui Jingfeng
2023-09-04 19:57 ` [Intel-gfx] [RFC, drm-misc-next v4 1/9] " Sui Jingfeng
2023-09-04 19:57 ` [Intel-gfx] [RFC, drm-misc-next v4 2/9] drm/nouveau: Implement .be_primary() callback Sui Jingfeng
2023-09-04 19:57 ` [Intel-gfx] [RFC, drm-misc-next v4 3/9] drm/radeon: " Sui Jingfeng
2023-09-05 5:50 ` Christian König
2023-09-05 17:24 ` suijingfeng
2023-09-06 16:00 ` Alex Deucher
2023-09-07 1:40 ` Sui Jingfeng
2023-09-04 19:57 ` [Intel-gfx] [RFC, drm-misc-next v4 4/9] drm/amdgpu: " Sui Jingfeng
2023-09-04 19:57 ` [Intel-gfx] [RFC, drm-misc-next v4 5/9] drm/i915: " Sui Jingfeng
2023-09-04 19:57 ` [Intel-gfx] [RFC, drm-misc-next v4 6/9] drm/loongson: " Sui Jingfeng
2023-09-04 19:57 ` [Intel-gfx] [RFC, drm-misc-next v4 7/9] drm/ast: Register as a VGA client by calling vga_client_register() Sui Jingfeng
2023-09-04 19:57 ` [Intel-gfx] [RFC, drm-misc-next v4 8/9] drm/hibmc: " Sui Jingfeng
2023-09-04 19:57 ` [Intel-gfx] [RFC, drm-misc-next v4 9/9] drm/gma500: " Sui Jingfeng
2023-09-04 20:36 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for PCI/VGA: Allowing the user to select the primary video adapter at boot time Patchwork
2023-09-04 20:54 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-09-04 22:14 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2023-09-05 10:38 ` [Intel-gfx] [RFC, drm-misc-next v4 0/9] " Jani Nikula
2023-09-05 13:28 ` Christian König
2023-09-05 14:28 ` Sui Jingfeng
2023-09-06 6:47 ` Christian König
2023-09-05 10:45 ` [Intel-gfx] [Nouveau] " Thomas Zimmermann
2023-09-05 13:30 ` suijingfeng
2023-09-05 15:05 ` Thomas Zimmermann
2023-09-06 2:14 ` suijingfeng
2023-09-06 7:00 ` Thomas Zimmermann [this message]
2023-09-06 2:34 ` suijingfeng
2023-09-06 7:18 ` Thomas Zimmermann
2023-09-06 3:08 ` suijingfeng
2023-09-06 7:46 ` Thomas Zimmermann
2023-09-06 4:14 ` Sui Jingfeng
2023-09-06 6:45 ` Christian König
2023-09-06 9:08 ` suijingfeng
2023-09-06 9:40 ` Christian König
2023-09-07 2:30 ` Sui Jingfeng
2023-09-07 9:08 ` Christian König
2023-09-07 12:32 ` suijingfeng
2023-09-07 12:43 ` Christian König
2023-09-07 15:26 ` suijingfeng
2023-09-07 15:32 ` Christian König
2023-09-07 16:33 ` suijingfeng
2023-09-08 6:59 ` Christian König
2023-09-06 10:31 ` Sui Jingfeng
2023-09-06 10:50 ` Christian König
2023-09-05 10:49 ` Thomas Zimmermann
2023-09-05 15:59 ` suijingfeng
2023-09-06 8:05 ` Thomas Zimmermann
2023-09-06 9:48 ` suijingfeng
2023-09-06 11:06 ` Thomas Zimmermann
2023-09-07 9:43 ` Jani Nikula
2023-09-05 14:52 ` [Intel-gfx] " Alex Williamson
2023-09-05 16:21 ` suijingfeng
2023-09-05 16:39 ` Alex Williamson
2023-09-06 3:51 ` Sui Jingfeng
2023-09-06 19:29 ` Alex Williamson
2023-09-06 0:52 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for PCI/VGA: Allowing the user to select the primary video adapter at boot time (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=22e8f3a4-63e6-63bd-9e6a-c0a42cb2c33a@suse.de \
--to=tzimmermann@suse.de \
--cc=Alexander.Deucher@amd.com \
--cc=Christian.Koenig@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=bhelgaas@google.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jani.nikula@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=nouveau@lists.freedesktop.org \
--cc=sui.jingfeng@linux.dev \
--cc=suijingfeng@loongson.cn \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox