mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Sui Jingfeng <suijingfeng@loongson.cn>
To: WANG Xuerui <kernel@xen0n.name>,
	Sui Jingfeng <15330273260@189.cn>,
	Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
	Maxime Ripard <mripard@kernel.org>,
	Thomas Zimmermann <tzimmermann@suse.de>,
	David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
	Li Yi <liyi@loongson.cn>, Sumit Semwal <sumit.semwal@linaro.org>,
	Christian Koenig <christian.koenig@amd.com>,
	Emil Velikov <emil.l.velikov@gmail.com>
Cc: linaro-mm-sig@lists.linaro.org,
	loongson-kernel@lists.loongnix.cn,
	Geert Uytterhoeven <geert+renesas@glider.be>,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	Javier Martinez Canillas <javierm@redhat.com>,
	Nathan Chancellor <nathan@kernel.org>,
	Liu Peibao <liupeibao@loongson.cn>,
	linux-media@vger.kernel.org
Subject: Re: [PATCH v14 1/2] drm: add kms driver for loongson display controller
Date: Wed, 14 Jun 2023 00:20:58 +0800	[thread overview]
Message-ID: <14e56806-833b-c01b-ee74-8f16f48df2fc@loongson.cn> (raw)
In-Reply-To: <26fd78b9-c074-8341-c99c-4e3b38cd861a@xen0n.name>

Hi,

On 2023/5/21 20:21, WANG Xuerui wrote:
>> +
>> +static int __init loongson_module_init(void)
>> +{
>> +    struct pci_dev *pdev = NULL;
>> +
>> +    if (video_firmware_drivers_only())
>> +        return -ENODEV;
>> +
>> +    /* Multiple video card workaround */
>> +    while ((pdev = pci_get_class(PCI_CLASS_DISPLAY_VGA << 8, pdev))) {
>> +        if (pdev->vendor != PCI_VENDOR_ID_LOONGSON) {
>> +            pr_info("Discrete graphic card detected, abort\n");
>
> Why is it that the iGPU cannot be used together with a dGPU? I can't 
> see why this is technically the case so some more explanations could 
> be beneficial to other readers and LoongArch devs.


We will remote this workaround at next version. we find some way to keep 
multiple GPU driver co-exixt in the system. The reason we choose to 
workaround is because it  is both easy and effective to solve bugs.


After the dGPU is mounted on the motherboard,

1) the integrate register don't receive write or read access anymore.  
sometime cause its can't receive vblank interrupt, causing vblank 
timeout etc.

Have something to do with the PCI driver layer and/or PCI/vgaarb layer.


2) For ls7a1000, both the display controller and gpu is special,

     when dGPU is mounted, we are multiple gpu system.

     we should made the vgaarb works correct , this is relay on firmware 
and efi  support to be complete.

    In the past, our system don't support firmware framebuffer even.

3) It need us we implement PRIME, for cross driver buffer sharing.

      loongson display don't has scatter-gather able DMA. Can't access 
non physical contiguous GTT buffer.

     We can only expect

    1) the CPU do the copy.

    2) DC driver export dumb buffer, and GPU driver import this buffer, 
and resolve the tiled buffer to the linear.

    3) shared buffer has to pinned at GTT


4) Using space X server also has bug for parser the PCI device on 
complex patch.


5) Even on X86, there are motherboard vendor choose to black the iGPU 
when the dGPU is mounted.

It perhaps better black the iGPU at firmware layer.

But our firmware engineer don't know about this for a very long time.


But as its already as is, we will try to improve this at the next version.

-- 
Jingfeng


  parent reply	other threads:[~2023-06-13 16:21 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-20 10:57 [PATCH v14 0/2] " Sui Jingfeng
2023-05-20 10:57 ` [PATCH v14 1/2] " Sui Jingfeng
2023-05-21 12:21   ` WANG Xuerui
2023-05-22  7:27     ` Sui Jingfeng
2023-05-22  8:02     ` Sui Jingfeng
2023-05-22  8:09       ` WANG Xuerui
2023-05-22  8:29         ` Sui Jingfeng
2023-05-22  8:42           ` WANG Xuerui
2023-05-24  2:56         ` Huacai Chen
2023-06-12 14:40           ` Sui Jingfeng
2023-05-22  8:14     ` Sui Jingfeng
2023-05-22  8:19       ` WANG Xuerui
2023-05-22  8:51     ` Sui Jingfeng
2023-05-22  9:05       ` WANG Xuerui
2023-05-22  9:05     ` Sui Jingfeng
2023-05-22  9:09       ` WANG Xuerui
2023-05-22  9:25     ` Sui Jingfeng
2023-05-22  9:28       ` WANG Xuerui
2023-05-22  9:49         ` Sui Jingfeng
2023-05-22 10:05           ` WANG Xuerui
2023-05-22 10:17             ` Sui Jingfeng
2023-05-22 10:25               ` WANG Xuerui
2023-05-22 13:13                 ` Sui Jingfeng
2023-05-22 16:40                   ` WANG Xuerui
2023-05-24  2:52                     ` Huacai Chen
2023-05-25  4:09                     ` Sui Jingfeng
2023-05-25  4:14                       ` Sui Jingfeng
2023-05-22 11:11             ` Sui Jingfeng
2023-05-22  9:39     ` Sui Jingfeng
2023-06-13 16:20     ` Sui Jingfeng [this message]
2023-06-13 17:29       ` Sui Jingfeng
2023-05-20 10:57 ` [PATCH v14 2/2] MAINTAINERS: add maintainers for DRM LOONGSON driver Sui Jingfeng
2023-06-12 14:58 ` [PATCH v14 0/2] drm: add kms driver for loongson display controller Sui Jingfeng
2023-06-13  8:30   ` Maxime Ripard
2023-06-13  8:35     ` Sui Jingfeng
2023-06-13  9:10       ` Maxime Ripard
2023-06-13  9:17         ` Sui Jingfeng
2023-06-13  9:28           ` Maxime Ripard
2023-06-13  9:32             ` Sui Jingfeng
2023-06-13  9:41             ` Sui Jingfeng
2023-06-13  8:40     ` Sui Jingfeng
2023-06-13  9:11       ` Maxime Ripard
  -- strict thread matches above, loose matches on Subject: below --
2023-05-20 10:54 Sui Jingfeng
2023-05-20 10:54 ` [PATCH v14 1/2] " Sui Jingfeng

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=14e56806-833b-c01b-ee74-8f16f48df2fc@loongson.cn \
    --to=suijingfeng@loongson.cn \
    --cc=15330273260@189.cn \
    --cc=airlied@gmail.com \
    --cc=christian.koenig@amd.com \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=emil.l.velikov@gmail.com \
    --cc=geert+renesas@glider.be \
    --cc=javierm@redhat.com \
    --cc=kernel@xen0n.name \
    --cc=linaro-mm-sig@lists.linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=liupeibao@loongson.cn \
    --cc=liyi@loongson.cn \
    --cc=loongson-kernel@lists.loongnix.cn \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=mripard@kernel.org \
    --cc=nathan@kernel.org \
    --cc=sumit.semwal@linaro.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®