[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <DM5PR21MB1749EE7458996FF22AAA9AF8CAC39@DM5PR21MB1749.namprd21.prod.outlook.com>
Date: Wed, 4 May 2022 16:43:24 +0000
From: Haiyang Zhang <haiyangz@...rosoft.com>
To: Wei Liu <wei.liu@...nel.org>,
Saurabh Sengar <ssengar@...ux.microsoft.com>,
Dexuan Cui <decui@...rosoft.com>,
"Michael Kelley (LINUX)" <mikelley@...rosoft.com>
CC: Saurabh Singh Sengar <ssengar@...rosoft.com>,
KY Srinivasan <kys@...rosoft.com>,
Stephen Hemminger <sthemmin@...rosoft.com>,
"deller@....de" <deller@....de>,
"linux-hyperv@...r.kernel.org" <linux-hyperv@...r.kernel.org>,
"linux-fbdev@...r.kernel.org" <linux-fbdev@...r.kernel.org>,
"dri-devel@...ts.freedesktop.org" <dri-devel@...ts.freedesktop.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH] video: hyperv_fb: Allow resolutions with size > 64 MB for
Gen1
> -----Original Message-----
> From: Wei Liu <wei.liu@...nel.org>
> Sent: Thursday, April 28, 2022 10:38 AM
> To: Saurabh Sengar <ssengar@...ux.microsoft.com>
> Cc: Saurabh Singh Sengar <ssengar@...rosoft.com>; KY Srinivasan
> <kys@...rosoft.com>; Haiyang Zhang <haiyangz@...rosoft.com>; Stephen
> Hemminger <sthemmin@...rosoft.com>; wei.liu@...nel.org; Dexuan Cui
> <decui@...rosoft.com>; deller@....de; linux-hyperv@...r.kernel.org; linux-
> fbdev@...r.kernel.org; dri-devel@...ts.freedesktop.org; linux-
> kernel@...r.kernel.org
> Subject: Re: [PATCH] video: hyperv_fb: Allow resolutions with size > 64 MB for
> Gen1
>
> On Wed, Apr 27, 2022 at 06:47:53AM -0700, Saurabh Sengar wrote:
> > This patch fixes a bug where GEN1 VMs doesn't allow resolutions greater
> > than 64 MB size (eg 7680x4320). Unnecessary PCI check limits Gen1 VRAM
> > to legacy PCI BAR size only (ie 64MB). Thus any, resolution requesting
> > greater then 64MB (eg 7680x4320) would fail. MMIO region assigning this
> > memory shouldn't be limited by PCI bar size.
> >
> > Signed-off-by: Saurabh Sengar <ssengar@...ux.microsoft.com>
> > ---
> > drivers/video/fbdev/hyperv_fb.c | 19 +------------------
> > 1 file changed, 1 insertion(+), 18 deletions(-)
> >
> > diff --git a/drivers/video/fbdev/hyperv_fb.c
> b/drivers/video/fbdev/hyperv_fb.c
> > index c8e0ea2..58c304a 100644
> > --- a/drivers/video/fbdev/hyperv_fb.c
> > +++ b/drivers/video/fbdev/hyperv_fb.c
> > @@ -1009,7 +1009,6 @@ static int hvfb_getmem(struct hv_device *hdev,
> struct fb_info *info)
> > struct pci_dev *pdev = NULL;
> > void __iomem *fb_virt;
> > int gen2vm = efi_enabled(EFI_BOOT);
> > - resource_size_t pot_start, pot_end;
> > phys_addr_t paddr;
> > int ret;
> >
> > @@ -1060,23 +1059,7 @@ static int hvfb_getmem(struct hv_device *hdev,
> struct fb_info *info)
> > dio_fb_size =
> > screen_width * screen_height * screen_depth / 8;
> >
> > - if (gen2vm) {
> > - pot_start = 0;
> > - pot_end = -1;
> > - } else {
> > - if (!(pci_resource_flags(pdev, 0) & IORESOURCE_MEM) ||
> > - pci_resource_len(pdev, 0) < screen_fb_size) {
> > - pr_err("Resource not available or (0x%lx < 0x%lx)\n",
> > - (unsigned long) pci_resource_len(pdev, 0),
> > - (unsigned long) screen_fb_size);
> > - goto err1;
>
> This restriction has been in place since day 1. Haiyang, you wrote this
> driver. Can you comment on whether this change here is sensible?
When I initially implemented this driver 10 years ago, I believe there
was smaller limit for the fb... But I think this patch is good for the
newer MMIO alloc scheme. I hope to see reviews also from
@Dexuan Cui @Michael Kelley (LINUX) who are more familiar with
the PCI/BAR/MMIO area.
Thanks,
- Haiyang
Powered by blists - more mailing lists